/*
Theme Name: Pharmaline Child Theme
Description: This is a custom child theme
Template: salient
Version: 1.0
*/

:root {
  --white: #ffffff;
  --cream: #f3eeeb;
  --blue: #012169;
  --dark-blue: #020e2b;
  --red: #c21836;
  --black: #252525;
  --dark-cream: #dfd3bf;
  --light-grey: #f9f9f9;
  --current-color: var(--white);
  --card-radius: 1.6rem;

  /* Scaling sizes
--------------------------------------------- */
  --size-unit: 16;
  --size-container-ideal: 1440;
  --size-container-min: 992px;
  --size-container-max: 1920px;

  /* // Tamaño del viewport efectivo (limitado al rango de este breakpoint) */
  --size-container: clamp(var(--size-container-min), 100vw, var(--size-container-max));

  /* Font-size resultante — proporcional al viewport/diseño */
  --size-font: calc(var(--size-container) / (var(--size-container-ideal) / var(--size-unit)));

  /* En Figma/diseño a 1440px, si un elemento mide 120px → usa 7.5em = (120 / 16 = 7.5) */
}

html {
  font-size: var(--size-font) !important;
}

::selection {
  background-color: var(--blue);
  color: var(--white);
  text-shadow: none;
}

@font-face {
  font-family: 'Source Sans Pro';
  src:
    url('/wp-content/themes/pharmaline-child/fonts/SourceSans-Regular.woff2') format('woff2'),
    url('/wp-content/themes/pharmaline-child/fonts/SourceSans-Regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Source Sans Pro';
  src:
    url('/wp-content/themes/pharmaline-child/fonts/SourceSans-Bold.woff2') format('woff2'),
    url('/wp-content/themes/pharmaline-child/fonts/SourceSans-Bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Outfit';
  src:
    url('/wp-content/themes/pharmaline-child/fonts/Outfit-Thin.woff2') format('woff2'),
    url('/wp-content/themes/pharmaline-child/fonts/Outfit-Thin.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Outfit';
  src:
    url('/wp-content/themes/pharmaline-child/fonts/Outfit-Light.woff2') format('woff2'),
    url('/wp-content/themes/pharmaline-child/fonts/Outfit-Light.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Outfit';
  src:
    url('/wp-content/themes/pharmaline-child/fonts/Outfit-Medium.woff2') format('woff2'),
    url('/wp-content/themes/pharmaline-child/fonts/Outfit-Medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Outfit';
  src:
    url('/wp-content/themes/pharmaline-child/fonts/Outfit-Bold.woff2') format('woff2'),
    url('/wp-content/themes/pharmaline-child/fonts/Outfit-Bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

.ocm-effect-wrapper,
.ocm-effect-wrapper-inner {
  padding: 0 !important;
  overflow: hidden;
}

.min_full_height-section {
  min-height: 100svh;
}
.min_full_height-section .inner_row,
.contained-section .inner_row {
  max-width: calc(1400px - 1.6rem) !important;
  margin: 0 auto !important;
}

.full-width-content .row-bg-wrap,
.full-width-content .row-bg,
.full-width-content .row-bg-wrap .inner-wrap,
.full-width-content {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

@media (min-width: 1000px) {
  .full-width-content:not(.no-padding) > .row_col_wrap_12 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .no-padding {
    padding: 0 !important;
  }

  .no-padding > .row_col_wrap_12 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .extra-padding {
    padding-right: 4vw !important;
    padding-left: 4vw !important;
    padding-bottom: 80px !important;
  }
}

@media (max-width: 1440px) {
  .min_full_height-section .inner_row {
    padding: calc(1.4rem * 2) !important;
  }
}

@media (max-width: 1000px) {
  .full-width-content:not(.no-padding) > .row_col_wrap_12,
  .no-padding > .row_col_wrap_12 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body:not(.nectar-no-flex-height).home {
    min-height: 100svh;
  }
}
@media only screen and (min-width: 1px) and (max-width: 999px) {
  body #header-outer {
    margin-bottom: 0;
    padding: 24px 0;
  }
}
@media (max-width: 698px) {
  .home-content-card {
    background-color: var(--white);
    padding: calc(1rem * 2) !important;
  }
  .min_full_height-section .inner_row {
    padding: calc(0.8rem * 2) !important;
  }

  .logo-wrapper .custom-logo-component {
    width: 40%;
  }
}

/*NAV 
---------------------------------------------*/
#top nav ul li a,
body[data-header-color='light'] .mobile-header,
body[data-header-color='light'] .span_9 > .slide-out-widget-area-toggle a .label {
  color: var(--black);
}

#header-outer .sf-menu li ul li.menu-item a {
  color: var(--black);
}

#header-outer .sf-menu li.menu-item-has-children ul li.menu-item a:not(.sf-with-ul) {
  font-weight: 400 !important;
}

body:not([data-header-format='left-header']) #header-outer nav > ul > .megamenu > ul > li > a {
  /* font-family: 'Source Sans Pro', sans-serif !important; */
  font-size: 18px;
}

#header-outer #top nav > ul > li:not(.megamenu) ul a:hover,
#header-outer:not([data-format='left-header']) #top nav > ul > li:not(.megamenu) .sfHover > a,
#header-outer #top nav > ul > li:not(.megamenu) .sfHover > a,
#header-outer:not([data-format='left-header']) #top nav > ul > li:not(.megamenu) ul a:hover,
#header-outer:not([data-format='left-header']) #top nav > ul > li:not(.megamenu) ul .current-menu-item > a,
#header-outer:not([data-format='left-header']) #top nav > ul > li:not(.megamenu) ul .current-menu-ancestor > a,
#header-outer nav > ul > .megamenu > ul ul li a:hover,
#header-outer nav > ul > .megamenu > ul ul li a:focus,
#header-outer nav > ul > .megamenu > ul ul .sfHover > a,
#header-secondary-outer ul > li:not(.megamenu) .sfHover > a,
#header-secondary-outer ul > li:not(.megamenu) ul a:hover,
#header-secondary-outer ul > li:not(.megamenu) ul a:focus,
body:not([data-header-format='left-header']) #header-outer nav > ul > .megamenu > ul ul .current-menu-item > a {
  background-color: var(--light-grey) !important;
  color: var(--dark-blue) !important;
}

/*TITLES
---------------------------------------------*/

.custom-title.primary,
.custom-title.primary * {
  font-family: 'Outfit', sans-serif !important;
  font-weight: 400;
}

.custom-title.secondary,
.custom-title.secondary *,
.nectar-button.medium {
  font-family: 'Source Sans Pro', sans-serif !important;
  font-weight: 400;
}

.custom-title.animated .char,
.custom-title.animated .word {
  display: inline-block;
  will-change: transform;
  vertical-align: middle;
  white-space: nowrap;
}

.custom-title.animated {
  display: block;
}
.custom-title * {
  font-weight: 400;
}

.custom-title * strong,
.custom-title.primary * strong * {
  font-weight: 700 !important;
}

.custom-title.uppercase .custom-title.uppercase * {
  text-transform: uppercase !important;
}

.custom-title.lowercase,
.custom-title.lowercase * {
  text-transform: initial !important;
}

.custom-title.red,
.custom-title.red * {
  color: var(--red);
}
.custom-title.blue,
.custom-title.blue * {
  color: var(--blue);
}

@media (min-width: 1000px) {
  .custom-title.big *,
  .custom-title.big {
    font-size: 66px !important;
    line-height: 0.8 !important;
  }

  .custom-title.medium *,
  .custom-title.medium {
    font-size: clamp(30px, 2.25rem, 35px) !important;
    line-height: 1.1 !important;
  }
  .custom-title.small *,
  .custom-title.small {
    font-size: 20px !important;
    line-height: 1.3 !important;
  }

  a.toggle-heading {
    font-size: clamp(20px, 2vw, 22px) !important;
    line-height: 1.1 !important;
  }
  .custom-title.tiny *,
  .custom-title.tiny,
  .nectar-button.medium {
    font-size: 14px !important;
    line-height: 1.1 !important;
  }

  .custom-title.body *,
  .custom-title.body {
    font-size: 16px !important;
    line-height: 1.4 !important;
  }
}

@media (max-width: 1000px) {
  .custom-title.big *,
  .custom-title.big {
    font-size: clamp(28px, 12vw, 46px) !important;
    line-height: 0.8 !important;
  }
  .custom-title.medium *,
  .custom-title.medium {
    font-size: 30px !important;
    line-height: 1.1 !important;
  }
  .custom-title.small *,
  .custom-title.small,
  a.toggle-heading {
    font-size: clamp(16px, 5vw, 24px) !important;
    line-height: 1.3 !important;
  }

  .custom-title.tiny *,
  .custom-title.tiny,
  .nectar-button.medium {
    font-size: 14px !important;
    line-height: 1.1 !important;
  }

  .custom-title.big.extra-grande *,
  .custom-title.big.extra-grande {
    font-size: 30vw !important;
    line-height: 0.8 !important;
  }

  .custom-title.body *,
  .custom-title.body {
    font-size: 16px !important;
    line-height: 1.4 !important;
  }
}

.small-p {
  font-size: 14px !important;
}

/*TITLE ANIMATION*/
.animated .char,
.animated .word {
  display: inline-flex;
  overflow: visible;
}

.animated strong {
  margin: 0 0.3em;
  font-weight: 700 !important;
}

.animated.lines:before,
.animated.lines:after,
.splitting-lines.lines:after,
.splitting.lines:before {
  display: none !important;
}

.splitting-lines.lines {
  background-color: transparent;
  width: fit-content;
  height: auto !important;
}

.splitting-lines {
  opacity: 0;
}

.animated.lines {
  width: auto !important;
  height: auto;
  background-color: transparent;
}

.word-wrapper,
strong .word-wrapper {
  display: inline-block !important;
  overflow: hidden;
  vertical-align: top;
}

span.whitespace {
  white-space: collapse;
  display: contents;
}

.animated {
  white-space: break-spaces;
}

/*BUTTONS
---------------------------------------------*/
/*FOOTER
---------------------------------------------*/
#footer a {
  text-decoration: none;
}

/*FORMS*/
label {
  font-size: 14px;
  font-weight: 400;
}

.span_12.light input[type='date']:focus,
.span_12.light input[type='email']:focus,
.span_12.light input[type='password']:focus,
.span_12.light input[type='search']:focus,
.span_12.light input[type='tel']:focus,
.span_12.light input[type='text']:focus,
.span_12.light input[type='url']:focus,
.span_12.light select:focus,
.span_12.light textarea:focus {
  border-color: var(--yellow);
  box-shadow: none;
}

.wpcf7-form p span {
  color: var(--black);
  line-height: 1.1;
}

span.wpcf7-form-control-wrap {
  margin-top: 4px;
}

.contact-form-links a {
  color: var(--black);
}

.contact-form-links a:hover {
  color: var(--yellow);
}

[data-form-style='default'] .span_12.light input[type='email']:hover:not(:focus),
[data-form-style='default'] .span_12.light input[type='text']:hover:not(:focus),
[data-form-style='default'] .span_12.light textarea:hover:not(:focus) {
  border-color: var(--white);
}

span.wpcf7-not-valid-tip {
  position: absolute;
  top: 40px !important;
  right: 0;
}

.material.woocommerce-page[data-form-style='default'] input#coupon_code,
input[type='date'],
input[type='email'],
input[type='number'],
input[type='password'],
input[type='search'],
input[type='tel'],
input[type='text'],
input[type='url'],
select,
textarea {
  background-color: rgba(0, 0, 0, 0.04);
  border-radius: 0;
  border: 1px solid #f9f6ee89;
}

input[type='date'],
input[type='email'],
input[type='number'],
input[type='password'],
input[type='search'],
input[type='tel'],
input[type='text'],
input[type='url'],
textarea {
  padding: 5px 10px;
  color: var(--black);
}

.wpcf7-form .wpcf7-not-valid-tip {
  box-shadow: none !important;
}
.span_12.light .wpcf7-form .wpcf7-not-valid-tip {
  color: var(--lemon);
  line-height: 1.1;
}

.align-right-button p {
  display: flex;
  justify-content: end;
  flex-flow: row-reverse;
}

.wpcf7 form.invalid .wpcf7-response-output {
  border: none !important;
  color: var(--yellow) !important;
  font-size: 14px;
  line-height: 1.4;
  padding: 10px;
}

.wpcf7-not-valid-tip,
.wpcf7 form.invalid .wpcf7-response-output {
  background-color: var(--white) !important;
  border-radius: 10px;
}

.wpcf7-form .nectar-wpcf7-inline-form .nectar-wpcf7-inline-field {
  padding-right: 0;
}

.wpcf7-form .nectar-wpcf7-inline-form .nectar-wpcf7-inline-field input {
  padding-left: 20px;
  border-top-left-radius: 20px !important;
  border-bottom-left-radius: 20px !important;
}

.nectar-wpcf7-inline-field span.wpcf7-form-control-wrap {
  margin-top: 0 !important;
}

.nectar-wpcf7-inline-field > p:has(.wpcf7-spinner):has(.wpcf7-submit) .wpcf7-spinner {
  position: absolute !important;
}

.material .wpcf7-form .nectar-wpcf7-inline-form {
  padding-bottom: 5px;
}

.nectar-wpcf7-inline-form,
span.wpcf7-list-item-label {
  max-width: 550px;
  margin: 0 auto;
}

span.wpcf7-list-item-label {
  text-transform: none;
}

.span_12.light .select2-container--default .select2-selection--single,
.span_12.light input[type='date'],
.span_12.light input[type='email'],
.span_12.light input[type='password'],
.span_12.light input[type='search'],
.span_12.light input[type='tel'],
.span_12.light input[type='text'],
.span_12.light input[type='url'],
.span_12.light select,
.span_12.light textarea,
body[data-fancy-form-rcs='1'] .span_12.light .select2-container--default .select2-selection--single {
  background-color: transparent;
  border-color: rgb(255 255 255);
  color: #fff;
  border: none;
  border-bottom: 1px solid;
}

body[data-form-submit='regular'] .bottom-footer input[type='submit'],
input.wpcf7-form-control.wpcf7-submit.has-spinner {
  background-color: var(--pink) !important;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.nectar-wpcf7-inline-field input[type='email'] {
  background-color: var(--white) !important;
}
