/************ general css ***************/
@font-face {
    font-family: 'Source Sans Pro';
    src: url('/font/SourceSansPro-SemiboldIt.eot');
    src: local('Source Sans Pro Semibold Italic'), local('SourceSansPro-SemiboldIt'),
        url('/font/SourceSansPro-SemiboldIt.eot?#iefix') format('embedded-opentype'),
        url('/font/SourceSansPro-SemiboldIt.woff2') format('woff2'),
        url('/font/SourceSansPro-SemiboldIt.woff') format('woff'),
        url('/font/SourceSansPro-SemiboldIt.ttf') format('truetype');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('/font/SourceSansPro-BlackIt.eot');
    src: local('Source Sans Pro Black Italic'), local('SourceSansPro-BlackIt'),
        url('/font/SourceSansPro-BlackIt.eot?#iefix') format('embedded-opentype'),
        url('/font/SourceSansPro-BlackIt.woff2') format('woff2'),
        url('/font/SourceSansPro-BlackIt.woff') format('woff'),
        url('/font/SourceSansPro-BlackIt.ttf') format('truetype');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('/font/SourceSansPro-Black.eot');
    src: local('Source Sans Pro Black'), local('SourceSansPro-Black'),
        url('/font/SourceSansPro-Black.eot?#iefix') format('embedded-opentype'),
        url('/font/SourceSansPro-Black.woff2') format('woff2'),
        url('/font/SourceSansPro-Black.woff') format('woff'),
        url('/font/SourceSansPro-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('/font/SourceSansPro-BoldIt.eot');
    src: local('Source Sans Pro Bold Italic'), local('SourceSansPro-BoldIt'),
        url('/font/SourceSansPro-BoldIt.eot?#iefix') format('embedded-opentype'),
        url('/font/SourceSansPro-BoldIt.woff2') format('woff2'),
        url('/font/SourceSansPro-BoldIt.woff') format('woff'),
        url('/font/SourceSansPro-BoldIt.ttf') format('truetype');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('/font/SourceSansPro-Bold.eot');
    src: local('Source Sans Pro Bold'), local('SourceSansPro-Bold'),
        url('/font/SourceSansPro-Bold.eot?#iefix') format('embedded-opentype'),
        url('/font/SourceSansPro-Bold.woff2') format('woff2'),
        url('/font/SourceSansPro-Bold.woff') format('woff'),
        url('/font/SourceSansPro-Bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('/font/SourceSansPro-ExtraLightIt.eot');
    src: local('Source Sans Pro ExtraLight Italic'), local('SourceSansPro-ExtraLightIt'),
        url('/font/SourceSansPro-ExtraLightIt.eot?#iefix') format('embedded-opentype'),
        url('/font/SourceSansPro-ExtraLightIt.woff2') format('woff2'),
        url('/font/SourceSansPro-ExtraLightIt.woff') format('woff'),
        url('/font/SourceSansPro-ExtraLightIt.ttf') format('truetype');
    font-weight: 200;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('/font/SourceSansPro-ExtraLight.eot');
    src: local('Source Sans Pro ExtraLight'), local('SourceSansPro-ExtraLight'),
        url('/font/SourceSansPro-ExtraLight.eot?#iefix') format('embedded-opentype'),
        url('/font/SourceSansPro-ExtraLight.woff2') format('woff2'),
        url('/font/SourceSansPro-ExtraLight.woff') format('woff'),
        url('/font/SourceSansPro-ExtraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('/font/SourceSansPro-It.eot');
    src: local('Source Sans Pro Italic'), local('SourceSansPro-It'),
        url('/font/SourceSansPro-It.eot?#iefix') format('embedded-opentype'),
        url('/font/SourceSansPro-It.woff2') format('woff2'),
        url('/font/SourceSansPro-It.woff') format('woff'),
        url('/font/SourceSansPro-It.ttf') format('truetype');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('/font/SourceSansPro-LightIt.eot');
    src: local('Source Sans Pro Light Italic'), local('SourceSansPro-LightIt'),
        url('/font/SourceSansPro-LightIt.eot?#iefix') format('embedded-opentype'),
        url('/font/SourceSansPro-LightIt.woff2') format('woff2'),
        url('/font/SourceSansPro-LightIt.woff') format('woff'),
        url('/font/SourceSansPro-LightIt.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('/font/SourceSansPro-Light.eot');
    src: local('Source Sans Pro Light'), local('SourceSansPro-Light'),
        url('/font/SourceSansPro-Light.eot?#iefix') format('embedded-opentype'),
        url('/font/SourceSansPro-Light.woff2') format('woff2'),
        url('/font/SourceSansPro-Light.woff') format('woff'),
        url('/font/SourceSansPro-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('/font/SourceSansPro-Regular.eot');
    src: local('Source Sans Pro'), local('SourceSansPro-Regular'),
        url('/font/SourceSansPro-Regular.eot?#iefix') format('embedded-opentype'),
        url('/font/SourceSansPro-Regular.woff2') format('woff2'),
        url('/font/SourceSansPro-Regular.woff') format('woff'),
        url('/font/SourceSansPro-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('/font/SourceSansPro-Semibold.eot');
    src: local('Source Sans Pro Semibold'), local('SourceSansPro-Semibold'),
        url('/font/SourceSansPro-Semibold.eot?#iefix') format('embedded-opentype'),
        url('/font/SourceSansPro-Semibold.woff2') format('woff2'),
        url('/font/SourceSansPro-Semibold.woff') format('woff'),
        url('/font/SourceSansPro-Semibold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}





:root {
  --main-bg-color: white;
  --pink-color: #FFAFCC;
  --blue-color: #A2D2FF;
  --white-color: #fff;
  --heavenly-color: #F4F7FC;
  --light-blue-color: #BDE0FE;	  
  --dark-blue-color: #3B86FF;	 
  --green-color: #8CC63F;  
  --purple-color: #F71EA4;
  --light-purple-color: #C8B6FF;  
  --violet-color: #7A1EF7;
  --orange-color: #FBB03B; 
  --yellow-color: #FFE000;
  --neutraceutici-color: #F7931E;
  --black-color: #000000;

    
  --main-text-color: #1A1A1A;
  --secondary-text-color: #474747;
  --text-heading-color: #1A1A1A;
  --main-primary-color: #f7c5dc;
  --main-secondary-color: #ED89B7;
  --main-hover-color: #110029;
  --error-color: #ff5050;
  
  --mini-text-size: 11px;
  --primary-text-size: 13px;
  --secondary-text-size: 15px;
  --paragraph-text-size: 18px;
  --regular-text-size: 25px;
  --title-text-size:28px;
  --medium-text-size: 35px;
  --intermediate-text-size: 45px;
  --headline-text-size:60px;
  --big-text-size: 150px; 
  
  
  --paragraph-line-height:30px;
  --medium-line-height:50px;
  --big-line-height:140px; 
  
  @media (max-width: 577px) {
	  --big-text-size: 50px;
	}
  
  
}

@media (min-width: 1920px) {
  .container{
	max-width: 1640px !important;
  }
} 

body{
	
	font-family: 'Source Sans Pro';
	letter-spacing: 1px;
	font-size: var(--secondary-text-size);
	background-repeat: no-repeat;
}

/* Pack detail 2025 ------------------------------------------------------- */
.pack-v2 {
  --pack-primary: #078c43;
  --pack-on-primary: #ffffff;
  --pack-brand-tab: #ffffff;
  --pack-badge: #f4a327;
  --pack-hero-radius: 8px;
  --pack-title-width: clamp(350px, 29.8vw, 572px);
  letter-spacing: 0;
}

.pack-rewind {
  --pack-primary: #078c43;
  --pack-brand-tab: #ffffff;
  --pack-badge: #f4a327;
}

.pack-booster {
  --pack-primary: #96c121;
  --pack-brand-tab: #ffffff;
  --pack-badge: #ff9419;
}

.pack-stayup {
  --pack-primary: #ff934f;
  --pack-brand-tab: #ffffff;
  --pack-badge: #f7931e;
}

.pack-advanced {
  --pack-primary: #2b4a99;
  --pack-brand-tab: #ffffff;
  --pack-badge: #f7931e;
  --pack-title-width: clamp(440px, 35vw, 672px);
}

.pack-young {
  --pack-primary: #ffec00;
  --pack-on-primary: #202020;
  --pack-brand-tab: #ffffff;
  --pack-badge: #f7931e;
  --pack-title-width: clamp(420px, 33vw, 634px);
}

.pack-young .pack-content-benefit-icon {
  filter: brightness(0);
}

.pack-metabolikit-orange {
  --pack-primary: #ff5b00;
  --pack-brand-tab: #ffffff;
  --pack-badge: #ff9419;
}

.pack-metabolikit-red {
  --pack-primary: #f4323f;
  --pack-brand-tab: #ffffff;
  --pack-badge: #ff9419;
}

.pack-metabolikit-pink {
  --pack-primary: #fa7598;
  --pack-brand-tab: #ffffff;
  --pack-badge: #ff9419;
}

.pack-metabolikit-lightblue {
  --pack-primary: #67abe4;
  --pack-brand-tab: #ffffff;
  --pack-badge: #ff9419;
}

.pack-metabolikit-green {
  --pack-primary: #00a19d;
  --pack-brand-tab: #ffffff;
  --pack-badge: #ff9419;
}

.pack-metabolikit-orange .pack-v2-brand-tab,
.pack-metabolikit-red .pack-v2-brand-tab,
.pack-metabolikit-pink .pack-v2-brand-tab,
.pack-metabolikit-lightblue .pack-v2-brand-tab,
.pack-metabolikit-green .pack-v2-brand-tab {
  font-size: clamp(25px, 2.32vw, 35px);
  white-space: nowrap;
}

.pack-v2-container {
  width: min(85.42vw, 1640px);
  margin-inline: auto;
}

.pack-v2-hero {
  padding: 24px 0 54px;
}

.pack-v2-hero-stage {
  position: relative;
  padding-bottom: clamp(88px, 7.3vw, 140px);
}

.pack-v2-hero-banner {
  display: block;
  width: 100%;
  aspect-ratio: 1640 / 648;
  object-fit: cover;
  border-radius: var(--pack-hero-radius);
}

.pack-v2-hero-product {
  position: absolute;
  left: 1.85%;
  bottom: 0;
  width: 30.5%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: var(--pack-hero-radius);
  background: #d5d3d0;
}

.pack-v2-hero-product img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 58%;
}

.pack-v2-hero-details {
  display: contents;
}

.pack-v2-brand-tab {
  position: absolute;
  right: 1.1%;
  bottom: calc(clamp(88px, 7.3vw, 140px) + 20px);
  width: var(--pack-title-width);
  min-width: 0;
  overflow: visible;
  z-index: 2;
  margin: 0;
  padding: 22px 34px 18px;
  border-radius: 0 0 12px 12px;
  box-shadow: none;
  background: var(--pack-brand-tab);
  color: #202020;
  font-size: 35px;
  font-weight: 600;
  line-height: 1;
  text-align: left;
  text-transform: uppercase;
}

.pack-v2-brand-tab::before {
  content: '';
  position: absolute;
  top: -30px;
  left: 0;
  width: 60px;
  height: 30px;
  background: var(--pack-brand-tab);
}

.pack-v2-brand-tab::after {
  content: '';
  position: absolute;
  top: -30px;
  left: 60px;
  width: 0;
  height: 0;
  border-right: 30px solid transparent;
  border-bottom: 30px solid var(--pack-brand-tab);
}

.pack-v2-badges {
  position: absolute;
  right: 0;
  left: auto;
  bottom: 0;
  display: flex;
  justify-content: flex-end;
  gap: 12px;
}

.pack-v2-badge {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 64px;
  padding: 15px 26px;
  border-radius: 8px;
  background: var(--pack-badge);
  color: #fff;
  font-size: 25px;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
}

.pack-v2-badge-icon {
  display: block;
  width: 28px;
  height: 28px;
  object-fit: contain;
}

.pack-v2-benefits {
  position: relative;
  z-index: 0;
  overflow: hidden;
  padding: clamp(78px, 6.25vw, 120px) 0 clamp(92px, 7.3vw, 140px);
  background: var(--pack-primary);
  color: var(--pack-on-primary);
  clip-path: url('#pack-v2-benefits-clip');
}

.pack-v2-definitions {
  position: absolute;
  pointer-events: none;
}

.pack-v2-benefits-inner {
  width: min(64.6vw, 1240px);
  margin-inline: auto;
}

.pack-content-benefits {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(34px, 3.15vw, 60px);
}

.pack-content-benefit-icon {
  display: block;
  width: 32px;
  height: 32px;
  margin-bottom: 13px;
  object-fit: contain;
}

.pack-content-benefit h3 {
  min-height: 46px;
  margin: 0 0 22px;
  color: var(--pack-on-primary);
  font-size: 25px;
  font-weight: 600;
  line-height: 1.15;
  text-transform: uppercase;
}

.pack-content-benefit ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.pack-content-benefit li {
  margin-bottom: 18px;
  color: var(--pack-on-primary);
  font-size: clamp(12px, .73vw, 14px);
  font-weight: 400;
  line-height: 1.45;
}

.pack-v2-info {
  --pack-info-text-size: 35px;
  --pack-info-box-text-size: 26px;
  padding: clamp(82px, 6.25vw, 120px) 0 clamp(100px, 7.3vw, 140px);
  color: #4b4b4b;
  font-family: 'Source Sans Pro', sans-serif;
}

.pack-v2-info .pack-v2-container {
  width: min(85.42vw, 1640px);
}

.pack-content-section {
  display: grid;
  grid-template-columns: clamp(150px, 13.7vw, 260px) minmax(0, 1fr);
  column-gap: clamp(72px, 8.2vw, 157px);
}

.pack-content-indications {
  padding-bottom: clamp(68px, 5.2vw, 100px);
}

.pack-content-indications-secondary {
  padding-top: 0;
}

.pack-content-title-product {
  display: block;
  white-space: nowrap;
}

.pack-metabolikit-orange .pack-content-indications .pack-content-title,
.pack-metabolikit-red .pack-content-indications .pack-content-title,
.pack-metabolikit-lightblue .pack-content-indications .pack-content-title {
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-start;
  text-align: right;
}

.pack-metabolikit-orange .pack-content-title-line,
.pack-metabolikit-red .pack-content-title-line,
.pack-metabolikit-lightblue .pack-content-title-line {
  display: flex;
  width: 100%;
  justify-content: flex-end;
  text-align: right;
}

.pack-metabolikit-orange .pack-content-indications-secondary .pack-content-chips li {
  background: #e74011;
}

.pack-metabolikit-red .pack-content-indications-secondary .pack-content-chips li {
  background: #bf062f;
}

.pack-metabolikit-lightblue .pack-content-indications-secondary .pack-content-chips li {
  background: #068fcf;
}

.pack-content-actives {
  position: relative;
  padding: clamp(68px, 5.2vw, 100px) 0;
}

.pack-content-actives::before,
.pack-content-specifications::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  width: 100vw;
  border-top: 1px solid #d7d7d7;
  transform: translateX(-50%);
}

.pack-content-title {
  display: flex;
  justify-content: flex-end;
  margin: 3px 0 0;
  color: #343434;
  font-size: var(--pack-info-text-size);
  font-weight: 600;
  line-height: 1.12;
  text-align: right;
  text-transform: uppercase;
}

.pack-content-body p {
  margin: 0 0 23px;
  color: #4b4b4b;
  font-size: var(--pack-info-text-size);
  font-weight: 400;
  line-height: 1.42;
}

.pack-content-body p:last-child {
  margin-bottom: 0;
}

.pack-content-actives .pack-content-body strong {
  font-weight: 600;
}

.pack-content-body .pack-content-subtitle {
  margin-top: clamp(30px, 2.1vw, 40px);
  margin-bottom: 14px;
  font-weight: 600;
}

.pack-content-chips {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.pack-content-chips li {
  display: flex;
  min-height: 54px;
  align-items: center;
  padding: 10px 15px;
  border-radius: 3px;
  background: var(--pack-primary);
  color: var(--pack-on-primary);
  font-size: var(--pack-info-box-text-size);
  font-weight: 400;
  line-height: 1.25;
}

.pack-content-actives strong {
  font-weight: 600;
  text-transform: uppercase;
}

.pack-content-specifications {
  position: relative;
  display: grid;
  grid-template-columns: clamp(150px, 13.7vw, 260px) minmax(0, 1fr);
  column-gap: clamp(72px, 8.2vw, 157px);
  padding-top: clamp(52px, 4.2vw, 80px);
}

.pack-content-specifications dl {
  grid-column: 2;
  margin: 0;
}

.pack-content-specifications > .pack-content-specification {
  grid-column: 2;
}

.pack-content-specification {
  margin-bottom: 28px;
}

.pack-content-specification:last-child {
  margin-bottom: 0;
}

.pack-content-specification dt,
.pack-content-specification dd {
  color: #4b4b4b;
  font-size: var(--pack-info-text-size);
  line-height: 1.45;
}

.pack-content-specification dt {
  margin-bottom: 2px;
  font-weight: 600;
  text-transform: uppercase;
}

.pack-content-specification dd {
  margin: 0;
  font-weight: 400;
}

.pack-content-specification ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.pack-content-media {
  width: min(85.42vw, 1640px);
  margin: clamp(100px, 7.3vw, 140px) 0 0 50%;
  transform: translateX(-50%);
}

.pack-content-gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(16px, 1.65vw, 32px) clamp(8px, .83vw, 16px);
}

.pack-content-gallery img,
.pack-content-campaign {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 5px;
}

.pack-content-campaign {
  margin-top: clamp(16px, 1.65vw, 32px);
}

@media (max-width: 767.98px) {
  .pack-v2-container {
    width: calc(100% - 32px);
  }

  .pack-v2-hero {
    padding: 12px 0 18px;
  }

  .pack-v2-hero-stage {
    --pack-v2-mobile-product-size: clamp(124px, calc(42vw - 13.5px), 140px);
    padding-bottom: 88px;
  }

  .pack-v2-hero-banner {
    aspect-ratio: 4 / 3;
    object-position: 60% center;
  }

  .pack-v2-hero-product {
    left: 16px;
    bottom: 46px;
    width: var(--pack-v2-mobile-product-size);
    aspect-ratio: 1 / 1;
  }

  .pack-v2-hero-details {
    position: absolute;
    right: 12px;
    bottom: 28px;
    left: calc(16px + var(--pack-v2-mobile-product-size) + 8px);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: var(--pack-v2-mobile-product-size);
  }

  .pack-v2 .pack-v2-brand-tab {
    position: relative;
    inset: auto;
    width: 100%;
    max-width: none;
    min-width: 0;
    padding: 13px 18px 11px;
    font-size: 18px;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .pack-v2-brand-tab::before {
    top: -18px;
    width: 40px;
    height: 18px;
  }

  .pack-v2-brand-tab::after {
    top: -18px;
    left: 40px;
    border-right-width: 18px;
    border-bottom-width: 18px;
  }

  .pack-v2-badges {
    position: relative;
    inset: auto;
    width: 100%;
    transform: translateY(-18px);
  }

  .pack-v2-badge {
    justify-content: center;
    width: 100%;
    min-height: 42px;
    padding: 9px 10px;
    font-size: 10px;
    white-space: nowrap;
  }

  .pack-v2-benefits {
    padding: 70px 0 82px;
  }

  .pack-v2-benefits-inner {
    width: calc(100% - 48px);
  }

  .pack-content-benefits {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 44px 30px;
  }

  .pack-content-benefit h3 {
    min-height: 38px;
    margin-bottom: 14px;
    font-size: 20px;
  }

  .pack-content-benefit li {
    margin-bottom: 12px;
  }

  .pack-v2-info {
    --pack-info-text-size: 22px;
    --pack-info-box-text-size: 18px;
    padding: 72px 0 90px;
  }

  .pack-v2-info .pack-v2-container {
    width: calc(100% - 48px);
  }

  .pack-content-section,
  .pack-content-specifications {
    grid-template-columns: 1fr;
    row-gap: 24px;
  }

  .pack-content-title {
    justify-content: flex-start;
    text-align: left;
  }

  .pack-metabolikit-orange .pack-content-indications .pack-content-title,
  .pack-metabolikit-red .pack-content-indications .pack-content-title,
  .pack-metabolikit-lightblue .pack-content-indications .pack-content-title {
    align-items: flex-start;
    text-align: left;
  }

  .pack-metabolikit-orange .pack-content-title-line,
  .pack-metabolikit-red .pack-content-title-line,
  .pack-metabolikit-lightblue .pack-content-title-line {
    justify-content: flex-start;
    text-align: left;
  }

  .pack-content-specifications dl {
    grid-column: 1;
  }

  .pack-content-specifications > .pack-content-specification {
    grid-column: 1;
  }

  .pack-content-media {
    width: calc(100vw - 32px);
    margin-top: 72px;
  }
}

@media (max-width: 359.98px) {
  .pack-v2 .pack-v2-brand-tab {
    padding: 8px 10px 7px;
    font-size: 15px;
    line-height: 1;
  }

  .pack-v2-badge {
    min-height: 36px;
    gap: 5px;
    padding: 6px 5px;
    font-size: 8px;
  }

  .pack-v2-badge-icon {
    width: 22px;
    height: 22px;
  }
}

@media (min-width: 577px) and (max-width: 1199.98px) {
  body.body-nutraceuticals-v2 #hero h3,
  body.body-nutraceuticals-v2 #bottomFooter h3,
  body[class*="pack-"] #bottomFooter h3,
  body.body-heavenly #carousel .carousel-item .carousel-caption h5,
  body.body-heavenly #bottomFooter h3 {
    font-size: clamp(52px, 8vw, 80px);
    line-height: 1;
  }
}

@media (max-width: 479.98px) {
  .pack-content-benefits {
    grid-template-columns: 1fr;
  }

  .pack-content-benefit h3 {
    min-height: 0;
  }

  .pack-content-chips {
    grid-template-columns: 1fr;
  }

  .pack-content-gallery {
    grid-template-columns: 1fr;
  }
}

/* Nutraceuticals listing 2025 ------------------------------------------- */
body.body-nutraceuticals-v2,
.nutra-v2 {
	background: #f4f7fc;
}

.nutra-v2-grid-section {
	padding-bottom: clamp(72px, 7vw, 130px);
}

/* 2026 nutraceuticals listing hero */
body.body-nutraceuticals-v2 #hero {
	position: relative;
	min-height: 100svh;
	margin-top: -70px;
	padding: 0 !important;
	background-color: #26311f;
	background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0) 58%), url('/ipc/img/restyling/nutraceuticals/hero.jpg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

body.body-nutraceuticals-v2 #hero .container {
	min-height: 100svh;
	margin-top: 0;
	margin-bottom: 0;
	background: none;
}

body.body-nutraceuticals-v2 #hero .heroTitle {
	min-height: 100svh;
	align-items: flex-end;
	padding-bottom: clamp(70px, 10vh, 118px);
}

body.body-nutraceuticals-v2 #hero .heroTitle .nutraceutici {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

body.body-nutraceuticals-v2 #hero h3 {
	max-width: 760px;
	margin: 0 !important;
	font-size: clamp(58px, 5vw, 96px);
	font-weight: 400;
	line-height: 0.9;
	letter-spacing: -0.025em;
}

body.body-nutraceuticals-v2 #hero p {
	max-width: 980px;
	margin-top: 30px !important;
	margin-bottom: 0;
	font-size: clamp(18px, 1.45vw, 28px);
	font-weight: 500;
	line-height: 1.3;
}

body.body-nutraceuticals-v2 #hero .heroSpace {
	display: none;
}

@media (max-width: 991.98px) {
	body.body-nutraceuticals-v2 #hero,
	body.body-nutraceuticals-v2 #hero .container,
	body.body-nutraceuticals-v2 #hero .heroTitle {
		min-height: 82svh;
	}

	body.body-nutraceuticals-v2 #hero {
		background-position: 58% center;
	}

	body.body-nutraceuticals-v2 #hero .heroTitle {
		padding-bottom: 64px;
	}
}

@media (max-width: 767.98px) {
	body.body-nutraceuticals-v2 #hero,
	body.body-nutraceuticals-v2 #hero .container,
	body.body-nutraceuticals-v2 #hero .heroTitle {
		min-height: 76svh;
	}

	body.body-nutraceuticals-v2 #hero {
		margin-top: -62px;
		background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0) 62%), url('/ipc/img/restyling/nutraceuticals/hero.jpg');
		background-position: 61% center;
	}

	body.body-nutraceuticals-v2 #hero .container {
		padding-right: 20px;
		padding-left: 20px;
	}

	body.body-nutraceuticals-v2 #hero .heroTitle {
		padding-bottom: 38px;
	}

	body.body-nutraceuticals-v2 #hero h3 {
		font-size: clamp(46px, 14vw, 66px);
		line-height: 0.92;
	}

	body.body-nutraceuticals-v2 #hero p {
		margin-top: 18px !important;
		font-size: 16px;
		line-height: 1.35;
	}
}

.productLoop.productLoopV2 {
	display: flex;
	background-position: center -120px;
	background-repeat: no-repeat;
	background-size: auto 120%;
	width: 100%;
	min-height: 550px;
}

@media (min-width: 1200px) {
	.productLoop.productLoopV2 {
		background-size: 100% 120%;
	}
}

@media (max-width: 767.98px) {
	.productLoop.productLoopV2.productLoopHasMobileImage {
		background-image: var(--product-loop-mobile-image) !important;
		background-position: center;
		background-size: cover;
	}

	.productLoop.productLoopV2 .big-folder .meta .pack-meta-quantity {
		margin-top: 14px;
	}
}

.productLoop.productLoopV2 .big-folder .content {
	display: flex;
	flex-direction: column;
	padding: 20px;
}

.productLoop.productLoopV2 .big-folder .content > p {
	font-size: 14px;
	line-height: 1;
	margin-bottom: 10px;
}

.productLoop.productLoopV2 .big-folder .content hr {
	width: 100%;
	margin-top: auto;
}

.productLoop.productLoopV2 .big-folder .meta .pack-meta-item {
	display: flex;
	align-items: center;
	gap: 8px;
}

.productLoop.productLoopV2 .big-folder .meta .pack-meta-item > img {
	flex: 0 0 auto;
}

.productLoop.productLoopV2 .big-folder .meta span {
	display: block;
	min-width: 0;
	margin-left: 0;
	position: static;
	font-size: 14px;
	line-height: 1;
}

.productLoop.productLoopV2 .big-folder .meta .pack-meta-quantity .pack-meta-arrow {
	flex: 0 0 auto;
	margin-left: auto;
}

.productLoop.productLoopV2 .big-folder .meta .pack-meta-arrow-image {
	display: block;
}

header{
	text-align: center;
}

header nav{
	z-index: 2;	
}

#mybutton{
	background-color: var(--dark-blue-color);
	padding: 10px;
	border-radius: 8px;
	font-size:  var(--secondary-text-size);
	color: var(--white-color);
	font-weight: 600;
	width: 30%;
	text-align: center;
	margin-top: 10px;
}

p{
	color: var(--secondary-text-color);
	font-size: var(--paragraph-text-size);
	line-height: var(--paragraph-line-height);
	font-weight: 500;
}

.h4{
	font-size: var(--medium-text-size) !important;
}

.featured{
	font-size: var(--medium-text-size);
	line-height: var(--medium-line-height);	
	font-weight: 600;
	color: var(--main-text-size);
}

legend{
	font-size: var(--primary-text-size);
	line-height: 17px;
	color: var(--secondary-text-color);
}

.row-full{
 width: 100vw;
 position: relative;
 margin-left: -50vw;
 left: 50%;
}

a{
	text-decoration: none;
}

.dot {
  height: 8px;
  width: 8px;
  border-radius: 50%;
  display: inline-block;
}

.semi-bold{
	font-weight: 600;
}

/************ colors ***************/
.white{
	color: var(--white-color);
}

.dark{
	color: var(--main-text-color);
}

.pink{
	color: var(--pink-color);
}

.blue{
	color: var(--blue-color);
}

.light-blue{
	color: var(--light-blue-color);
}

.dark-blue{
	color: var(--dark-blue-color);
}

.purple{
	color: var(--purple-color);
}

.light-purple{
	color: var(--light-purple-color);
}

.heavenly{
	color:  var(--heavenly-color);
}

.bg-pink{
	background-color:  var(--pink-color);
}

.bg-purple{
	background-color:  var(--purple-color);
}

.bg-violet{
	background-color:  var(--violet-color);
}

.bg-light-purple{
	background-color: var(--light-purple-color);
}

.bg-blue{
	background-color:  var(--blue-color);
}

.bg-heavenly{
	background-color:  var(--heavenly-color);
}

.bg-light-blue{
	background-color:  var(--light-blue-color);
}

.bg-white{
	background-color: var(--white-color);
}

.bg-green{
	background-color: var(--green-color);
	color: white;
}

.bg-yellow{
	background-color: var(--yellow-color);
}

.bg-green p{
	color: white;	
}

.bg-orange{
	background-color: var(--orange-color);
	color: white;
}

.bg-orange p{
	color: white;	
}

.rainbow{
	background: rgb(80,173,207);
	background: -moz-linear-gradient(135deg, rgba(80,173,207,1) 0%, rgba(147,254,198,1) 33%, rgba(147,254,198,1) 66%, rgba(210,154,255,1) 100%);
	background: -webkit-linear-gradient(135deg, rgba(80,173,207,1) 0%, rgba(147,254,198,1) 33%, rgba(147,254,198,1) 66%, rgba(210,154,255,1) 100%);
	background: linear-gradient(135deg, rgba(80,173,207,1) 0%, rgba(147,254,198,1) 33%, rgba(147,254,198,1) 66%, rgba(210,154,255,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#50adcf",endColorstr="#d29aff",GradientType=1); 
}

.rainbow-section{
	 background: url('/ipc/img/maschera-ipc.png'), rgb(21,199,166);
	 background: url('/ipc/img/maschera-ipc.png'), -moz-linear-gradient(45deg, rgba(21,199,166,1) 0%, rgba(87,167,207,1) 33%, rgba(182,155,254,1) 66%, rgba(146,255,198,1) 100%);
	 background: url('/ipc/img/maschera-ipc.png'), -webkit-linear-gradient(45deg, rgba(21,199,166,1) 0%, rgba(87,167,207,1) 33%, rgba(182,155,254,1) 66%, rgba(146,255,198,1) 100%);
	 background: url('/ipc/img/maschera-ipc.png'), linear-gradient(45deg, rgba(21,199,166,1) 0%, rgba(87,167,207,1) 33%, rgba(182,155,254,1) 66%, rgba(146,255,198,1) 100%);
	 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#15c7a6",endColorstr="#92ffc6",GradientType=1); 
	 background-size: 100% 100%;
	 background-position: center; 
}

.rainbow-button{
	 background: rgb(21,199,166);
	 background: -moz-linear-gradient(45deg, rgba(21,199,166,1) 0%, rgba(87,167,207,1) 33%, rgba(182,155,254,1) 66%, rgba(146,255,198,1) 100%);
	 background: -webkit-linear-gradient(45deg, rgba(21,199,166,1) 0%, rgba(87,167,207,1) 33%, rgba(182,155,254,1) 66%, rgba(146,255,198,1) 100%);
	 background: linear-gradient(45deg, rgba(21,199,166,1) 0%, rgba(87,167,207,1) 33%, rgba(182,155,254,1) 66%, rgba(146,255,198,1) 100%);
	 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#15c7a6",endColorstr="#92ffc6",GradientType=1); 
	 background-size: 100% 100%;
	 background-position: center; 
}

/*
.rainbow-button{
	 background: rgb(187,176,245);
	 background: -moz-linear-gradient(90deg, rgba(187,176,245,1) 0%, rgba(255,172,198,1) 33%, rgba(159,210,255,1) 66%, rgba(0,194,115,1) 100%);
	 background: -webkit-linear-gradient(90deg, rgba(187,176,245,1) 0%, rgba(255,172,198,1) 33%, rgba(159,210,255,1) 66%, rgba(0,194,115,1) 100%);
	 background: linear-gradient(90deg, rgba(187,176,245,1) 0%, rgba(255,172,198,1) 33%, rgba(159,210,255,1) 66%, rgba(0,194,115,1) 100%);
	 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#bbb0f5",endColorstr="#00c273",GradientType=1); 
}
*/

.rainbow-female{
 background: rgb(146,255,200);
background: -moz-linear-gradient(135deg, rgba(146,255,200,1) 30%, rgba(206,149,255,1) 50%, rgba(206,149,255,1) 70%, rgba(121,159,222,1) 90%, rgba(0,194,115,1) 100%);
background: -webkit-linear-gradient(135deg, rgba(146,255,200,1) 30%, rgba(206,149,255,1) 50%, rgba(206,149,255,1) 70%, rgba(121,159,222,1) 90%, rgba(0,194,115,1) 100%);
background: linear-gradient(135deg, rgba(146,255,200,1) 30%, rgba(206,149,255,1) 50%, rgba(206,149,255,1) 70%, rgba(121,159,222,1) 90%, rgba(0,194,115,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#92ffc8",endColorstr="#00c273",GradientType=1); 
}

.rainbow-male{
	 background: rgb(148,211,254);
	 background: -moz-linear-gradient(135deg, rgba(148,211,254,1) 20%, rgba(235,200,254,1) 40%, rgba(235,200,254,1) 80%, rgba(189,176,255,1) 100%);
	 background: -webkit-linear-gradient(135deg, rgba(148,211,254,1) 20%, rgba(235,200,254,1) 40%, rgba(235,200,254,1) 80%, rgba(189,176,255,1) 100%);
	 background: linear-gradient(135deg, rgba(148,211,254,1) 20%, rgba(235,200,254,1) 40%, rgba(235,200,254,1) 80%, rgba(189,176,255,1) 100%);
	 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#94d3fe",endColorstr="#bdb0ff",GradientType=1); 
}

.rainbow-default{
		background: rgb(80,173,207);
	background: -moz-linear-gradient(135deg, rgba(80,173,207,1) 0%, rgba(147,254,198,1) 80%);
	background: -webkit-linear-gradient(135deg, rgba(80,173,207,1) 0%, rgba(147,254,198,1) 80%);
	background: linear-gradient(135deg, rgba(80,173,207,1) 0%, rgba(147,254,198,1) 80%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#50adcf",endColorstr="#93fec6",GradientType=1);
}

.rainbow-hero{
	 background: rgb(21,199,166);
	 background: -moz-linear-gradient(45deg, rgba(21,199,166,1) 0%, rgba(87,167,207,1) 33%, rgba(182,155,254,1) 66%, rgba(146,255,198,1) 100%);
	 background: -webkit-linear-gradient(45deg, rgba(21,199,166,1) 0%, rgba(87,167,207,1) 33%, rgba(182,155,254,1) 66%, rgba(146,255,198,1) 100%);
	 background: linear-gradient(45deg, rgba(21,199,166,1) 0%, rgba(87,167,207,1) 33%, rgba(182,155,254,1) 66%, rgba(146,255,198,1) 100%);
	 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#15c7a6",endColorstr="#92ffc6",GradientType=1); 
}


/************ typography ***************/

h1{
	font-size: var(--big-text-size);
	line-height: 0.9;
}


section#postContent h2 {
	margin-bottom: 60px !important;
}

section#postContent p {
	margin-bottom: 60px !important;
}

section#postContent h3 {
	margin-bottom: 60px !important;
}

h2{
	font-size: var(--headline-text-size);
}

.mini-text{
	font-size: var(--mini-text-size);
	line-height: 1.2;
}

.primary-text{
	font-size: var(--primary-text-size);
	line-height: 1.6;
}

.secondary-text{
	font-size: var(--secondary-text-size);
}

.paragraph-text{
	font-size: var(--paragraph-text-size);
}

.regular-text{
	font-size: var(--regular-text-size) !important;
}

.title-text{
	font-size: var(--title-text-size);
}

.headline-text{
	font-size: var(--headline-text-size);
}

.medium-text{
	font-size: var(--medium-text-size);
	line-height: 40px;
}

.intermediate-text{
	font-size: var(--intermediate-text-size);
	line-height: 50px;
}

.big-text{
	font-size: var(--big-text-size);
}

h3, h4{
	font-weight: 600;
	font-size: var(--medium-text-size);
}

/************ button ***************/

button, .btn{
	font-size: 1.2rem;
	border-radius: 8px;
	padding-right: 50px;
	padding-left: 50px;
	margin-top: 20px;
}

.btn-light{
	background-color: white !important;
}

.btn{
	font-size:  var(--paragraph-text-size);
	height: 50px;
	letter-spacing: 0px;
	line-height: 34px;
}

/************ messages alerts ***************/
.message.error{
	color: #a24242;
	text-align: center;
	font-weight: 700;
}

/************ navigation ***************/

.navbar-toggler{
	margin-top: 0px !important;
}

.languageSeparator{
	font-size: var(--big-text-size);
	padding: 0px 20px;
	line-height: 10px;
}

nav{
	height: 70px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

body nav.fixed-top{
	background-color: var(--black-color) !important;
	color: white;
}

nav.fixed-top .nav-link, nav.fixed-top a.dropdown-toggle{
	color: white !important;
	font-weight: 600;
}

nav.fixed-top .nav-link:hover, nav.fixed-top a.dropdown-toggle:hover{
	color: white !important;
}

nav.fixed-top img.logo-sticky{
	display: block;	
}

nav.fixed-top img.logo-main{
	display: none;	
}

nav img.logo-sticky{
	display: none;	
}

nav img.logo-main{
	display: black;	
}

nav .nav-link, nav a.dropdown-toggle{
	padding-right: 15px !important;
	padding-left: 15px !important;
	font-weight: 600;
	color: var(--main-text-color);
}


nav .nav-link:hover{
	color: var(--dark-blue-color);	
}

nav .nav-item.active{
	border-bottom: 2px solid var(--main-text-color);
}

nav .nav-item:last-child .nav-link{
	padding-right: 0px !important;
}

nav .nav-item {
  height: 70px;
  display: flex;
  justify-content: center;
  align-items: center;
}


@media (min-width: 992px) {
  .navbar-expand-lg .navbar-collapse {
    justify-content: flex-end;
  }
 
}
   
/*************** menu mobile ********************/

@media only screen and (max-width: 991.98px) {
	#navbar_top {
		background: var(--black-color) !important;
	}

	#navbar_top img.logo-main,
	#navbar_top img.mobile-button {
		filter: brightness(0) invert(1);
	}

	#navbar_top > .container {
		max-width: none;
		padding-right: 28px;
		padding-left: 28px;
	}

	header:has(#menuModal.show) {
		z-index: 1060;
	}
	
	#menuModal ul li{
		list-style: none;
		padding-left: 40px;
		border-left: 9px solid transparent;
		margin-bottom: clamp(18px, 4vh, 32px);
	}
	
	#menuModal ul li.active{
		border-left: 9px solid white;
	}
	
	#menuModal ul{
		padding: 0px;
		margin-top: clamp(24px, 5vh, 40px) !important;
	}
	
	#menuModal ul li a{
		font-size: clamp(24px, 8vw, 32px);
		color: white;
		text-align: left;
		line-height: 1.15;
	}	
	
	#menuModal .modal-body{
		padding: 0 0 24px;
		overflow-y: auto;
	}
	
	#menuModal .modal-header{
		height: 70px;
		padding-left: 1.75rem;
		padding-right: 1.75rem;
	}
	
	.fixed-top{
		display: none;
	}
	
}
  
/************ footer ***************/

#topFooter{
	 background: rgb(244,247,252);
}

#topFooter .top-footer-image {
	background-image: url('/ipc/img/newsletter.jpg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

#topFooter.ambassador-footer{
	background: url('/ipc/img/ambassador-footer.jpg') rgb(244,247,252);
	 background-position: 140% center;
	 background-repeat: no-repeat;
	 background-size: auto 100%;
	 
}

/*
#topFooter .contactImg{
	background-image: url('/ipc/img/newsletter.jpg');
	background-size: cover;
	border-radius: 8px;
}
*/

#bottomFooter h3{
	font-size: var(--big-text-size);
	line-height: 1;
	font-weight: 500;
}

#bottomFooter ul, #bottomFooter p{
	margin: 0px;
}

#bottomFooter ul li{
	color: white;
	list-style-type: none;
	margin-top: 15px;
	line-height: 1;
}

#bottomFooter ul li a{
	color: white;
}

footer h4{
	font-size: var(--medium-text-size);
}

form#newsletterForm small{
   font-size: var(--mini-text-size);
}

form#newsletterForm label{
	margin-left: 0px;	
	font-weight: 500;
}

/************ input form ***************/

.form-control{
	border: 0px;
}

.form-group{
	margin-bottom: 10px;
}

.form-group > label{
	margin-left: 10px;
	margin-bottom: 10px;
	color: var(--main-text-color);
}

input[type=text], select, input[type=email], input[type=number]{
	height: 50px;
	border-radius: 8px;
}

.input-radio{
	margin-bottom: 30px;
}

.full-width{
	display: flex;
	flex-direction: row;
}

.input-radio > label{
	width: 100%;
	margin-left: 10px;
	margin-bottom: 30px;
}

.input-radio input{
	width: 30px;
	height: 30px;
}

.input-radio .form-check-inline label{
	position: relative;
	top: 5px;
	left: 10px;
}

.input-group-prepend {
  position: absolute;
  right: 6px;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  padding: 10px;
  z-index: 10;
}

.input-group{
	position: relative;
}

textarea{
	min-height: 150px !important;
	border-radius: 8px;
	position: relative;
	margin-bottom: 30px;
}

#contactForm input{
	border:none !important;
}

.form-group label{
	font-size: var(--secondary-text-size) !important;
	font-weight: 700;
}

form#contactForm {
	margin-top:10px;
}

.formfooter{
	width: 100% !important;
}
.formestetica{
	padding-left:150px;
	padding-right:100px;
}

#message{
	border:none !important;
}

.form-control:disabled {
   background: rgb(255,255,255);
   background: -moz-linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(233,236,239,1) 46%);
   background: -webkit-linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(233,236,239,1) 46%);
   background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(233,236,239,1) 46%);
   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#e9ecef",GradientType=1); 
  opacity: 1;
}

input.form-control::placeholder, textarea.form-control::placeholder{
  font-size: var(--mini-text-size) !important;
  opacity: 0.5 !important;
  color: var(--secondary-text-color) !important;
  line-height: 24px;
}

select#district{
  color: var(--secondary-text-color) !important;
  line-height: 24px;
}

.input-buttons .btn-group{
	margin-top: 10px;
}

.input-buttons .btn-group label{
	height: 50px;
	border-radius: 8px !important;
	font-size:  var(--primary-text-size);
	line-height: 15px;
	padding: 17px 10px 0px 10px;
	margin-right: 20px;
	border: 0px !important;
}

.input-buttons .btn-group .btn-check:checked+.btn{
	border: 0px !important;
	background-color: var(--dark-blue-color) !important;
	color: white !important;
}

.smaller .radio-button{
	font-size: 20px;
}

.radio-button{
	width: 100%;
	display:flex;
	align-items: center;
	justify-content: flex-end;
	flex-direction: row-reverse;
	margin: 10px;
	font-size: 25px;
	cursor: pointer;
	min-width: 70px;
}
.radio-button input{
	display:none;
	width: 0;
	height: 0;
}
.radio-button span{
	width: 50px;
	height: 50px;
	position: relative;
	margin-right: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background-color: #ffffff;
}
.radio-button input:checked + span:after{
	content: "";
	display: block;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background-color: #0c09fd;
}
.radio-button input:checked + span {
	background-color: #ffffff;
}
.radio-button input:disabled + span {
	background-color: #cacaca;
}
.radio-button span:before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	opacity: 0;
	border-radius: 50%;
	background-color: #76b176;
}
.radio-button input:checked + span:before {
	animation: growAndFade 0.2s ease-out;
} 
@keyframes growAndFade {
	0% {
		opacity: 1;
		transform: scale(1);
	}
	50% {
		opacity: 0.5;
		transform: scale(1.5);
	}
	100% {
		opacity: 0;
		transform: scale(2);
	}
}

.form-check label{
	font-size: var(--mini-text-size);
}

.btn.btn-dark:hover, .btn.btn-light:hover{
	background-color: #0d6efd;
	border-color: #0d6efd;
}

/************ table ***************/

table{
	width: 100%;
	color: var(--main-text-color);
    border-collapse: separate;
	border-spacing: 0 5px;
}

table thead tr th:first-child{
	border-radius: 8px 0px 0px 8px
}

table thead tr th:last-child{
	border-radius: 0px 8px 8px 0px;
	text-align: right;
	
}

table tbody tr{
	padding: 10px 0px 10px 0px;
}

table tbody tr:nth-child(even), tfoot tr {
  background-color: #F4F7FC;
}

table tbody tr:nth-child(odd) td {
  border-top: 1px solid #F4F7FC;
  border-bottom: 1px solid #F4F7FC;
}

table tbody tr td, table tfoot tr td{
	text-align: left;
	min-height: 45px;
	padding: 12px 12px 12px 50px;
}

table tbody tr:nth-child(even) td:first-child, tfoot tr td:first-child{
  border-radius: 8px 0px 0px 8px
}

table tbody tr:nth-child(even) td:last-child, tfoot tr td:last-child{
  border-radius: 0px 8px 8px 0px
}

table thead tr th{
	height: 60px;
	color: #fff;
	text-align: left;
	font-size: var(--paragraph-text-size);
	font-weight: 300;
	border-right: 1px solid white;
	border-left: 1px solid white;
	padding: 12px 12px 12px 50px;
}

.protocol-plan table thead tr, .treatments-plan table thead tr{
	 background: rgb(187,176,245);
	 background: -moz-linear-gradient(90deg, rgba(187,176,245,1) 0%, rgba(255,172,198,1) 33%, rgba(159,210,255,1) 66%, rgba(0,194,115,1) 100%);
	 background: -webkit-linear-gradient(90deg, rgba(187,176,245,1) 0%, rgba(255,172,198,1) 33%, rgba(159,210,255,1) 66%, rgba(0,194,115,1) 100%);
	 background: linear-gradient(90deg, rgba(187,176,245,1) 0%, rgba(255,172,198,1) 33%, rgba(159,210,255,1) 66%, rgba(0,194,115,1) 100%);
	 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#bbb0f5",endColorstr="#00c273",GradientType=1); 
	 border-radius: 8px;
	 
}

table tfoot tr td:last-child{
	text-align: right;
}

table span.price{
	font-size:  var(--big-text-size);
	line-height: 65px;	
	color: var(--dark-blue-color);
}

table span.price small{
	font-size:  var(--secondary-text-size);
	line-height: 18px;
	color: var(--dark-blue-color);
	display: block;
	width: 100%;
}

/************ body variation ***************/

body.body-orange #hero{
	background-image: url('/ipc/img/back-orange.jpg');
	min-height: 75vh;
	background-size: 100% 100%;
	background-repeat: no-repeat;
}

body.body-orange #hero .container{
	background-image: url('/ipc/img/nutraceutici.png');
	min-height: 70vh;
	background-repeat: no-repeat;
	margin-top: 50px;
	background-size: contain;
	background-position: center top;
	margin-bottom: -20vh
}

body.body-orange nav .navbar-nav .nav-link, body.body-rainbow nav .navbar-nav .nav-link, body.body-orange nav .navbar-nav a.nav-link, body.body-orange nav .navbar-nav a.dropdown-toggle, body.body-rainbow nav .navbar-nav a.dropdown-toggle, body.body-store nav .navbar-nav a.dropdown-toggle{
	color: white !important;	
}

body.body-blue #hero{
	background-image: url('/ipc/img/back-light-blue.jpg');
	min-height: 75vh;
	background-size: 100% 100%;
	background-repeat: no-repeat;
}

body.body-blue #hero .container{
	background-image: url('/ipc/img/telemedicina.png');
	min-height: 70vh;
	background-repeat: no-repeat;
	background-position: center;
	margin-bottom: -20vh
}

body.body-gradient #hero{
	 background: url('/ipc/img/sotto.png'), rgb(21,199,166);
	 background: url('/ipc/img/sotto.png'), -moz-linear-gradient(45deg, rgba(21,199,166,1) 0%, rgba(87,167,207,1) 33%, rgba(182,155,254,1) 66%, rgba(146,255,198,1) 100%);
	 background: url('/ipc/img/sotto.png'), -webkit-linear-gradient(45deg, rgba(21,199,166,1) 0%, rgba(87,167,207,1) 33%, rgba(182,155,254,1) 66%, rgba(146,255,198,1) 100%);
	 background: url('/ipc/img/sotto.png'), linear-gradient(45deg, rgba(21,199,166,1) 0%, rgba(87,167,207,1) 33%, rgba(182,155,254,1) 66%, rgba(146,255,198,1) 100%);
	 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#15c7a6",endColorstr="#92ffc6",GradientType=1); 
	 background-position: center bottom; 
	min-height: 75vh;
	background-size: 100% 100%;
	background-repeat: no-repeat;
}

body.body-gradient #hero .container{
	background-image: url('/ipc/img/estetica-avanzata.png');
	min-height: 70vh;
	background-repeat: no-repeat;
	background-position: center;
	margin-bottom: -20vh
}

body.body-gradient #hero .container.ambassador{
	background-image: url('/ipc/img/ambassador.png');
	min-height: 70vh;
	background-repeat: no-repeat;
	background-position: center;
	margin-bottom: -20vh
}


body.body-heavenly nav{
	background-color:  var(--heavenly-color);
}

body.body-store #hero{
	background-image: url('/ipc/img/ipc-method-store.jpg');
}

body.body-servizi #hero{
	background-image: url('/ipc/img/ipc-method-servizi.jpg');
}

body.body-store nav .nav-link, body.body-store nav .nav-link.active, body.body-gradient nav .nav-link, body.body-gradient nav .nav-link.active, body.body-gradient nav a.dropdown-toggle, body.body-gradient nav a.dropdown-toggle:hover, body.body-gradient nav a.dropdown-toggle:focus, body.body-servizi nav .nav-link, body.body-servizi nav .nav-link.active{
	color: white !important;
}

body.body-store nav .nav-item.active, body.body-gradient nav .nav-item.active, body.body-rainbow nav .navbar-nav .nav-item.active, body.body-orange nav .navbar-nav .nav-item.active{
	border-bottom: 2px solid white;
	bottom: -1px;
	position: relative;
}


/************ hero ***************/

#hero {
	margin-top: -70px;
}

#hero .container{
/* 	padding: 0% 3%; */
}

#hero .heroTitle{
	
}

#hero .heroSpace{
	min-height: 30vh;
	margin-top: 50px;
}

#hero .caption{
	position: absolute;
	top: 50%;
}

#hero.relative .caption{
	position: relative;
}

#hero h3{
	font-size: var(--big-text-size);
	line-height: 1;
	margin: 0;
	font-weight: 500;
}


/************ folder element ***************/


.folder{
	width: 100%;
}

.folder .top{
	display: flex;
	flex-direction: row;
	
}

.folder .square{
	height: 30px;
	width: 60px;
}

.folder .triangle.white {
   width: 0px;
   height: 0px;
   border-style: solid;
   border-width: 30px 0 0 30px;
   border-color: transparent transparent transparent #FFFFFF;
   transform: rotate(0deg);
}

.folder .triangle.orange {
	width: 0px;
   height: 0px;
   border-style: solid;
   border-width: 30px 0 0 30px;
   border-color: transparent transparent transparent var(--orange-color);
   transform: rotate(0deg);
}

.folder .triangle.green {
	width: 0px;
   height: 0px;
   border-style: solid;
   border-width: 30px 0 0 30px;
   border-color: transparent transparent transparent var(--green-color);
   transform: rotate(0deg);
}

.folder .content {
	padding: 30px 30px;
	text-align: left;
	border-radius: 0px 0px 8px 8px		
}

.folder .content p{
	margin: 0px;	
}


/************ product loop element ***************/

.productLoop{
	min-height: 800px;
	background-size: cover;
	background-position: center center;
	padding: 10px;
	display: flex;
	justify-content: end;
	align-items: flex-end;
	position: relative;
}

.productLoop .card-tag{
	position: absolute;
	top: 30px;
	right: 20px;	
}

.productLoop .card-tag span{
	border-radius: 50px;
	padding: 10px 20px;
	color: white;	
}

 .big-folder{
	position: relative;
}

.big-folder .top{
	z-index: 1;
	position: relative;
}

 .big-folder .meta span{
	 font-size: var(--paragraph-text-size);
	 font-weight: 600;
	 margin-left: 5px;
	 position: relative;
  top: 4px;
 }

.big-folder .subtop{
	position: absolute;
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: flex-end;
	top: -10px;
	right: 0;
	z-index: 0;
	text-transform: uppercase;
}

.big-folder .subtop .rectangle{
	height: 15px;
	background-color: #00c170;
	min-width: 150px;
}

.big-folder .subtop .square{
	height: 40px;
    width: 590px;
	margin-right: 20px !important;
	background: rgb(0,193,112);
	background: -moz-linear-gradient(90deg, rgba(0,193,112,1) 0%, rgba(87,204,212,1) 26%, rgba(173,214,255,1) 44%, rgba(167,207,253,1) 60%, rgba(188,176,245,1) 100%);
	background: -webkit-linear-gradient(90deg, rgba(0,193,112,1) 0%, rgba(87,204,212,1) 26%, rgba(173,214,255,1) 44%, rgba(167,207,253,1) 60%, rgba(188,176,245,1) 100%);
	background: linear-gradient(90deg, rgba(0,193,112,1) 0%, rgba(87,204,212,1) 26%, rgba(173,214,255,1) 44%, rgba(167,207,253,1) 60%, rgba(188,176,245,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#00c170",endColorstr="#bcb0f5",GradientType=1); 
	display: flex;
	justify-content: flex-end;
	align-items: center;
	padding-right: 10px;
}

.big-folder .subtop .triangle{
	width: 0px;
   height: 0px;
   border-style: solid;
   border-width: 0 0 40px 40px;
   border-color: transparent transparent #00c170 transparent;
   transform: rotate(0deg);
   margin-left: -20px;
}

/************ feature element ***************/

.feature{
	height: 6rem;
	width: 6rem;
	border-radius: 60px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items:center ;
	margin-left: 0.85rem;
}

.feature p{
	font-size: 0.85rem;
	line-height: 15px;
	text-align: center;
	margin: 4px 0px 0px;	
	color: var(--main-text-color);
	width: 90%;
}

.feature.bg-purple p, .feature.bg-orange p, .feature.bg-violet p{
	color: white;
}

/************ pages home ***************/

.home{
	
}

#products.home-products .owl-carousel{
	width: 100%;
	margin-top: 0;
}

#products.home-products > .container > .row > .col-md-3 {
	padding-left: 0;
}

#products.home-products > .container > .row > .col-md-9 {
	padding-right: 0;
}

#products.home-products .card .folder .content h4 {
	margin: 0;
	font-size: 22px;
	line-height: 1.1;
	white-space: nowrap;
}

#products.home-products .card .folder .content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 72px;
	padding: 20px;
	box-sizing: border-box;
}

#products.home-products .card .folder {
	padding: 0 8px 8px;
}

#carousel .carousel-item{
	padding: 0% 7%;
}

#carousel .carousel-item .carousel-caption{
	left: 0 !important;
	text-align: left;
	top: 100px;
}

#carousel .carousel-item .carousel-caption p{
	margin-top: 40px;	
	font-weight: 500;
	color: var(--main-text-color);
}

#carousel .carousel-item .carousel-caption p a{
	color: white;	
	font-weight: 600;
}

#carousel .carousel-item .carousel-caption h5{
	color: var(--main-text-color);
	font-size: var(--big-text-size);
	line-height: 140px;
}

#carousel .carousel-indicators{
	justify-content: flex-start;
	margin-left: 0px;
	margin-bottom: 80px;
}

#carousel .carousel-indicators [data-bs-target]{
	width: 15%;
}

#carousel .carousel-indicators .active{
	background-color: var(--light-blue-color);
}

#carousel .carousel-control-next{
	top: 18%;
	height: 30px;
	opacity: 0.8;
	right: -10px;
}

#carousel .carousel-control-prev{
	top: 10%;
	left: auto !important;
	height: 30px;
	opacity: 0.8;
	right: -10px;
	padding-bottom: 40px;
	border-bottom: 1px solid black;
}

#carousel .carousel-control-next-icon{
	background-image: url('/ipc/img/next.png');
	width: 20px;
	height: 30px;
}

#carousel .carousel-control-prev-icon{
	background-image: url('/ipc/img/prev.png');
	width: 20px;
	height: 30px;
}

#carousel .carousel-control-next, #carousel .carousel-control-prev{
	width: 90px;
	border-radius: 0px;
}

section #homeForm{
	width: 350px;
	height: 450px;
	position: absolute;
	bottom: 0px;
	right: 0px;
	border-radius: 8px;
	padding: 30px;
	z-index: 2;
}

section#counter h3{
	font-size: var(--big-text-size);
	line-height: 189px;
	text-align: center;
}

section#stores{
	min-height: 500px;
}

section#stores .promotion{
	background-image: url('/ipc/img/ipc-promotion-stores.jpg');
	min-height: 550px;
	background-size: cover;
	border-radius: 8px;
	background-position: center center;
}

section.ambassador-register .ambassador{
	background-image: url('/ipc/img/ambassador-call.jpg');
	min-height: 550px;
	background-size: cover;
	border-radius: 8px;
	background-position: center center;
}

section#stores .promotion > .row{
	height: 100%;
}

section#stores .promotion h5{
	font-size: var(--big-text-size);
	line-height: 120px;
	margin: -30px 0px -10px;
	padding-top: 20px;
}

section#products .card{
	padding: 0px 0px;
	border: 0px;
}

section#products .card img{
	border-radius: 8px;
}

section#products .card{
	position: relative;
}

section#products .card .card-tag{
	position: absolute;
	top: 20px;
	right: 20px;
}

section#golden .container{
	position: relative;
}

section#golden .card-tag{
	position: absolute;
	top: 30px;
	right: 20px;
}

section#products .card .card-tag span, section#golden .card-tag span{
	border-radius: 50px;
	padding: 10px 20px;
	text-transform: uppercase;
	color: white;
}

section#products .card .folder{
	position: absolute;
	bottom: 0px;
	padding: 0px 20px 10px;
	left: 0px;
}

section#features .promotion{
	background-image: url('/ipc/img/restyling/home/section-gluten-free.jpg');
	min-height: 730px;
	background-size: cover;
	background-position: center center;
}

@media (max-width: 767px) {
	section#products .carousel-inner .carousel-item > div {
		display: none;
	}
	section#products .carousel-inner .carousel-item > div:first-child {
		display: block;
	}
}

section#products .carousel-inner .carousel-item.active,
section#product s.carousel-inner .carousel-item-next,
section#products .carousel-inner .carousel-item-prev {
	display: flex;
}

/* medium and up screens */
@media (min-width: 768px) {

	section#products .carousel-inner .carousel-item-end.active,
	section#products .carousel-inner .carousel-item-next {
		transform: translateX(25%);
	}

	section#products .carousel-inner .carousel-item-start.active, 
	section#products .carousel-inner .carousel-item-prev {
		transform: translateX(-25%);
	}
}

section#products .carousel-inner .carousel-item-end,
section#products .carousel-inner .carousel-item-start { 
	transform: translateX(0);
}

/************ pages contatti ***************/

#hero.rainbow nav .nav-link{
	color: white;
}

/************ pages telemedicina ***************/

.slot{
	background-color: #F4F7FC;
	padding: 10px;
	border-radius: 8px;
}

.slot .thumb{
	position: relative;
	width: 100%;
	min-height: 350px;
	border-radius: 8px;
	display: flex;
	align-items: baseline;
	overflow: hidden;
}

.slot .thumb::before{
	position: absolute;
	z-index: 0;
	inset: 0;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.72) 0%, rgba(0, 0, 0, 0.28) 38%, rgba(0, 0, 0, 0) 72%);
	content: "";
	pointer-events: none;
}

.slot .thumb p{
	position: relative;
	z-index: 1;
	font-weight: 600;	
}

.slot .thumb.corsi{
	background-image: url('/ipc/img/restyling/training/card.jpg');
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
}

.slot .thumb.personal{
	background-image: url('/ipc/img/restyling/personal-consulting/card.jpg');
	background-size: cover;
	background-position: center bottom;
	background-repeat: no-repeat;
}

.slot a.rainbow-button{
	color: white;
	text-decoration: none;
	font-size: var(--secondary-text-size);
	line-height: 1;
	height: 50px;
	display: flex;
	align-items: center;
}

.slot .btn{
	display: flex;
	justify-content: center;
	align-items: center;	
}

/************ pages estetica ***************/


#payoff p{
	font-size: var(--medium-text-size);
	line-height: 40px;
	color: var(--secondary-text-color);
	font-weight: 500;
}

#payoff h3{
	padding-left:150px;
	font-weight: 600;
	color: var(--main-text-color);
}

#why{
	background-image: url('/ipc/img/oranges.jpg');
	background-size: cover;
}

#why #why-reason{
	margin-top: -10vh;
	margin-bottom: -10vh;	
	
}

#why p{
	color: var(--main-text-color);
}

#support{
	margin-top: 15vh;
}

/************ packs view ***************/

.riga{
	display:flex;
}
.primacolonna{
	width:25%;
}
.secondacolonna{
	width:75%;
}
@media only screen and (max-width: 400px){
	.riga{
		display:block;
	}
	.primacolonna{
		width:100%%;
	}
	.secondacolonna{
	width:100%;
	}
}

#storeAction p{
	font-size: var(--medium-text-size);
	line-height: 1;
}

.storeButton{
	display: flex;
	flex-direction: column;
	align-items: end;
}

#productFeatures p{
	color: white;
}

#productFeatures .container .row .col p{
	font-size: var(--regular-text-size);
	margin-top: 20px;
}

#productFeatures .container .row .col p:last-child{
	font-size: var(--paragraph-text-size);
	margin: 0px;
}

#productInfo .primacolonna p{
	font-size: var(--medium-text-size);
	line-height: 40px;
	color: var(--main-text-color);
	font-weight: 600;
}

#productInfo .secondacolonna p{
	font-size: var(--medium-text-size);
	line-height: 40px;
	color: var(--secondary-text-color);
	font-weight: 500;
}

#productInfo hr{
	margin: 2rem 0px;
}

/************ stores locator ***************/

#locator{
	margin-top: -30vh;
}

#map, .list_store{
  height: 80vh;
}

.list_store{
	overflow-y: auto;
	overflow-x: hidden;
}

.list_store .single_store{
	border-bottom: 1px solid #E5E5E5;
}

.list_store .store_company{
	font-size: var(--regular-text-size);
	font-weight: 600;
	color: var(--main-text-color);
}

.list_store .store_address{.meta a
	font-size: var(--secondary-text-size);
	line-height: 1;
	color: var(--secondary-text-color);
}

.list_store .store_contact a{
	padding-right: 20px;
	padding-left: 20px;
/* 	font-size:  var(--primary-text-size); */
	width: 100%;
}

/************ posts index ***************/

#postsLoop{
	margin-top: -30vh;
}

.postLoop .thumb img{
  object-fit: none; /* Do not scale the image */
  object-position: center; /* Center the image within the element */
  width: 100%;
  min-height: 400px;
  margin-bottom: 1rem;
}

.postLoop .meta{
	line-height: 1;
	font-style: var(--paragraph-text-size);
}

.postLoop .meta a{
	color: var(--dark-blue-color);	
	font-weight: 600;
	font-style: var(--paragraph-text-size);
}

/************ posts view ***************/

#postImage{
	margin-top: -30vh;
}

#postContent p{
	font-size: var(--regular-text-size);
	  line-height: 40px;
	  color: var(--secondary-text-color);
	  font-weight: 300;
}


/************ customers gender ***************/

#customerTable{
	margin-top: -200px;
}


/************ other ***************/

h4{
	font-size: var(--medium-text-size);
}

.vedisubmit{
	display:none;
}

section#services {
	padding-top: 50px;
}

#news {
	margin-top: 200px !important;
}


/************ services shop ***************/

.servicesList{
	display: flex;
	flex-direction: row;
}



#userList img{
	border-radius: 25px;
	position: relative;
	top: 10px;
}

.mbsc-datepicker-tab-calendar, .mbsc-datepicker-tab-timegrid{
	width: 50% !important;
	min-height: 350px !important;
}

.mbsc-ios.mbsc-datepicker-inline{
	background: none !important;
	border: none !important;
}

#serviceConfirm{
	display: none;
}

/*
.checkService{
	width: 70px;
}
*/

/************ services checkout ***************/

.order-info table thead tr th{
	border-bottom: 1px solid #474747;
	font-size: var(--secondary-text-size);
	border-radius: 0px !important;
	color: var(--secondary-text-color);
	border-top: 0px !important;
	border-left: 0px !important;
	border-right: 0px !important;
	padding: 0px !important;
	height: 30px;
}

.user-info label.radio-button{
	float: left;
	width: 45%;
}

.user-info .companyfield{
	display: none;
}

.mbsc-ios.mbsc-timegrid-item.mbsc-selected{
	border-radius: 8px !important;
}

/************ responsive ***************/

@media only screen and (max-width: 576px) {
	
	#userList img{
		margin-top: 0px;
	}
	
	.container{
		padding-left: 1.75rem;
		padding-right: 1.75rem;
	}
	
	section #homeForm{
		width: 100%;
		height: 450px;
		position: relative;
		margin-top:20px;
	}
	
   #carousel .carousel-control-next{
	   top:24%;
	   width: 56px;
   }
   
   #carousel .carousel-indicators{
	   margin-left: 9px;
	   margin-bottom: 297px;
	   z-index:1;
	   position: absolute;
	   top: 0px;
	   margin-right: 25px;
   }
   
   #carousel .carousel-indicators [data-bs-target] {
	  width: 33%;
	  height: 5px;
	  border-radius: 11px;
	}
   
   #carousel .carousel-item{
	   padding: 0% 0% 0% 0%;
	   min-height: 600px;
   }
   
   #carousel .carousel-item .carousel-caption{
	   top: 265px;
	   position: absolute;
	   padding: 0px 5%;
   }
   
   .centri-estetici{
	  text-align: left !important; 
	  background-image: url(/ipc/img/ipc-promotion-stores.jpg);
	  background-repeat: no-repeat;
	  background-size: cover;
	  padding-top:200px;
	  background-position: center;
	  border-radius:8px;
   }
   
   .text-end-footer img {
	   margin-top:20px;
   }
   
   #carousel .carousel-item .carousel-caption h5{
	   font-size: var(--big-text-size);
	   line-height: 1;
	   position:absolute;
	   padding-top: 20px;
   }
   
   .carousel-caption{
	   position: relative;
	   padding-bottom:0px;
   }
   
   #carousel .carousel-item .carousel-caption p {
	   margin-top: 215px;
   }
   
   #carousel .carousel-item .carousel-caption p a {
		  color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,1));
	}
	  
   
   #carousel .carousel-control-prev{
	   width: 56px;
	   top: 10%;
	}
   
   #payoff p{
	   font-size: var(--secondary-text-size);
	   line-height: 2;
   }
   
   .featured {
	   font-size:  var(--medium-text-size);
	   line-height: 50px;
   }
   
   .p-5{
	   padding:1rem !important;
   }
   
   section#counter h3{
	   text-align:left;
   }
   
   .promotion .col-4 {
	   width: 100%;
	}
	
	.promotion .btn {
		text-align: center;
		width: 100%;
		margin-top:50px;
	}
   
   #stores .row{
	   flex-direction: column-reverse;
    }
	
	section#stores .promotion {
		background-image:none;
    }
    
    section.ambassador-register .ambassador{
		min-height: 400px;
	}
    
    section.ambassador-register .ambassador h3{
		font-size: var(--regular-text-size);
	}	
	
	 section.ambassador-register .ambassador a.btn{
		width: 100%;
	}
	
	.veditutti{
		display:none;
	}
   
   .vedisubmit{
	   display:block;
	   margin-top: 20px;
	   width: 100%;
   }
   
   #contactForm .col .row {
	   flex: none;
   }
   
   #contactForm .row > *{
	   padding: 0px !important;
   }
   
   #contactForm .row {
		display: block;
		padding-left: 1rem;
		padding-right: 1rem;
	  }
	  
	.form-group {
		margin-bottom:0px;
	}
	
	#bottomFooter .col-7 {
		width: 100%;
	}
	
	#bottomFooter .col-3 {
		width: 100%;
	}
	
   #bottomFooter h3 {
	   font-size: var(--big-text-size);
   }
   
   form#newsletterForm{
	   margin-top:50px;
   }
   

   
   .form-check{
	   margin-top:10px;
   }
   
   .col-2 {
	   width: 100%;
   }
   
   .heroTitle .text-end {
		text-align: left !important; 
		margin-top: 10px;
	  }
   
   .text-end img {
	   margin-top:20px;
   }
   
   .heroTitle .text-end img {
		  margin-top:0px;
	  }
   
   #bottomFooter ul {
	   padding-left: 0rem;
   }
   
   
   #hero h3{
	   font-size: var(--headline-text-size);
   }
   
   body.body-blue #hero .container{
       background-image: url('/ipc/img/telemedicina-mobile.png');
	   margin-top:50px;
	   background-size: 95% auto;
	   background-position: top;
	   height: 30px;
	   padding-left: 20px;
   }
   
   body.body-gradient #hero .container.estetica{
       background-image: url('/ipc/img/estetica-mobile.png');
	   margin-top:50px;
	   background-size: 95% auto;
	   background-position: top;
	   height: 30px;
	   padding-left: 20px;
   }
   
   body.body-gradient #hero .container.ambassador{
       background-image: url('/ipc/img/ambassador-mobile.png');
	   margin-top:50px;
	   background-size: 95% auto;
	   background-position: top;
	   height: 30px;
	   padding-left: 20px;
   }
   
   body.body-orange #hero .container {
	  background-image: url('/ipc/img/nutraceutici-mobile.png');
		 margin-top:50px;
		 background-size: 95% auto;
		 background-position: top;
		 height: 15px;
		 padding-left: 20px;
   }
   
   body.body-orange #hero{
		  background-image:none;
		  background-color: var(--neutraceutici-color);
		 
	  }
	  
   body.body-blue #hero{
	   background-image:none;
	   background-color: var(--blue-color);
	  
   }
   
   h3.white.mt-5.telemedicina {
	   padding-top:100px;
   }
   
   .col{
	   flex: none;
   }
   
   h3.white.featured{
	   padding-top:50px !important;
   }
   
   #payoff h3{
       padding-left: 0px;
   }
   
   .formestetica{
	   padding:20px;
	   padding-left: 50px;
   }
   
   section#topFooter, section#topFooter.ambassador-footer {
	   background: #f4f7fc;
   }
   
   
   #mybutton{
	   width: 100%;
   }
   
   section#features .promotion{
	   background:none;
   }
  
  .senza-glutine{
	   background-image: url(/ipc/img/restyling/home/section-gluten-free.jpg);
	   min-height: 150px;
	   background-size: cover;
	   background-position: center center;
	   width: 100%;
	   padding-top:250px;
   }
   
   section#services {
	   padding-top: 0px;
   }
   
   .nutraceutici{
	   margin-top: 250px !important;
   }
   
   #news {
	   margin-top:0px !important;
   }
   
   .big-folder .subtop .square{
	   width: 200px;
   }
   
   .productLoop{
	   margin-bottom:30px;
   }

/*
   #banner img{
	   display:none;
   }
*/
   
   .navbar-collapse {
   
	   background: rgb(21,199,166);
	   background: -moz-linear-gradient(45deg, rgba(21,199,166,1) 0%, rgba(87,167,207,1) 33%, rgba(182,155,254,1) 66%, rgba(146,255,198,1) 100%);
	   background: -webkit-linear-gradient(45deg, rgba(21,199,166,1) 0%, rgba(87,167,207,1) 33%, rgba(182,155,254,1) 66%, rgba(146,255,198,1) 100%);
	   background: linear-gradient(45deg, rgba(21,199,166,1) 0%, rgba(87,167,207,1) 33%, rgba(182,155,254,1) 66%, rgba(146,255,198,1) 100%);
	   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#15c7a6",endColorstr="#92ffc6",GradientType=1); 
	   padding:0px !important;
	   color:black;
	   z-index: 100;
	   margin-left: -15px;
	   margin-right: -15px;
   }
   
   body.body-orange nav .navbar-nav .nav-link {
	   color: var(--main-text-color);
   }
   
   body.body-orange nav .navbar-nav .nav-item.active{
	   border-bottom: 2px solid black;
   }
   .navbar>.container {
	   width: 100%;
   }
   
   #counter .col-md-7, #counter .row{
	   border: none !important;
   }
   
   .count{
	   font-size: 100px !important;
   }
   
   .btn{
	   width: 100%;
   }
   
   #products .card{
	   margin-bottom: 1rem;
   }
   
/*
   #products > .container > .row{
	   flex-direction: column-reverse;
   }
*/
   
   .senza-lattosio .folder .content{
	   background-color: var(--heavenly-color) !important;
   }
   
   .senza-lattosio .folder .top .square{
   		background-color: var(--heavenly-color) !important;
   }
   
   .senza-lattosio .folder .top .triangle{
   		   border-color: transparent transparent transparent var(--heavenly-color); !important;
   }
   
   .folder .content h4{
	   font-size: 25px;
   }
   
   #footerRow{
	   display: flex;
	   flex-direction: row-reverse;
   }
   
   #footerRow .col-6, #footerRow .col-12{
	   margin-top: 3rem;
   }
   
   body.body-orange #hero, body.body-blue #hero,  body.body-store #hero{
	   min-height: 80vh;
   }
   
   body.body-store #hero{
	 background-image: url('/ipc/img/ipc-method-store-mobile.jpg'); 
	 background-size: contain; 
    }
   
   .productLoop{
   		min-height: 500px;
   		background-size: contain;
   		background-position: center top;
   		background-repeat: no-repeat;
   }
   
   .productLoop .meta .col-sm-6{
	   margin-bottom: 0.5rem;
   }
   
   .productLoop .folder .content{
	   background-color: var(--heavenly-color) !important;
   }
   
   .productLoop .folder .top .square{
   		background-color: var(--heavenly-color) !important;
   }
   
   .productLoop .folder .top .triangle{
   		   border-color: transparent transparent transparent var(--heavenly-color); !important;
   }
   
   .productLoop .folder .subtop .square{
	 	font-size: 10px;
	 	line-height: 10px; 
	 	font-weight: 600; 
	}
	
	#mobileBanner .banner, #mobileBanner2 .banner{
		  height: 300px;
		  background-size: cover;
		  background-position: center;
		  margin: 0px -15px -50px;
	}
	
	#mobileBannerProduct .banner{
		  height: 300px;
		  background-size: cover;
		  background-position: center;
		  margin: 0px -15px -70px;
	}

   
   #mobileBannerProduct .meta, #mobileBannerProduct hr{
	   display: none;
   }
   
   #mobileBannerProduct .big-folder{
	   top: -110px;
   }
   
   .feature{
	   width: 90px;
	   height: 90px;
	   margin: 0 5px;;
   }
   
   .feature p{
	   font-size: 11px;
	   font-weight: 600;
	   line-height: 11px;
   }
   
   #productFeatures .col img{
	   margin-top: 3rem;
   }
   
   .secondacolonna p{
	   font-size: var(--paragraph-text-size) !important;
	   line-height: 30px !important;
   }
   
   #productGallery img{
	   margin-bottom: 10px;
   }
   
   #productVideo iframe{
	   height: 360px;
   }
   
   #storeAction{
	   background-color: black;
	   padding-bottom: 2rem;
	   margin-bottom: 0px !important;
   }
   
   #locator .chechLocator{
	   float: left;
   }
   
   body.body-store #hero{
	   background-position: center center;
   }
   
   #locator{
	   margin-top: -30vh;
	   margin-right: 1rem;
	   margin-left: 1rem;
   }
   
   #locator .chechLocator label{
		font-size: 18px;   
   }
   
    #locator .row  > *{
	    padding-left: 0px;
	    padding-right: 0px;
    }
    
    #locator .form-group{
	    padding-left: 0px !important;
	    padding-right: 0px !important;
    }
    
    #locator .map{
	    display: none;
	    /*visibility: hidden;*/
    }
    
    .list_store .store_contact a {
	  padding-right: 20px;
	  padding-left: 20px;
	  width: 99%;
	  margin-left: 1%;
	}
	
	#postsLoop .thumb img{
		min-height: 300px;
		width: 300px;
		height: 300px;
	}
	
	#postContent h2{
		font-size: 35px;
	}
	
	#postContent .container .row > div{
		padding: 0 1rem !important;
	}
	
	.big-folder .subtop{
		width: 295px;
	}
	
	.big-folder .subtop .rectangle{
		min-width: 100px;
	}
	
	.folder .content{
		padding: 15px;
	}
	
	
	#userListContainer, #userSlotsContainer{
		margin: 0px !important;
		padding: 10px !important;
	}
	
	#userSlotsContainer, #userBookingCOntainer{
		margin: 0px !important;
		padding: 0px !important;
	}
	
	.half-column{
		width: auto !important;
	}
	
	.mbsc-datepicker-tab, .mbsc-datepicker-tab{
		width: 100% !important;
	}
	
	.serviceUser img{
		position: relative;
		top: -10px;
	}
	
	.serviceUser p{
		text-align: left !important;
	}
	
	#why #why-reason{
		padding:2rem !important;
	}
	
	#postRelated .btn{
		margin-bottom: 2rem;
	}
	
}

@media screen and (max-width: 1919px) and (min-width: 1200px) {
	
	.big-folder .subtop{
		width: 575px;
	}
	
	.big-folder .subtop .rectangle{
		min-width: 120px;
	}
	
}


/************ pages ambassador ***************/

.testimonials_all a.blu{
	color: #009cde;
	text-decoration: none;
}


.testimonials_all.centri .testimonial-preview{
	width: 100%;
	min-height: 400px;
	margin-bottom: 2vh;
	position: relative;
	background-size: cover;
	cursor: pointer;
}

.testimonials_all.centri .main-inner{
	height: 85vh;
	overflow-y: auto;
	overflow-x: hidden;
}

@media screen and (max-width: 992px) {
	
	.testimonials_all.centri .main-inner{
		
		height: 100%;
		overflow: hidden;
		width: 100%;
		padding: 30px 0px 12vh;
		
	}
	
}

.testimonials_all .testimonial-preview{
	width: 100%;
	min-height: 400px;
	border-radius: 8px;
	background-position: center 10%;
	cursor: pointer;
	background-size: cover;
	position: relative;
}

.testimonials_all.testimonials_list .testimonial-preview{
	margin-bottom: 30px;
}

#videoModalSecond .modal-content, #videoModalFirst .modal-content{
	background: transparent;
	border: none;
}

#videoModalSecond .modal-body, #videoModalFirst .modal-body{
	padding: 0px;
}

#videoModalSecond .btn-close, #videoModalFirst .btn-close{
	background-color: white;
	border-radius: 50px;
}


@media screen and (max-width: 992px) {
	
	.testimonials_all .testimonial-preview{
		height: 400px;
		top: 5vh;
		position: relative;
	}
	
	.testimonials_all .owl-item.active.center .testimonial-preview{
		height: 50vh;
		top: 0;
	}
	
	.testimonials_all .main-inner{
		padding: 0;
		/*margin: 0 -25px;*/
	}
	
	.testimonials_all .list_title{
		padding: 0px 60px 10px;
	}
	
	.testimonials_all .list_title .col-xs-6:first-child{
		text-align: left !important;
	}
	
	.owl-stage{
		min-height:500px;
	}
	
}

.testimonials_all .testimonial-preview:hover{
	-webkit-box-shadow: 5px 5px 15px -10px rgba(0,0,0,0.5); 
	box-shadow: 5px 5px 15px -10px rgba(0,0,0,0.5);
}

.testimonials_all .testimonial-preview-inner{
	height: 100%;
	width: 100%;
	position: absolute;
	display: flex;
	flex-direction: column;
	top:0;
	bottom:0;
	background: rgb(2,0,36);
	background: linear-gradient(0deg, rgba(2,0,36,0.3575630935968137) 0%, rgba(255,255,255,0) 44%);
	border-radius: 8px;
}

.testimonials_all .testimonial-preview-inner > div{
	width: 100%;
	align-content: space-between;
	height: 33%;
	padding: 10px;		
	color: white;
}

.testimonials_all .testimonial-timing{
	text-align: center;
	display: flex;
	justify-content: end;
	text-align: right;
}

.testimonials_all .testimonial-name{
	display: flex;
	justify-content: start;
	text-align: left;
	align-items: end;
	color: var(--main-text-color);
	line-height: 1;
 background: rgb(255,255,255);
background: -moz-linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
background: -webkit-linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#ffffff",GradientType=1);
	position: relative;
	bottom: -10px;
}

.testimonials_all .testimonial-name p{
	line-height: 1;	
}

.testimonials_all .testimonial-play{
	text-align: center;
	display: flex;
	align-content: center;
	justify-content: center;
	align-items: center;
}

.testimonials_all .testimonial-play img{
	width: 15px !important;
	height: 17px;
}

.single_testimonial{
	background-color: transparent;
}

.single_testimonial main{
	padding: 0px;
}

.testimonials_all .fancybox-close-small{
	top: 0px;
	left: 0px;
}

.testimonials_all .fancybox-iframe, .testimonials_all .fancybox-slide--iframe .fancybox-content{
	background-color: transparent;
}


.testimonials_all .fancybox-slide{
	padding: 0px;
}

.testimonials_all .carousel-button img{
	width: 30px;
	height: 30px;
}

.single_testimonial #data-section{
	background-color: #f4f7fc;
	height: 100vh;
	position: absolute;
	right: 0;
	padding: 0px;
}

.single_testimonial #data-section .service_form{
	margin-bottom: 1vh;
}

.single_testimonial #data-section .testimonial_title {
	padding: 2.5% 5% 0px;
	background-color: white;
}

.single_testimonial #data-section .testimonial_title h2{
	font-size: 24px;
	color: #2c2c34;
	margin-top: 0px;
}

.single_testimonial #data-section .testimonial_title small{
	color: #666666;
	font-size: 14px;
}

.single_testimonial #data-section .testimonial_info{
	color: #666666;
	padding: 1% 5% 3%;
	font-size: 11px;
	background-color: white;
}

.single_testimonial #data-section .testimonial_center_info{
	background-color: #f4f7fc;
	padding: 1% 7.5%
}

.testimonial_center_info .service_todo{
	border-top: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
	margin: 2vh 0px;
	padding: 1vh 0;
	display: flex;
}

.testimonial_center_info .service_todo > div{
	background-color: white;
	border-radius: 20px;
	width: 100%;
	padding: 20px;
	font-size: 14px;
}

.single_testimonial #video-section{
	text-align: center;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	height: 100%;
	position: absolute;
	
}

.single_testimonial #video-section iframe{
	border-radius: 20px;
}

@media screen and (max-width: 992px) {
	
	.single_testimonial #video-section, .single_testimonial #data-section{
		
		position: relative !important;
		width: 100%;
			
	}
	
	.single_testimonial #video-section{
		padding: 20px;
	}
	
}

#eventModal .modal-body{
	padding: 0px;
	display: flex;
	background-color: white;
}

#eventModal .modal-dialog {
        max-width: 90%; /* Massima larghezza della modale */
        width: auto !important; /* Imposta larghezza automatica */
      }
#eventModal .modal-content {
        max-height: 80vh; /* Massima altezza della modale */
        overflow-y: auto; /* Aggiunge barra di scorrimento verticale */
      }
	  
#eventModal h2{
	font-size: 50px; 
	line-height: 45px;
}

@media only screen and (max-width: 768px) {
#eventModal .modal-body {
	display: block ;
}

#eventModal .eventContainer{
	margin: 0 !important;
}
.imgContainer img{
	display: none;
}
.imgContainer {
   //background-color:black;
   background: url(/ipc/img/5-congresso-medico-ipc-method-2026.jpg);
   background-position: center;
   background-size: cover;
   min-height: 40vh;
}
.congress h2{
	font-size:29px;
	font-weight: 500;
	margin-bottom:0px;
}

#eventModal h2{
	font-size:26px;
	font-weight: 500;
	margin-bottom:0px;
}

.congress h4{
	font-size:24px;
}
.pdf2 img{
	margin-left:20px;
}
.pdf.col-md-2.ms-3.align-items-md-end.text-center {
	height: 20% !important;
	margin-left: 0px !important;
	margin-top:10px !important;
	margin-bottom:10px;
}
.download {
	margin-top:0px;
}
.ticket {
	margin-bottom:30px;
	position: fixed;
	top:90%;
	width: 75% !important;
}
#eventModal .modal-dialog{
	max-width:100% !important;
	margin:0 !important;
}
.chiudi{
	position:fixed !important;
	z-index:10;
	top:30px;
	right:15px;
	font-weight: 600;
}
.pdf2{
	display:flex;
}

p.download.mt-5 {
	margin-top: 0px !important;
	margin-left: 10px;
	padding-top: 20px;
}
.calendario{
	width:20%;
}
.data{
	width:70%;
}
.testo{
	margin-bottom:110px;
}
}

nav .nav-link:hover{
	color: var(  --main-text-color);
}

.dropdown-menu[data-bs-popper]{
	top: 80%;
	left: 0;
	margin-top: var(--bs-dropdown-spacer);
	border: none;
	box-shadow: 2px 2px 4px #b9b9b9;
}

/****** subscription *******/
#subscription{
	background: url('/ipc/img/5-congresso-estetica-professionale-ipcmethod.jpg') rgb(244,247,252);
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 40% 100%;
}

@media (min-width: 992px) {

	body.modal-open {
		overflow: hidden !important;
		padding-right: 0 !important;
	}
	#eventModal {
		overflow: hidden !important;
	}
	#eventModal .ipc-event-dialog {
		max-width: 1430px;
		width: calc(100vw - 120px);
		height: calc(100vh - 40px);
		margin-top: 20px;
		margin-bottom: 20px;
	}
	#eventModal .ipc-event-content,
	#eventModal .modal-body {
		height: 100%;
		max-height: 750px;
		overflow: hidden !important;
		background: transparent !important;
		border: 0 !important;
		box-shadow: none !important;
	}
	#eventModal #subscription {
		height: 100%;
		max-height: 100%;
		overflow: hidden !important;
	}
	#eventModal #subscription > .container,
	#eventModal #subscription > .container > .row {
		height: 100%;
		max-height: 100%;
	}
	#eventModal #subscription .col-md-7 {
		height: 100%;
		max-height: 100%;
		overflow: hidden !important;
		padding-top: 20px !important;
		padding-bottom: 20px !important;
	}
	#eventModal #contactForm {
		padding-bottom: 15px !important;
	}
	#eventModal #contactForm .mt-3 {
		margin-top: 12px !important;
	}
	#eventModal #contactForm .mt-6 {
		margin-top: 12px !important;
	}
	#eventModal #contactForm .form-control {
		min-height: 46px;
		height: 46px;
	}
	#eventModal #contactForm label {
		margin-bottom: 6px;
	}
	#eventModal h3 {
		font-size: 31px;
		line-height: 1.1;
	}
	#eventModal h4 {
		font-size: 27px;
		line-height: 1.15;
		margin-bottom: 12px;
	}
	#eventModal p {
		margin-bottom: 12px;
	}
}
@media (max-width: 991px) {
	#eventModal .ipc-event-dialog {
		width: calc(100vw - 30px);
		max-width: calc(100vw - 30px);
		margin-left: auto;
		margin-right: auto;
	}
	#eventModal .modal-body {
		overflow-y: auto;
	}
}

#eventModal .modal-body {
	position: relative;
}

#eventModal .ipc-modal-close {
	position: absolute;
	top: 15px;
	right: 15px;
	z-index: 20;
	width: 36px;
	height: 36px;
	border: 0;
	border-radius: 50%;
	background: #000;
	color: #fff;
	font-size: 28px;
	line-height: 32px;
	font-weight: 300;
	text-align: center;
	padding: 0;
	margin: 0;
	cursor: pointer;
}

#eventModal .ipc-modal-close:hover {
	background: #333;
	color: #fff;
}


@media only screen and (max-width: 768px) {

	#subscription{
		background:rgb(244,247,252);
		background-position: left center;
		background-repeat: no-repeat;
		background-size: 40% 100%;
	}
	
	#subscription h3{
		font-size: var(--regular-text-size);
		line-height: 1.1;	
	}

}

#eventModal .form-group{
	margin-bottom: 0px !important;
}

/* Responsive congress subscription modal */
#eventModal .ipc-event-dialog {
	width: min(1180px, calc(100vw - 48px));
	max-width: 1180px;
	margin: 24px auto;
}

#eventModal .ipc-event-content {
	max-height: calc(100dvh - 48px);
	overflow: hidden;
	border-radius: 18px !important;
	background: #f4f7fc !important;
}

#eventModal .modal-body,
#eventModal #subscription,
#eventModal #subscription > .container,
#eventModal #subscription > .container > .row {
	min-height: 0;
}

#eventModal .modal-body {
	display: block;
	max-height: calc(100dvh - 48px);
	overflow: hidden !important;
	background: #f4f7fc;
}

#eventModal #subscription {
	display: flex;
	height: calc(100dvh - 48px);
	max-height: calc(100dvh - 48px);
	background: #f4f7fc;
}

#eventModal #subscription > .container {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	max-width: none;
	padding: 0;
}

#eventModal .ipc-event-header {
	flex: 0 0 auto;
	padding: 24px 64px 18px 28px;
	background: #f4f7fc;
}

#eventModal .ipc-event-header h3 {
	font-size: clamp(28px, 2.4vw, 38px);
	line-height: 1.05;
}

#eventModal .ipc-event-header h4 {
	margin: 3px 0 8px;
	font-size: clamp(22px, 1.9vw, 30px);
	font-weight: 500;
	line-height: 1.1;
}

#eventModal .ipc-event-warning {
	max-width: 980px;
	margin: 0;
	color: red;
	font-weight: 700;
	line-height: 1.15;
}

#eventModal #subscription > .container > .ipc-event-main {
	flex: 1 1 auto;
	height: auto;
	max-height: none;
	min-height: 0;
	margin: 0;
	align-items: stretch;
	overflow: hidden;
}

#eventModal .ipc-event-image {
	min-height: 0;
	height: 100%;
	background-image: url('/ipc/img/5-congresso-estetica-professionale-ipcmethod.jpg');
	background-color: #fff;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: contain;
}

#eventModal #subscription .ipc-event-form {
	height: 100%;
	max-height: 100%;
	overflow-y: auto !important;
	padding: 18px 44px 24px !important;
	scrollbar-gutter: stable;
}

#eventModal #contactForm {
	padding-right: 0 !important;
	padding-bottom: 0 !important;
}

#eventModal .ipc-event-submit {
	margin-top: 14px;
}

#eventModal .ipc-event-submit .btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 52px;
	padding: 12px 18px;
	line-height: 1.2;
	white-space: nowrap;
}

@media (max-width: 991.98px) {
	#eventModal .ipc-event-dialog {
		width: calc(100vw - 32px);
		max-width: calc(100vw - 32px);
		margin: 16px auto;
	}

	#eventModal .ipc-event-content,
	#eventModal .modal-body,
	#eventModal #subscription {
		max-height: calc(100dvh - 32px);
	}

	#eventModal .ipc-event-header {
		padding: 20px 58px 15px 22px;
	}

	#eventModal #subscription .ipc-event-form {
		padding: 16px 26px 22px !important;
	}
}

@media (max-width: 767.98px) {
	#eventModal .ipc-event-dialog {
		width: calc(100vw - 20px);
		max-width: calc(100vw - 20px);
		margin: 10px auto;
	}

	#eventModal .ipc-event-content,
	#eventModal .modal-body {
		max-height: calc(100dvh - 20px);
		border-radius: 14px !important;
	}

	#eventModal .modal-body {
		overflow-y: auto !important;
	}

	#eventModal #subscription {
		display: block;
		height: auto;
		max-height: none;
	}

	#eventModal #subscription > .container {
		display: block;
		height: auto;
	}

	#eventModal .ipc-event-header {
		padding: 20px 54px 16px 18px;
	}

	#eventModal .ipc-event-warning {
		font-size: 14px;
		line-height: 1.2;
	}

	#eventModal #subscription > .container > .ipc-event-main {
		display: flex;
		overflow: visible;
	}

	#eventModal .ipc-event-image {
		width: 100%;
		min-height: 0;
		height: auto;
		max-height: none;
		aspect-ratio: 1143 / 1600;
		background-position: center top;
		background-size: 100% auto;
	}

	#eventModal #subscription .ipc-event-form {
		width: 100%;
		height: auto;
		max-height: none;
		overflow: visible !important;
		padding: 22px 20px 24px !important;
	}

	#eventModal h3 {
		padding-right: 40px;
		font-size: clamp(23px, 7vw, 30px);
	}

	#eventModal h4 {
		font-size: clamp(19px, 5.5vw, 24px);
	}

	#eventModal #contactForm > .row > .col,
	#eventModal #contactForm > .row > [class*="col-"] {
		flex: 0 0 100%;
		width: 100%;
	}

	#eventModal #contactForm .mt-6,
	#eventModal #contactForm .mt-3 {
		margin-top: 12px !important;
	}

	#eventModal .ipc-modal-close {
		position: fixed;
		top: 18px;
		right: 18px;
	}
}

@media (max-width: 379.98px) {
	#eventModal .ipc-event-image {
		height: auto;
	}

	#eventModal #subscription .col-md-7 {
		padding: 18px 15px 22px !important;
	}

	#eventModal .ipc-modal-close {
		top: 14px;
		right: 14px;
		width: 32px;
		height: 32px;
		font-size: 24px;
		line-height: 28px;
	}
}


/************** validazioni cliniche *************/


.report-table{
  width:100%;
  border-collapse:collapse;
  table-layout:fixed;
}
.report-table th,
.report-table td{
  border:1px solid #e6e6e6;
  padding:18px 20px;
  vertical-align:top;
  font-size: var(--regular-text-size);
  font-weight: 300;
  color: black;
}



.report-table td p{
	font-size: var(--regular-text-size);
	font-weight: 300;
}

.report-table th{
  width:28%;
  font-weight:300;
  background:white;
  text-align:left !important;
}
.report-table td{
  font-weight:300;
  background: white;
}
.report-table .multiline p{
  margin:0 0 .35rem 0;
}


#accordionResearch .accordion-item button{
	border: none;
	box-shadow: none;
	font-size: var(--medium-text-size);
}

/* .accordion-image { aspect-ratio: 16/10; width:100%; height:auto; } */

.accordion-header { scroll-margin-top: 80px; }  /* adatta 80px alla tua navbar */

/* versione compatta su schermi piccoli */
@media (max-width:720px){
  .report-table, .report-table tbody, .report-table tr, .report-table th, .report-table td{
	display:block;
	width:100%;
  }
  .report-table th{
	border-bottom:none;
	background:transparent;
	padding:14px 0 4px;
  }
  .report-table td{
	border-top:none;
	padding:0 0 14px;
  }
  .report-table tr{
	border-top:1px solid #e6e6e6;
	padding-top:10px;
	margin-top:10px;
  }
  
  #accordionResearch .accordion-item button{
	  border: none;
	  box-shadow: none;
	  font-size: var(--regular-text-size);
  }
}


#accordionResearch .accordion-item{
	border: none;
}



/* Freccia nera di default */
.accordion-button::after {
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  margin-left: auto;
  content: "";
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-size: 1.25rem;
  transition: transform .3s ease;
}

/* Freccia bianca quando aperto */
.accordion-button:not(.collapsed)::after {
  transform: rotate(-180deg);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.accordion-button:not(.collapsed){
	background-color: black;
	color: white;
}

.accordion-button{
	background-color: rgb(244,247,252);
}

.accordion-image{
	max-width: 100%;
}

#accordionResearch
.table-responsive, #introResearch
.table-responsive  {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

#accordionResearch
.table, #introResearch
.table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

#accordionResearch
.table th, #accordionResearch .table td, #introResearch
.table th, #introResearch .table td {
  border: 1px solid #dcdcdc;
  padding: 8px 12px;
  //text-align: center;
  vertical-align: middle;
  white-space: nowrap; /* evita che i valori si spezzino */
}

#accordionResearch
.table th.text-start, #introResearch
.table th.text-start {
  text-align: left;
  font-weight: 600;
  background-color: #fff;
  white-space: normal; /* permette il ritorno a capo con <br> */
}

#accordionResearch
.table thead th, #introResearch
.table thead th {
  font-weight: 600;
  background-color: #fff;
  text-align: center;
}

#accordionResearch
.table tbody tr:nth-child(odd), #introResearch
.table tbody tr:nth-child(odd) {
  background-color: #fff;
}

#accordionResearch
.table tbody tr:nth-child(even) {
  background-color: #fff;
}

#accordionResearch
.table td strong {
  font-weight: 600;
  color: #000;
}

#accordionResearch h3, .report-table{
	margin-bottom: 3rem;
	margin-top: 3rem;
}

#accordionResearch p{
	margin-bottom: 1rem;	
}

#accordionResearch .accordion-collapse{
	padding-top: 3rem;
}

#accordionResearch table caption{
	margin-top: 1rem;
}

#accordionResearch .accordion-body{
	padding: 0px !important;
}

/* Stile specifico per questa tabella */
#lipid-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 15px;
  line-height: 1.45;
  min-width: 640px;       /* forza lo scroll su schermi piccoli mantenendo la forma tabellare */
}

/* Header */
#lipid-table thead th {
  text-align: left;
  font-weight: 600;
  padding: 12px 14px;
  background: #ffffff;
  color: black;
  border: 0px !important;
}

/* Celle base */
#lipid-table th,
#lipid-table td {
  border: 1px solid #e4e9f1;
  padding: 12px 14px;
  vertical-align: middle;
  background: #fff;
}

/* Prima colonna: testo a sinistra, spezzamento come nello screen */
#lipid-table tbody th[scope="row"] {
  text-align: left;
  font-weight: 600;
  white-space: normal;      /* consente l'andata a capo con <br> */
  hyphens: auto;            /* abilitazione sillabazione dove supportata */
}

/* Seconda colonna con leggero sfondo grigio-azzurro */
#lipid-table td:nth-child(2) {
  text-align: center;
  background: #f5f8fc;
  white-space: nowrap;      /* valori compatti tipo 12,5 / 6,25 */
}

/* Terza colonna: numeri allineati a destra */
#lipid-table td:nth-child(3) {
  text-align: right;
  white-space: nowrap;
}

/* Migliora leggibilità su desktop ampi */
@media (min-width: 992px) {
  #lipid-table { font-size: 16px; }
}

/* Modal centrata e larga quanto serve al video verticale */
#videoModalSecond .modal-dialog, #videoModalFirst .modal-dialog {
  width: auto;               /* lascia crescere quanto serve */
  max-width: none;           /* ignora i limiti .modal-lg */
  margin: 0 auto;
}

#videoModalSecond .modal-content,#videoModalFirst .modal-dialog {
  background: transparent;   /* niente “nero” oltre il video */
  border: 0;
  box-shadow: none;
}

#videoModalSecond .modal-body, #videoModalFirst .modal-body {
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background: transparent;
}

/* Wrapper del player: rapporto 9:16, altezza max 90vh, larghezza calcolata di conseguenza */
#videoModalSecond .video-wrapper{
  aspect-ratio: 9 / 16;
  height: min(90vh, calc(90vw * 16 / 9));     /* non supera il 90% dell’altezza */
  width:  min(90vw, calc(90vh * 9 / 16));     /* e non supera il 90% della larghezza */
}


#videoModalFirst .video-wrapper {
  aspect-ratio: 16 / 9;
  height: min(90vh, calc(90vw * 9 / 16));     /* non supera il 90% dell’altezza */
  width:  min(90vw, calc(90vh * 16 / 9));     /* e non supera il 90% della larghezza */
}

/* L’iframe riempie il wrapper */
#videoModalSecond .video-wrapper iframe, #videoModalFirst .video-wrapper iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

/* Da lg (≥992px) fino a prima di xl (1199px) */
@media (min-width: 992px) and (max-width: 1199.98px) {
  nav .nav-link {
	padding: 0 5px !important;
	line-height: 1;
  }
}



/************ Google Maps InfoWindow IPC Method ***************/

/* Contenitore esterno della InfoWindow */
.gm-style .gm-style-iw-c {
	padding: 0 !important;
	margin: 0 !important;
	border-radius: 18px !important;
	background: transparent !important;
	box-shadow: none !important;
	overflow: visible !important;
}

/* Contenitore interno: aderisce alla card */
.gm-style .gm-style-iw-d {
	padding: 0 !important;
	margin: 0 !important;
	width: 330px !important;
	max-width: 330px !important;
	overflow: hidden !important;
	max-height: none !important;
	border-radius: 18px !important;
	background: transparent !important;
	box-shadow: 0 18px 45px rgba(0, 0, 0, 0.22) !important;
}

/* Header/fascia bianca standard di Google */
.gm-style .gm-style-iw-ch {
	display: none !important;
}

/* Freccia/fumetto standard di Google */
.gm-style .gm-style-iw-tc {
	display: none !important;
}

/*
NON nascondere .gm-style-iw-chr:
Google la usa anche come contenitore del bottone di chiusura.
*/

/* Forza il contenuto custom a non lasciare margini */
.gm-style .gm-style-iw-d > div {
	margin: 0 !important;
	padding: 0 !important;
	width: 330px !important;
	max-width: 330px !important;
	overflow: hidden !important;
	border-radius: 18px !important;
}

/* Bottone chiusura */
.gm-style .gm-ui-hover-effect {
	position: absolute !important;
	top: 10px !important;
	right: 10px !important;
	width: 30px !important;
	height: 30px !important;
	padding: 0 !important;
	margin: 0 !important;
	border-radius: 50% !important;
	background: rgba(255, 255, 255, 0.96) !important;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.28) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	opacity: 1 !important;
	z-index: 999 !important;
}

.gm-style .gm-ui-hover-effect:hover {
	background: #ffffff !important;
	transform: scale(1.05);
}

/* Icona X interna */
.gm-style .gm-ui-hover-effect span {
	width: 14px !important;
	height: 14px !important;
	margin: 0 !important;
	background-color: #111820 !important;
	opacity: 1 !important;
}

/* Card custom */
.ipc-info-window {
	width: 330px;
	max-width: 330px;
	margin: 0 !important;
	padding: 0 !important;
	background: #ffffff;
	font-family: inherit;
	color: #1d2329;
	border-radius: 18px;
	overflow: hidden;
}

/* Testata nera */
.ipc-info-header {
	position: relative;
	background: #111820;
	color: #ffffff;
	padding: 22px 58px 18px 24px;
	border-radius: 18px 18px 0 0;
}

.ipc-info-label {
	display: inline-block;
	margin-bottom: 8px;
	font-size: 11px;
	line-height: 1;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: rgba(255, 255, 255, 0.68);
}

.ipc-info-header h5 {
	margin: 0;
	padding: 0;
	font-size: 20px;
	line-height: 1.2;
	font-weight: 800;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: #ffffff;
}

/* 2026 home restyling */
:root {
	--home-restyling-container-edge: calc((100vw - 1140px) / 2 + 12px);
	--home-restyling-form-height: 398px;
}

body.body-home-restyling {
	background: #fff;
}

body.body-home-restyling header,
body.body-nutraceuticals-v2 header,
body.body-telemedicine-restyling header,
body.body-personal-consulting-restyling header,
body.body-advanced-aesthetics-restyling header {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 20;
	width: 100%;
}

body.body-home-restyling header nav,
body.body-nutraceuticals-v2 header nav,
body.body-telemedicine-restyling header nav,
body.body-personal-consulting-restyling header nav,
body.body-advanced-aesthetics-restyling header nav {
	background: rgba(0, 0, 0, 0.08);
}

body.body-home-restyling header nav .nav-link,
body.body-home-restyling header nav a.dropdown-toggle,
body.body-nutraceuticals-v2 header nav .nav-link,
body.body-nutraceuticals-v2 header nav a.dropdown-toggle,
body.body-telemedicine-restyling header nav .nav-link,
body.body-telemedicine-restyling header nav a.dropdown-toggle,
body.body-personal-consulting-restyling header nav .nav-link,
body.body-personal-consulting-restyling header nav a.dropdown-toggle,
body.body-advanced-aesthetics-restyling header nav .nav-link,
body.body-advanced-aesthetics-restyling header nav a.dropdown-toggle {
	color: #fff;
}

body.body-home-restyling header nav .nav-item.active,
body.body-nutraceuticals-v2 header nav .nav-item.active,
body.body-telemedicine-restyling header nav .nav-item.active,
body.body-personal-consulting-restyling header nav .nav-item.active,
body.body-advanced-aesthetics-restyling header nav .nav-item.active {
	border-bottom-color: #fff;
}

@media (min-width: 992px) {
	header nav .home-restyling-access-nav {
		margin-left: 12px;
		border-left: 1px solid rgba(255, 255, 255, 0.8);
	}

	body.body-clinical-validation header nav .home-restyling-access-nav {
		border-left-color: rgba(31, 35, 38, 0.65);
	}
}

.home-restyling-hero,
.home-restyling-hero-stage,
.home-restyling-hero .carousel,
.home-restyling-hero .carousel-inner,
.home-restyling-hero .carousel-item {
	min-height: 760px;
	height: 100vh;
}

.home-restyling-hero-stage {
	position: relative;
	overflow: hidden;
}

.home-restyling-hero .carousel-item {
	padding: 0;
}

.home-restyling-hero-image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.home-restyling-hero .carousel-item::after {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(0, 0, 0, 0.38) 0%, rgba(0, 0, 0, 0.06) 55%, rgba(0, 0, 0, 0.12) 100%);
	content: "";
}

#carousel.home-restyling-hero .carousel-item .carousel-caption {
	top: auto;
	right: auto;
	bottom: 12%;
	left: var(--home-restyling-container-edge) !important;
	z-index: 2;
	width: min(680px, 48vw);
	padding: 0;
	text-align: left;
}

.home-restyling-hero .carousel-caption h1 {
	margin: 0;
	color: #fff;
	font-size: clamp(58px, 5vw, 92px);
	font-weight: 400;
	line-height: 0.9;
	letter-spacing: 0.02em;
}

#carousel.home-restyling-hero .carousel-item .carousel-caption p {
	margin: 34px 0 0;
	color: #fff;
	font-size: clamp(17px, 1.25vw, 23px);
	font-weight: 500;
	line-height: 1.35;
}

#carousel.home-restyling-hero .carousel-item .carousel-caption a {
	color: #fff;
	font-weight: 600;
}

#carousel.home-restyling-hero .carousel-indicators {
	right: auto;
	bottom: 6%;
	left: var(--home-restyling-container-edge);
	z-index: 3;
	align-items: center;
	justify-content: flex-start;
	width: min(600px, 32vw);
	margin: 0;
}

#carousel.home-restyling-hero .carousel-indicators [data-bs-target] {
	width: 33.333%;
	height: 2px;
	margin: 0;
	border: 0;
	background-color: #fff;
	opacity: 0.8;
}

#carousel.home-restyling-hero .carousel-indicators .active {
	height: 6px;
	border-radius: 999px;
	background-color: #72baff;
	opacity: 1;
}

#carousel.home-restyling-hero .carousel-control-prev,
#carousel.home-restyling-hero .carousel-control-next {
	right: var(--home-restyling-container-edge);
	left: auto;
	z-index: 4;
	width: 82px;
	height: 64px;
	border-radius: 0;
	opacity: 1;
}

#carousel.home-restyling-hero .carousel-control-prev {
	top: auto;
	bottom: calc(6% + var(--home-restyling-form-height) + 80px);
	border-bottom: 1px solid #fff;
}

#carousel.home-restyling-hero .carousel-control-next {
	top: auto;
	bottom: calc(6% + var(--home-restyling-form-height) + 12px);
}

.home-restyling-hero .carousel-control-prev-icon,
.home-restyling-hero .carousel-control-next-icon {
	width: 22px;
	height: 32px;
	filter: brightness(0) invert(1);
}

#carousel .home-restyling-code-form {
	position: absolute;
	top: auto;
	right: var(--home-restyling-container-edge);
	bottom: 6%;
	transform: none;
	width: 360px;
	height: auto;
	min-height: 0;
	padding: 28px;
	box-shadow: 0 16px 45px rgba(15, 31, 48, 0.18);
}

@media (min-width: 1920px) {
	:root {
		--home-restyling-container-edge: calc((100vw - 1640px) / 2 + 12px);
	}
}

@media (min-width: 1400px) and (max-width: 1919.98px) {
	:root {
		--home-restyling-container-edge: calc((100vw - 1320px) / 2 + 12px);
	}
}

@media (min-width: 992px) and (max-width: 1199.98px) {
	:root {
		--home-restyling-container-edge: calc((100vw - 960px) / 2 + 12px);
	}
}

@media (min-width: 768px) and (max-width: 991.98px) {
	:root {
		--home-restyling-container-edge: calc((100vw - 720px) / 2 + 12px);
	}
}

.home-restyling-code-form h4 {
	font-size: 28px;
	line-height: 1;
}

.home-restyling-code-form .primary-text {
	font-size: 13px;
	line-height: 1.45;
}

.home-restyling-code-form input,
.home-restyling-code-form select {
	min-width: 0;
}

.home-restyling-access-link {
	display: none;
}

@media (max-width: 1199.98px) {
	:root {
		--home-restyling-form-height: 417px;
	}

	.home-restyling-hero .carousel-caption {
		bottom: 12%;
		width: 48vw;
	}

	.home-restyling-hero .carousel-caption h1 {
		font-size: clamp(48px, 6.2vw, 70px);
	}

	#carousel .home-restyling-code-form {
		width: 330px;
	}
}

@media (max-width: 767.98px) {
	body.body-home-restyling header,
	body.body-nutraceuticals-v2 header,
	body.body-telemedicine-restyling header,
	body.body-personal-consulting-restyling header,
	body.body-advanced-aesthetics-restyling header {
		position: relative;
		background: #000;
	}

	.home-restyling-hero,
	.home-restyling-hero-stage {
		height: auto;
		min-height: 0;
		overflow: visible;
	}

	.home-restyling-hero .carousel,
	.home-restyling-hero .carousel-inner,
	.home-restyling-hero .carousel-item {
		height: 68vh;
		min-height: 520px;
	}

	.home-restyling-hero .carousel-item::after {
		background: linear-gradient(180deg, rgba(0, 0, 0, 0.05) 20%, rgba(0, 0, 0, 0.58) 100%);
	}

	.home-restyling-hero-image {
		object-position: center;
	}

	.home-restyling-slide-next-generation .home-restyling-hero-image {
		object-position: 66% center;
	}

	.home-restyling-slide-patented .home-restyling-hero-image {
		object-position: 53% center;
	}

	#carousel.home-restyling-hero .carousel-item .carousel-caption {
		bottom: 62px;
		left: 28px !important;
		width: calc(100% - 56px);
	}

	.home-restyling-hero .carousel-caption h1 {
		font-size: clamp(44px, 13vw, 62px);
	}

	.home-restyling-hero .carousel-caption p {
		margin-top: 22px;
		font-size: 15px;
	}

	.home-restyling-hero .carousel-indicators {
		bottom: 26px;
		left: 28px;
		width: calc(100% - 56px);
	}

	.home-restyling-hero .carousel-control-prev,
	.home-restyling-hero .carousel-control-next {
		display: none;
	}

	#carousel .home-restyling-code-form {
		position: relative;
		top: auto;
		right: auto;
		bottom: auto;
		z-index: 5;
		transform: none;
		width: calc(100% - 40px);
		margin: -160px 20px 20px;
		padding: 26px;
	}
}

/* 2026 home intro */
#payoff.home-restyling-intro {
	margin: 0;
	padding: 100px 0 110px;
	background: #fff;
}

#payoff.home-restyling-intro h3,
#payoff.home-restyling-intro p {
	margin: 0;
	color: #292929;
	font-size: clamp(20px, 1.65vw, 30px);
	font-weight: 400;
	line-height: 1.55;
	letter-spacing: 0.01em;
}

#payoff.home-restyling-intro p + p {
	margin-top: 42px;
}

@media (max-width: 767.98px) {
	#payoff.home-restyling-intro {
		padding: 64px 0 72px;
	}

	#payoff.home-restyling-intro h3 {
		margin-bottom: 28px;
	}

	#payoff.home-restyling-intro p + p {
		margin-top: 24px;
	}
}

/* 2026 home advanced aesthetics */
#stores.home-restyling-stores {
	min-height: 0;
	margin: 0;
}

#stores.home-restyling-stores > .rainbow-section {
	padding: clamp(44px, 4vw, 76px) 0 !important;
}

#stores.home-restyling-stores .promotion {
	position: relative;
	height: clamp(360px, 34.75vw, 650px);
	min-height: 0;
	overflow: hidden;
	border-radius: 8px;
	background-image: url('/ipc/img/restyling/home/section-advanced-aesthetics.jpg');
	background-position: center;
	background-size: cover;
}

#stores.home-restyling-stores > .container-fluid > .row {
	margin-right: 0;
	margin-left: 0;
}

#stores.home-restyling-stores > .container-fluid > .row > .col {
	padding-right: 0;
	padding-left: 0;
}

#stores.home-restyling-stores .promotion::after {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(20, 16, 12, 0.24) 0%, rgba(20, 16, 12, 0) 52%, rgba(20, 16, 12, 0.12) 100%);
	content: "";
}

#stores.home-restyling-stores .promotion > * {
	position: relative;
	z-index: 1;
}

#stores.home-restyling-stores .promotion h3 {
	font-size: clamp(28px, 2.2vw, 40px);
	font-weight: 600;
	line-height: 1.25;
}

#stores.home-restyling-stores .promotion .btn {
	min-width: 220px;
	margin-top: 28px;
}

#stores.home-restyling-stores .centri-estetici p {
	font-size: 18px;
	font-weight: 500;
}

#stores.home-restyling-stores .promotion h5 {
	margin: -18px 0 -8px;
	padding: 0;
	font-size: clamp(86px, 8vw, 138px);
	font-weight: 400;
	line-height: 1;
}

/* 2026 home product features */
#features > .container {
	padding-right: 12px !important;
	padding-left: 12px !important;
}

@media (min-width: 768px) {
	section#features .promotion {
		position: relative;
		height: clamp(520px, 41.7vw, 650px);
		min-height: 0;
		justify-content: center !important;
		column-gap: 2.5%;
		background-image: none;
	}

	section#features .promotion::before {
		position: absolute;
		z-index: 0;
		inset: 0;
		background-image: url('/ipc/img/restyling/home/section-gluten-free.jpg');
		background-position: center;
		background-size: cover;
		border-radius: 8px 8px 0 0;
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 650' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M8 0H992Q1000 0 1000 8V425Q1000 455 970 468L540 637Q500 655 460 637L30 468Q0 455 0 425V8Q0 0 8 0Z'/%3E%3C/svg%3E");
		-webkit-mask-position: center;
		-webkit-mask-size: 100% 100%;
		-webkit-mask-repeat: no-repeat;
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 650' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M8 0H992Q1000 0 1000 8V425Q1000 455 970 468L540 637Q500 655 460 637L30 468Q0 455 0 425V8Q0 0 8 0Z'/%3E%3C/svg%3E");
		mask-position: center;
		mask-size: 100% 100%;
		mask-repeat: no-repeat;
		content: "";
	}

	#features .promotion > [class*="col-"] {
		position: relative;
		z-index: 1;
		width: 29%;
		padding-right: 0;
		padding-left: 0;
	}
}

#features .folder .content h4 {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	font-size: clamp(22px, 1.5vw, 24px);
	line-height: 1.15;
	white-space: nowrap;
}

#features .folder .content h4 .float-end {
	display: inline-flex;
	flex: 0 0 auto;
	float: none !important;
}

#features .folder .content h4 img {
	display: block;
	width: 28px;
	height: 28px;
	object-fit: contain;
}

#features .folder .top .square {
	width: 48px;
	height: 24px;
}

#features .folder .top .triangle {
	border-width: 24px 0 0 24px;
}

#features .folder .content {
	height: 122px;
	overflow: hidden;
	padding: 20px 24px;
}

#features .folder .content p {
	display: -webkit-box;
	overflow: hidden;
	font-size: 15px;
	line-height: 1.55;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

#features .senza-glutine .folder .bg-orange {
	background-color: #ffb536;
}

#features .senza-glutine .folder .triangle.orange {
	border-color: transparent transparent transparent #ffb536;
}

#features .senza-lattosio .folder .bg-white {
	background-color: #fff !important;
	color: #20242a;
}

#features .senza-lattosio .folder .triangle.white {
	border-color: transparent transparent transparent #fff;
}

#features .prodotto-vegano .folder .bg-green {
	background-color: #8bcd32;
}

#features .prodotto-vegano .folder .triangle.green {
	border-color: transparent transparent transparent #8bcd32;
}

/* 2026 home contact section */
#topFooter {
	background: #fff;
}

#topFooter .top-footer-image {
	background-image: url('/ipc/img/restyling/home/section-contact.jpg');
	background-position: center;
	background-size: cover;
}

#topFooter > .container > .row > .col-xl-7 {
	padding-left: 12px;
	background: #f5f7fc;
}

#topFooter > .container {
	width: 100%;
	max-width: none;
	padding-right: 0;
	padding-left: 0;
}

#topFooter > .container > .row {
	margin-right: 0;
	margin-left: 0;
}

#topFooter > .container > .row > .col-xl-7,
#topFooter > .container > .row > .top-footer-image {
	overflow: hidden;
	border: 2px solid #fff;
	border-radius: 10px;
}

@media (min-width: 768px) and (max-width: 991.98px) {
	#topFooter > .container > .row > .col-xl-7 {
		padding-left: calc((100vw - 720px) / 2 + 12px);
	}
}

@media (min-width: 992px) and (max-width: 1199.98px) {
	#topFooter > .container > .row > .col-xl-7 {
		padding-left: calc((100vw - 960px) / 2 + 12px);
	}
}

@media (min-width: 1200px) {
	#topFooter > .container > .row > .col-xl-7 {
		padding-left: calc((100vw - 1140px) / 2 - 2px);
	}

	#topFooter > .container > .row {
		display: grid;
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
		gap: 16px;
	}

	#topFooter > .container > .row > .col-xl-7,
	#topFooter > .container > .row > .top-footer-image {
		width: auto;
	}
}

@media (min-width: 1400px) {
	#topFooter > .container {
		max-width: 1640px;
		padding-right: 12px;
		padding-left: 12px;
	}

	#topFooter > .container > .row {
		margin-right: -12px;
		margin-left: -12px;
	}

	#topFooter > .container > .row > .col-xl-7 {
		width: calc(100% + ((100vw - 1640px) / 2));
		max-width: none;
		margin-left: calc((1640px - 100vw) / 2);
		padding-left: calc((100vw - 1640px) / 2 + 12px);
	}

	#topFooter > .container > .row > .top-footer-image {
		width: calc(100% + ((100vw - 1640px) / 2));
		max-width: none;
	}
}

#topFooter h3.featured {
	margin-bottom: 16px;
	font-size: clamp(32px, 2.25vw, 42px);
	line-height: 1.15;
}

/* 2026 home dark footer typography */
#bottomFooter h3 {
	font-size: clamp(88px, 7.8vw, 130px);
	font-weight: 300;
	line-height: 1;
	letter-spacing: 0;
}

#bottomFooter h4 {
	font-size: clamp(27px, 1.8vw, 32px);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0.02em;
}

@media (max-width: 767.98px) {
	#bottomFooter h3 {
		max-width: 100%;
		font-size: clamp(48px, 14vw, 62px);
		overflow-wrap: anywhere;
	}

	body.body-gradient.body-advanced-aesthetics-restyling #why-reason {
		padding: 32px 24px !important;
	}

	body.body-gradient.body-advanced-aesthetics-restyling #why-reason .headline-text {
		max-width: 100%;
		font-size: clamp(42px, 12vw, 56px);
		line-height: 1;
		overflow-wrap: anywhere;
	}
}

/* Keep clinical report tables inside the viewport without altering their data. */
body.body-clinical-validation .table-responsive {
	max-width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

body.body-clinical-validation .table-responsive > .table {
	width: 100%;
	min-width: 0;
	table-layout: fixed;
}

body.body-clinical-validation .table-responsive th,
body.body-clinical-validation .table-responsive td,
body.body-clinical-validation .table-responsive p {
	white-space: normal;
	overflow-wrap: anywhere;
	word-break: normal;
}

@media (max-width: 767.98px) {
	body.body-clinical-validation .table-responsive > .table,
	body.body-clinical-validation .table-responsive > .table > tbody,
	body.body-clinical-validation .table-responsive > .table > tbody > tr,
	body.body-clinical-validation .table-responsive > .table > tbody > tr > th,
	body.body-clinical-validation .table-responsive > .table > tbody > tr > td {
		display: block;
		width: 100%;
	}

	body.body-clinical-validation .table-responsive > .table > tbody > tr > td:first-child {
		font-weight: 600;
	}
}

@media (max-width: 991.98px) {
	body.body-clinical-validation #hero h1 {
		max-width: 100%;
		font-size: clamp(44px, 7vw, 64px);
		line-height: 1 !important;
		overflow-wrap: anywhere;
	}

	body.body-gradient.body-advanced-aesthetics-restyling #support .big-text,
	body.body-gradient.body-advanced-aesthetics-restyling #stores .big-text {
		max-width: 100%;
		font-size: clamp(42px, 7vw, 62px);
		line-height: 1;
		overflow-wrap: anywhere;
	}

	body.body-ambassador #hero h3,
	body.body-ambassador #stores .big-text {
		max-width: 100%;
		font-size: clamp(44px, 7vw, 62px);
		line-height: 1;
		overflow-wrap: anywhere;
	}
}

body.body-ambassador .owl-carousel,
body.body-ambassador .owl-stage-outer {
	max-width: 100%;
	overflow: hidden;
}

body.body-ambassador main {
	overflow-x: clip;
}

body.body-ambassador header nav a.dropdown-toggle,
body.body-ambassador header nav a.dropdown-toggle:hover,
body.body-ambassador header nav a.dropdown-toggle:focus {
	color: #fff !important;
}

/* Ambassador application section aligned with the shared 2026 footer grid. */
#topFooter.ambassador-footer {
	background: #fff;
}

#topFooter.ambassador-footer > .container > .row > .ambassador-footer-copy,
#topFooter.ambassador-footer > .container > .row > .ambassador-footer-image {
	overflow: hidden;
	border: 2px solid #fff;
	border-radius: 10px;
}

#topFooter.ambassador-footer .ambassador-footer-copy {
	padding-right: 24px;
	padding-left: 24px;
	background: #f5f7fc;
}

#topFooter.ambassador-footer .ambassador-footer-image {
	min-height: 720px;
	background-image: url('/ipc/img/ambassador-footer.jpg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

@media (min-width: 768px) and (max-width: 991.98px) {
	#topFooter.ambassador-footer .ambassador-footer-copy {
		padding-left: calc((100vw - 720px) / 2 + 12px);
	}
}

@media (min-width: 992px) and (max-width: 1199.98px) {
	#topFooter.ambassador-footer .ambassador-footer-copy {
		padding-left: calc((100vw - 960px) / 2 + 12px);
	}
}

@media (min-width: 1200px) {
	#topFooter.ambassador-footer > .container > .row {
		display: grid;
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
		gap: 16px;
	}

	#topFooter.ambassador-footer .ambassador-footer-copy {
		width: auto;
		padding-left: calc((100vw - 1140px) / 2 - 2px);
	}

	#topFooter.ambassador-footer .ambassador-footer-image {
		width: auto;
	}
}

@media (min-width: 1400px) {
	#topFooter.ambassador-footer .ambassador-footer-copy {
		padding-left: calc((100vw - 1320px) / 2 - 2px);
	}
}

@media (max-width: 1199.98px) {
	#topFooter.ambassador-footer .ambassador-footer-copy,
	#topFooter.ambassador-footer .ambassador-footer-image {
		width: 100%;
	}

	#topFooter.ambassador-footer .ambassador-footer-image {
		min-height: 520px;
	}
}

@media (max-width: 767.98px) {
	#topFooter.ambassador-footer .ambassador-footer-copy {
		padding-right: 20px;
		padding-left: 20px;
	}

	#topFooter.ambassador-footer .ambassador-footer-image {
		min-height: 340px;
		background-position: center 25%;
	}
}

#bottomFooter p,
#bottomFooter label,
#bottomFooter li,
#bottomFooter li a {
	font-size: 17px;
	line-height: 1.45;
	letter-spacing: 0.02em;
}

#newsletterForm .form-check-label,
#newsletterForm .form-check-label small {
	line-height: 1.15;
}

@media (max-width: 767.98px) {
	#stores.home-restyling-stores > .rainbow-section {
		padding: 42px 0 !important;
	}

	#stores.home-restyling-stores .promotion {
		min-height: 640px;
		background-image: url('/ipc/img/restyling/home/section-advanced-aesthetics.jpg');
		background-position: 58% center;
	}

	#stores.home-restyling-stores .promotion.row {
		flex-direction: column;
		justify-content: flex-end !important;
		padding: 28px;
	}

	#stores.home-restyling-stores .promotion .col-2 {
		display: none;
	}

	#stores.home-restyling-stores .promotion .col-4 {
		width: 100%;
		padding-bottom: 20px !important;
	}

	#stores.home-restyling-stores .centri-estetici {
		padding-top: 0;
		background: none;
		text-align: left !important;
	}
}

/* Corpo */
.ipc-info-body {
	padding: 20px 24px 8px;
	background: #ffffff;
}

.ipc-info-row {
	display: flex;
	gap: 12px;
	margin-bottom: 15px;
}

.ipc-info-icon {
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #f0f3f6;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	line-height: 1;
}

.ipc-info-row strong {
	display: block;
	margin-bottom: 3px;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #6d747c;
}

.ipc-info-row p {
	margin: 0;
	font-size: 14px;
	line-height: 1.45;
	font-weight: 600;
	color: #1d2329;
}

/* Azioni */
.ipc-info-actions {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	padding: 10px 24px 24px;
	background: #ffffff;
}

.ipc-info-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	transition: all 0.2s ease;
}

.ipc-info-btn-dark {
	background: #111820;
	color: #ffffff;
}

.ipc-info-btn-dark:hover {
	background: #000000;
	color: #ffffff;
	text-decoration: none;
}

.ipc-info-btn-light {
	background: #eef1f4;
	color: #111820;
}

.ipc-info-btn-light:hover {
	background: #dfe4e8;
	color: #111820;
	text-decoration: none;
}

/* Keep the 2026 nutraceutical hero isolated from legacy body-orange rules. */
body.body-orange.body-nutraceuticals-v2 #hero {
	min-height: 100svh;
	margin-top: 0;
	background-color: #26311f;
	background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0) 58%), url('/ipc/img/restyling/nutraceuticals/hero.jpg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

/* 2026 telemedicine hero */
body.body-blue.body-telemedicine-restyling #hero {
	position: relative;
	min-height: 100svh;
	margin-top: 0;
	padding: 0 !important;
	background-color: #293238;
	background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.04) 68%), url('/ipc/img/restyling/telemedicine/hero.jpg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

body.body-blue.body-telemedicine-restyling #hero .container,
body.body-blue.body-telemedicine-restyling #hero .heroTitle {
	min-height: 100svh;
}

body.body-blue.body-telemedicine-restyling #hero .container {
	margin-top: 0;
	margin-bottom: 0;
	background: none;
}

body.body-blue.body-telemedicine-restyling #hero .heroTitle {
	align-items: flex-end;
	padding-bottom: clamp(70px, 10vh, 118px);
}

body.body-blue.body-telemedicine-restyling #hero .telemedicine-restyling-copy {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

body.body-blue.body-telemedicine-restyling #hero h3 {
	max-width: 760px;
	margin: 0 !important;
	padding-top: 0;
	font-size: clamp(58px, 5vw, 96px);
	font-weight: 400;
	line-height: 0.9;
	letter-spacing: -0.025em;
}

body.body-blue.body-telemedicine-restyling #hero .heroSpace {
	display: none;
}

/* 2026 personal consulting hero */
body.body-servizi.body-personal-consulting-restyling #hero {
	position: relative;
	min-height: 100svh;
	margin-top: 0;
	padding: 0 !important;
	background-color: #6f4c2f;
	background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.04) 68%), url('/ipc/img/restyling/personal-consulting/hero.jpg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

body.body-servizi.body-personal-consulting-restyling #hero .container,
body.body-servizi.body-personal-consulting-restyling #hero .heroTitle {
	min-height: 100svh;
}

body.body-servizi.body-personal-consulting-restyling #hero .container {
	margin-top: 0;
	margin-bottom: 0;
	background: none;
}

body.body-servizi.body-personal-consulting-restyling #hero .heroTitle {
	align-items: flex-end;
	padding-bottom: clamp(70px, 10vh, 118px);
}

body.body-servizi.body-personal-consulting-restyling #hero .personal-consulting-restyling-copy {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

body.body-servizi.body-personal-consulting-restyling #hero h3 {
	max-width: 820px;
	margin: 0 !important;
	padding-top: 0 !important;
	font-size: clamp(58px, 5vw, 96px);
	font-weight: 400;
	line-height: 0.9;
	letter-spacing: -0.025em;
}

body.body-servizi.body-personal-consulting-restyling #hero p {
	max-width: 980px;
	margin-top: 30px;
	margin-bottom: 0;
	font-size: clamp(18px, 1.45vw, 28px);
	font-weight: 500;
	line-height: 1.3;
}

body.body-servizi.body-personal-consulting-restyling #hero .heroSpace {
	display: none;
}

body.body-personal-consulting-restyling #locator {
	margin-top: 0;
	padding-top: 50px;
}

/* 2026 advanced aesthetics hero */
body.body-gradient.body-advanced-aesthetics-restyling #hero {
	position: relative;
	min-height: 100svh;
	margin-top: 0;
	padding: 0 !important;
	background: #806547;
	background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.48), rgba(0, 0, 0, 0.03) 68%), url('/ipc/img/restyling/home/section-advanced-aesthetics.jpg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	filter: none;
}

body.body-gradient.body-advanced-aesthetics-restyling #hero .container,
body.body-gradient.body-advanced-aesthetics-restyling #hero .heroTitle {
	min-height: 100svh;
}

body.body-gradient.body-advanced-aesthetics-restyling #hero .container {
	margin-top: 0;
	margin-bottom: 0;
	background: none;
}

body.body-gradient.body-advanced-aesthetics-restyling #hero .heroTitle {
	align-items: flex-end;
	padding-bottom: clamp(70px, 10vh, 118px);
}

body.body-gradient.body-advanced-aesthetics-restyling #hero .advanced-aesthetics-restyling-copy {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

body.body-gradient.body-advanced-aesthetics-restyling #hero h3 {
	max-width: 760px;
	margin: 0 !important;
	font-size: clamp(58px, 5vw, 96px);
	font-weight: 400;
	line-height: 0.9;
	letter-spacing: -0.025em;
}

body.body-gradient.body-advanced-aesthetics-restyling #hero .heroSpace {
	display: none;
}

@media (max-width: 991.98px) {
	body.body-gradient.body-advanced-aesthetics-restyling #hero,
	body.body-gradient.body-advanced-aesthetics-restyling #hero .container,
	body.body-gradient.body-advanced-aesthetics-restyling #hero .heroTitle {
		min-height: 82svh;
	}

	body.body-gradient.body-advanced-aesthetics-restyling #hero {
		background-position: 57% center;
	}

	body.body-gradient.body-advanced-aesthetics-restyling #hero .heroTitle {
		padding-bottom: 64px;
	}
}

@media (max-width: 767.98px) {
	body.body-gradient.body-advanced-aesthetics-restyling #hero,
	body.body-gradient.body-advanced-aesthetics-restyling #hero .container,
	body.body-gradient.body-advanced-aesthetics-restyling #hero .heroTitle {
		min-height: 76svh;
	}

	body.body-gradient.body-advanced-aesthetics-restyling #hero {
		background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.64), rgba(0, 0, 0, 0.03) 72%), url('/ipc/img/restyling/home/section-advanced-aesthetics.jpg');
		background-position: 58% center;
	}

	body.body-gradient.body-advanced-aesthetics-restyling #hero .container {
		padding-right: 20px;
		padding-left: 20px;
	}

	body.body-gradient.body-advanced-aesthetics-restyling #hero .heroTitle {
		padding-bottom: 38px;
	}

	body.body-gradient.body-advanced-aesthetics-restyling #hero h3 {
		font-size: clamp(46px, 14vw, 66px);
		line-height: 0.92;
	}
}

@media (max-width: 991.98px) {
	body.body-servizi.body-personal-consulting-restyling #hero,
	body.body-servizi.body-personal-consulting-restyling #hero .container,
	body.body-servizi.body-personal-consulting-restyling #hero .heroTitle {
		min-height: 82svh;
	}

	body.body-servizi.body-personal-consulting-restyling #hero {
		background-position: 57% center;
	}

	body.body-servizi.body-personal-consulting-restyling #hero .heroTitle {
		padding-bottom: 64px;
	}
}

@media (max-width: 767.98px) {
	body.body-servizi.body-personal-consulting-restyling #hero,
	body.body-servizi.body-personal-consulting-restyling #hero .container,
	body.body-servizi.body-personal-consulting-restyling #hero .heroTitle {
		min-height: 76svh;
	}

	body.body-servizi.body-personal-consulting-restyling #hero {
		background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.64), rgba(0, 0, 0, 0.03) 72%), url('/ipc/img/restyling/personal-consulting/hero.jpg');
		background-position: 55% center;
	}

	body.body-servizi.body-personal-consulting-restyling #hero .container {
		padding-right: 20px;
		padding-left: 20px;
	}

	body.body-servizi.body-personal-consulting-restyling #hero .heroTitle {
		padding-bottom: 38px;
	}

	body.body-servizi.body-personal-consulting-restyling #hero h3 {
		font-size: clamp(44px, 13vw, 64px);
		line-height: 0.92;
	}

	body.body-servizi.body-personal-consulting-restyling #hero p {
		margin-top: 18px;
		font-size: 16px;
		line-height: 1.35;
	}

	body.body-personal-consulting-restyling #locator {
		margin-right: 0;
		margin-left: 0;
		padding-top: 28px;
	}
}

body.body-telemedicine-restyling #services .row.gx-3 {
	align-items: stretch;
}

body.body-telemedicine-restyling #services .row.gx-3 > .col {
	display: flex;
}

body.body-telemedicine-restyling #services .slot {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	width: 100%;
}

body.body-telemedicine-restyling #services .slot > p {
	flex: 1 1 auto;
}

body.body-telemedicine-restyling #services .slot > .row:last-child {
	margin-top: auto !important;
}

@media (max-width: 991.98px) {
	body.body-blue.body-telemedicine-restyling #hero,
	body.body-blue.body-telemedicine-restyling #hero .container,
	body.body-blue.body-telemedicine-restyling #hero .heroTitle {
		min-height: 82svh;
	}

	body.body-blue.body-telemedicine-restyling #hero {
		background-position: 57% center;
	}

	body.body-blue.body-telemedicine-restyling #hero .heroTitle {
		padding-bottom: 64px;
	}
}

@media (max-width: 767.98px) {
	body.body-blue.body-telemedicine-restyling #hero,
	body.body-blue.body-telemedicine-restyling #hero .container,
	body.body-blue.body-telemedicine-restyling #hero .heroTitle {
		min-height: 76svh;
	}

	body.body-blue.body-telemedicine-restyling #hero {
		background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.62), rgba(0, 0, 0, 0.04) 70%), url('/ipc/img/restyling/telemedicine/hero.jpg');
		background-position: 58% center;
	}

	body.body-blue.body-telemedicine-restyling #hero .container {
		padding-right: 20px;
		padding-left: 20px;
	}

	body.body-blue.body-telemedicine-restyling #hero .heroTitle {
		padding-bottom: 38px;
	}

	body.body-blue.body-telemedicine-restyling #hero h3 {
		font-size: clamp(46px, 14vw, 66px);
		line-height: 0.92;
	}
}

body.body-orange.body-nutraceuticals-v2 #hero .container {
	min-height: 100svh;
	margin-top: 0;
	margin-bottom: 0;
	background: none;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
	body.body-personal-consulting-restyling #locator .checkService .radio-button {
		justify-content: center;
		width: 50px;
		min-width: 50px;
		margin: 0;
	}

	body.body-personal-consulting-restyling #locator .checkService .radio-button span {
		margin-right: 0;
	}

	body.body-personal-consulting-restyling #locator .checkService {
		display: flex;
		align-items: center;
		min-width: 50px;
	}

	body.body-personal-consulting-restyling #locator .col-2:has(.checkService) {
		width: 25%;
	}

	body.body-personal-consulting-restyling #locator .col-2:has(.checkService) + .col-10 {
		width: 75%;
	}

	body.body-personal-consulting-restyling #userList .serviceUser > .row:first-child {
		align-items: center;
	}

	body.body-personal-consulting-restyling #userList .serviceUser > .row:first-child > .half-column {
		display: flex;
		flex: 0 0 auto;
		align-items: center;
		height: 50px;
		width: auto;
		padding-right: 8px !important;
		padding-left: 0 !important;
	}

	body.body-personal-consulting-restyling #userList .serviceUser .checkUser .radio-button {
		justify-content: center;
		width: 50px;
		min-width: 50px;
		margin: 0;
	}

	body.body-personal-consulting-restyling #userList .serviceUser .checkUser .radio-button span {
		margin-right: 0;
	}

	body.body-personal-consulting-restyling #userList .serviceUser > .row:first-child > .col-lg-8 {
		flex: 0 0 100%;
		width: 100%;
		margin-top: 12px;
		text-align: left !important;
	}

	body.body-personal-consulting-restyling #userList .serviceUser img {
		top: 0;
	}

	body.body-personal-consulting-restyling #userList .serviceUser p {
		text-align: left !important;
	}
}

/* Store Locator hero typography aligned with the 2026 page heroes. */
body.body-store #hero h3 {
	max-width: 1040px;
	font-size: clamp(58px, 5vw, 96px);
	font-weight: 400;
	line-height: 0.9;
	letter-spacing: -0.025em;
}

@media (min-width: 992px) {
	body.body-store #hero {
		min-height: 100svh;
		background-position: center;
		background-size: cover;
	}

	body.body-store #hero .heroTitle {
		padding-top: clamp(250px, 36vh, 310px);
	}

	body.body-store #hero .heroSpace {
		min-height: 15vh;
		margin-top: 20px;
	}
}

@media (max-width: 991.98px) {
	body.body-store #hero h3 {
		max-width: 780px;
		font-size: clamp(54px, 7vw, 72px);
	}
}

@media (min-width: 768px) and (max-width: 991.98px) {
	body.body-store #locator > .container > .row:first-child > .col-md-4,
	body.body-store #locator > .container > .row:first-child > .col-md-3 {
		width: 50%;
	}

	body.body-store #locator #findPosition {
		min-height: 50px;
		white-space: nowrap;
	}

	body.body-store #locator .list_store .store_company {
		font-size: 22px;
		line-height: 1.15;
		overflow-wrap: anywhere;
	}

	body.body-store #locator .list_store .single_store .row.gx-3 > .col-md-6 {
		width: 100%;
	}

	body.body-store #locator .list_store .store_contact {
		margin-bottom: 12px;
	}

	body.body-store #locator .list_store .store_contact a {
		min-height: 50px;
		white-space: normal;
	}
}

@media (max-width: 767.98px) {
	#postsLoop .thumb img {
		width: 100%;
		max-width: 100%;
		height: 300px;
		object-fit: cover;
	}

	#postsLoop .postLoop h4 {
		overflow-wrap: anywhere;
	}

	body.body-store #hero h3 {
		font-size: clamp(44px, 13vw, 62px);
		line-height: 0.92;
	}
}

@media (max-width: 991.98px) {
	body.body-orange.body-nutraceuticals-v2 #hero,
	body.body-orange.body-nutraceuticals-v2 #hero .container {
		min-height: 82svh;
	}

	body.body-orange.body-nutraceuticals-v2 #hero {
		background-position: 58% center;
	}
}

@media (max-width: 767.98px) {
	body.body-orange.body-nutraceuticals-v2 #hero,
	body.body-orange.body-nutraceuticals-v2 #hero .container {
		min-height: 76svh;
	}

	body.body-orange.body-nutraceuticals-v2 #hero {
		background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0) 62%), url('/ipc/img/restyling/nutraceuticals/hero.jpg');
		background-position: 61% center;
	}
}

/* Contact hero: readable grid on portrait tablets and phones. */
@media (max-width: 991.98px) {
	body.body-rainbow #hero > .container {
		max-width: none;
		padding-right: 28px;
		padding-left: 28px;
	}

	body.body-rainbow #hero .heroTitle h3 {
		font-size: clamp(72px, 14vw, 104px);
	}

	body.body-rainbow #hero .heroSpace {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 32px;
		min-height: 0;
		margin-top: 40px;
		margin-right: 0;
		margin-left: 0;
	}

	body.body-rainbow #hero .heroSpace > .col {
		width: 100%;
		padding: 0;
	}

	body.body-rainbow #hero .heroSpace > .col:last-child {
		grid-column: 1 / -1;
	}

	body.body-rainbow #hero .heroSpace p {
		overflow-wrap: anywhere;
	}
}

@media (max-width: 576px) {
	body.body-rainbow #hero .heroTitle h3 {
		font-size: clamp(64px, 20vw, 88px);
	}

	body.body-rainbow #hero .heroSpace {
		grid-template-columns: minmax(0, 1fr);
		gap: 28px;
		margin-top: 32px;
	}

	body.body-rainbow #hero .heroSpace > .col:last-child {
		grid-column: auto;
	}
}

/* 2026 responsive production follow-up: home, validation CTA and blog. */
@media (max-width: 991.98px) {
	#postsLoop > .container > .row {
		row-gap: 24px;
	}

	#postsLoop .postLoop {
		display: flex;
		flex-direction: column;
		height: 100%;
		margin-bottom: 0 !important;
	}

	#postsLoop .postLoop .thumb img {
		display: block;
		height: clamp(280px, 42vw, 420px);
		min-height: 0;
		object-fit: cover;
	}

	body.body-clinical-validation #storeAction > .container > .bg-black {
		padding: 38px !important;
	}

	body.body-clinical-validation #storeAction > .container > .bg-black > .row {
		align-items: center !important;
	}

	body.body-clinical-validation #storeAction p {
		margin-bottom: 0;
		font-size: clamp(34px, 5vw, 48px);
		line-height: 1.08;
	}

	body.body-clinical-validation #storeAction .col-md-4 {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 18px;
	}

	body.body-clinical-validation #storeAction .col-md-4 > img {
		align-self: flex-end;
		margin-bottom: 0 !important;
	}

	body.body-clinical-validation #storeAction .storeButton {
		align-items: stretch;
	}

	body.body-clinical-validation #storeAction .storeButton .btn {
		width: 100%;
		min-height: 54px;
	}
}

@media (max-width: 767.98px) {
	#products.home-products > .container,
	#features > .container {
		width: calc(100% - 40px);
		max-width: none;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	#products.home-products > .container > .row {
		margin-right: 0;
		margin-left: 0;
	}

	#products.home-products > .container > .row > [class*="col-"] {
		padding-right: 0;
		padding-left: 0;
	}

	#products.home-products > .container > .row > .col-md-9 {
		margin-top: 24px;
	}

	#products.home-products .card,
	#products.home-products .card-img,
	#products.home-products .card-img picture,
	#products.home-products .card-img picture img {
		height: 550px;
	}

	#products.home-products .card-img picture,
	#products.home-products .card-img picture img {
		display: block;
		width: 100%;
	}

	#products.home-products .card-img picture img {
		aspect-ratio: auto;
		object-fit: cover;
	}

	.home-restyling-hero .carousel,
	.home-restyling-hero .carousel-inner,
	.home-restyling-hero .carousel-item {
		height: auto;
		min-height: 650px;
	}

	#carousel.home-restyling-hero .carousel-item .carousel-caption {
		bottom: 170px;
	}

	#carousel.home-restyling-hero .carousel-indicators {
		bottom: 168px;
	}

	#carousel.home-restyling-hero .carousel-item .carousel-caption p {
		margin-top: 18px;
		line-height: 1.35;
	}

	section#features .promotion {
		position: relative;
		display: flex;
		min-height: 0;
		gap: 12px;
		margin-right: 0 !important;
		margin-left: 0 !important;
		overflow: hidden;
		padding: 170px 20px 20px !important;
		background-image: url('/ipc/img/restyling/home/section-gluten-free.jpg');
		background-position: center;
		background-size: cover;
		border-radius: 8px;
	}

	section#features .promotion::before {
		position: absolute;
		z-index: 0;
		inset: 0;
		background: rgba(255, 255, 255, 0.22);
		content: "";
	}

	#features .promotion > [class*="col-"] {
		position: relative;
		z-index: 1;
		width: 100%;
		min-height: 0;
		padding: 0 !important;
		background: none;
	}

	#features .folder .content {
		height: auto;
		min-height: 118px;
	}

	body.body-clinical-validation #storeAction {
		padding-bottom: 0;
		background: transparent;
	}

	body.body-clinical-validation #storeAction > .container {
		padding-right: 0;
		padding-left: 0;
	}

	body.body-clinical-validation #storeAction > .container > .bg-black {
		padding: 34px 28px !important;
		border-radius: 0 !important;
	}

	body.body-clinical-validation #storeAction > .container > .bg-black > .row {
		gap: 26px;
	}

	body.body-clinical-validation #storeAction p {
		font-size: clamp(32px, 9vw, 42px);
	}

	body.body-clinical-validation #storeAction .col-md-4 {
		gap: 20px;
		text-align: left !important;
	}

	body.body-clinical-validation #storeAction .col-md-4 > img {
		align-self: flex-start;
	}
}
