/* 
Theme Name: WS Child
Theme URI: 
Description: UNILAB
Author: 
Author URI: ps-media.ch
Template: ws
Version: 1.0.1
Text Domain: ws-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags:

/*
    Add your custom styles here
*/
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

*:focus {
    outline: none;
}

 .ps-max-width {max-width:1080px!important;}
 
@media screen and (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: smooth;
  }
}


html, b,strong {font-family: neue-haas-grotesk-display, sans-serif!important;}
/* Swiss Made Span */
h1 span{font-size: clamp(1.65rem, 1.55rem + 0.2083vw, 1.8rem)!important; font-weight:normal; color:#CB0100;font-style: italic !important; } 
h2 span{font-size: clamp(1.65rem, 1.55rem + 0.2083vw, 1.8rem)!important; font-weight:normal; color:#CB0100;font-style: italic !important; } 
h3 span{font-size: clamp(1.65rem, 1.55rem + 0.2083vw, 1.8rem)!important;  font-weight:normal; color:#CB0100;font-style: italic !important; } 


/*header */
.ps-top-header {min-width: 100%}

.ps-top-header .elementor-menu-cart__container{background-color: transparent!important;}
.ps-top-header span.elementor-button-icon-qty {font-size: 13px!important; inset-inline-end: .6em!important;
line-height: 1.5em;}


/* fix elementor Post text mobile */
.elementor-posts--thumbnail-left .elementor-post__thumbnail__link {
    
    float: none;
    margin:0 0 10px 0!important;
    display:block!important;

}

.elementor-posts--skin-classic .elementor-post {
    overflow: hidden!important;
    display: block!important;
   }

}  

#cn-notice-text.cn-text-container {font-size: 15px !important; text-align: left;}
#cn-notice-text.cn-text-container a {color: #fff; text-decoration: underline;}

/* Elementor Elemente */

/*Nav Menu */
.ps-shop-menu .elementor-nav-menu a.elementor-item::after {
  position: absolute;
  top: 50%;
  right: .75rem;
  transform: translateY(-50%);
  width: 1em;
  height: 1em;
  content: url("/wp-content/uploads/PfeilRot_Unilab.svg") !important;
}

.ps-shop-menu .elementor-nav-menu { overflow: hidden!important; }

.ps-icon-title-small .elementor-heading-title::before {
  content: url("/wp-content/uploads/PfeilRot_Unilab.svg") !important;
  font-family: "Font Awesome 5 Free" !important;
  display: inline-block !important;
  margin-right: .2em !important;
  width: 0.8em !important;
  height: 0.8em !important;
  vertical-align: middle !important;
  color: #CB0100 !important;
  position: relative !important;
  top: 0px !important;
}

.ps-icon-title-large .elementor-heading-title::before {
  content: url("/wp-content/uploads/PfeilRot_Unilab.svg") !important;
  font-family: "Font Awesome 5 Free" !important;
  display: inline-block !important;
  margin-right: .2em !important;
  width: 0.8em !important;
  height: 0.8em !important;
  vertical-align: middle !important;
  color: #CB0100 !important;
  position: relative !important;
  top: -8px !important;
}
/* Accordion */


/* Accordion Summary auf Flexbox umstellen */
.ps-accordion .e-n-accordion-item-title {
  display: flex;
  align-items: center;
  justify-content: space-between; /* Titel links, Icon rechts */
  width: 100%;
}

/* Optional: damit der Titel nicht gestaucht wird */
.ps-accordion  .e-n-accordion-item-title-header {
  flex: 1;
}

/* Icon auf fixe Größe bringen und rechtsbündig */
.ps-accordion  .e-n-accordion-item-title-icon {
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Optional: etwas Abstand zum Rand */
.ps-accordion  .e-n-accordion-item-title-icon svg {
  width: 1em;
  height: 1em;
}



/* Slider home */
.ps-slider {-webkit-border-radius: 20px!important;
-moz-border-radius: 20px!important;
border-radius: 20px;}

.ps-slider .elementor-slides .swiper-slide {
  border-radius: 20px;
  overflow: hidden; }
/* Pagination rechts unten platzieren */
.ps-slider  .swiper-pagination {
  position: absolute;
  bottom: 60px!important;
  right: 60px!important;
  left: auto!important;
  width: auto!important;
  text-align: right!important;
}

/* Schwarzer Verlauf von unten nach oben */
.ps-slider   .elementor-background-overlay  {
background: linear-gradient(to top, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 60%)!important;

  opacity: 0.5!important; /* volle Sichtbarkeit des Verlaufs */
  position: absolute!important;
  bottom: 0!important;
  left: 0!important;
  right: 0!important;
  top: 0!important;
  z-index: 0!important; /* über dem Bild, aber unter Text */
  pointer-events: none!important; /* keine Klicks blockieren */
}
.ps-slider .swiper-slide-inner{margin-bottom:40px!important;}


/*Admin Leiste */
#wp-toolbar a.ab-item.elementor-site-settings {display:none!important;}
#wp-toolbar a.ab-item.elementor-app-link {display:none!important;}
 

 a[href^="tel"] {
   color: inherit; /* Inherit text color of parent element. */
   text-decoration: none; /* Remove underline. */
   /* Additional css `propery: value;` pairs here */
 }
 
 
 
 /* WooCommerce Shop*/
  .woocommerce .woocommerce-message {border: none!important;   font-family: "neue-haas-grotesk-display", Sans-serif !important; font-size: 18px!important;
margin-left: 8vw;
  margin-right:8vw;}


 /* Produkte Archiv seite */
  .woocommerce a.woocommerce-LoopProduct-link.woocommerce-loop-product__link
  span.price .woocommerce-price-suffix {font-size:14px!important; color:#1C244B!important;  display: block;
    margin-top: 0.0em; }
  .woocommerce a.add_to_cart_button {
    display: block;
    width: 100%;
    text-align: center;
    box-sizing: border-box;
  }
  
  .woocommerce ul.products li.product {
    display: flex!important;
    flex-direction: column!important;
    justify-content: space-between!important; 
    height: 100%!important; 
  }
  
  .woocommerce  .woocommerce-loop-product__title {min-height:40px;padding:0px!important;}
  //.woocommerce a.added_to_cart {display: none!important;}
  a.added_to_cart.wc-forward {font-size: 16px!important; text-align: center!important;margin-top:3px;}
  a.added_to_cart.wc-forward:hover {color:#CB0100!important}
 .woocommerce .orderby {margin-bottom:10px; padding:10px;  border-radius:20px; float: left!important;}
 a.woocommerce-LoopProduct-link.woocommerce-loop-product__link
 span.price ins  {text-decoration: none!important; font-weight: normal!important; }
  
  
  .woocommerce a.button.loading::after,
  .woocommerce button.button.loading::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -8px;
    border: 2px solid #fff;
    border-top-color: transparent;
    border-radius: 50%;
    width: 16px;
    height: 16px;
    animation: spin 0.75s linear infinite;
  }
 /* Buttons */
/* Styling für den "Zurück zum Shop"-Button auf leerer Warenkorbseite */
 .woocommerce .button.wc-backward,
 .woocommerce  .woocommerce-order-details a.button,
 .woocommerce .button.wc-forward {
   background-color: #CB0100 !important;
   border-radius: 25px !important;
   box-shadow: none !important;
   color: #FFFFFF !important;
   display: block !important;
   font-family: "neue-haas-grotesk-display", Sans-serif !important;
   font-size: clamp(1.125rem, 1.0833rem + .0868vw, 1.1875rem) !important;
   font-style: normal !important;
   font-weight: 400 !important;
   line-height: 1.3em !important;
   margin-bottom: 0 !important;
   padding: 10px !important;
   text-align: center !important;
   text-decoration: none !important;
   text-transform: none !important;
   width: 100% !important;
   border: none !important;
   transition: all 0.2s ease-in-out !important;
 }
 /* Hover-Effekt */
  .woocommerce .button.wc-backward:hover,
  .woocommerce .woocommerce-order-details a.button:hover,
  .woocommerce .button.wc-forward:hover{
    background-color: #333 !important;
  }
  
  
 /* Hover-Effekt */
 .woocommerce .button.wc-backward:hover,
 .woocommerce .woocommerce-order-details a.button:hover,
 .woocommerce .button.wc-forward:hover{
   background-color: #333 !important;
 }

 .woocommerce  .woocommerce-order-details a.button {margin-top:20px!important;}
 
  .woocommerce  .woocommerce-order-details a.button {
    background-color: #e9e9e9 !important;
    border-radius: 25px !important;
    box-shadow: none !important;
    color: #333 !important;
    display: block !important;
    font-family: "neue-haas-grotesk-display", Sans-serif !important;
    font-size: clamp(1.125rem, 1.0833rem + .0868vw, 1.1875rem) !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1.3em !important;
    margin-bottom: 0 !important;
    padding: 5px !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: none !important;
    width: 100% !important;
    border: none !important;
    max-width: 200px!important;
    transition: all 0.2s ease-in-out !important;
  }
  
  /* Hover-Effekt */
  .woocommerce .woocommerce-order-details a.button:hover {
    background-color: #CB0100!important;
    border-radius: 25px !important;
    box-shadow: none !important;
    color: #fff !important;
    display: block !important;
    font-family: "neue-haas-grotesk-display", Sans-serif !important;
    font-size: clamp(1.125rem, 1.0833rem + .0868vw, 1.1875rem) !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1.3em !important;
    margin-bottom: 0 !important;
    padding: 5px !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: none !important;
    width: 100% !important;
    border: none !important;
    max-width: 200px!important;
  }
  
 /* Produkte Detail*/
 .woocommerce .ps-product-image {max-width: 600px!important;}
.woocommerce .woocommerce-price-suffix {font-size: 18px!important;color:#1C244B!important;display: block; margin-top: 0.0em;}
 .woocommerce .cart .quantity .input-text.qty {width:90px!important;}
 
/* Cart*/
 .woocommerce .input-text.qty {border-radius:25px!important;padding:20px 20px!important;}
 .woocommerce .coupon .input-text {border-radius:25px!important;padding:9px 20px!important;}

 .woocommerce .button.e-apply-coupon,
 .woocommerce .checkout-button.button,
.single_add_to_cart_button,
 .woocommerce  .button {max-width: 400px; width:100%!important;}


 .woocommerce small.includes_tax,
 .woocommerce  small.includes_tax span.woocommerce-Price-amount.amount
  {font-size:13px!important;}


/* Mein Konto */
.woocommerce-ResetPassword  {width:100%!important; margin-bottom: 12vw!important; margin-top: 4vw;}

#account_display_name_description em,
.woocommerce-form.woocommerce-form-register.register p{font-size: 16px!important; font-weight: normal!important; margin-top: 8px!important;    color: #333 !important; display: block;}

.woocommerce-button.button.view,
a.woocommerce-button .button.view
 {text-align: center !important;padding: 5px 15px 5px 15px!important;}
.woocommerce-Address .woocommerce-Address-title.title a  {
  background-color: #CB0100!important;
  border-radius: 25px !important;
  color: #fff !important;
  display: block !important;
  font-family: "neue-haas-grotesk-display", Sans-serif !important;
  font-size: 16px!important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 1.3em !important;
  margin-bottom: 0 !important;
  padding: 7px 5px 5px 7px!important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: none !important;
  width: 100% !important;
  border: none !important;
  max-width: 300px!important;
}
.woocommerce-Address .woocommerce-Address-title.title a:hover {   background-color: #333 !important;
}

.woocommerce-ResetPassword.lost_reset_password .form-row-first {margin-left: 10px!important; border:0px solid #f00!important; display:block!important; padding: 0px!important;}
 /* Checkout */
 .woocommerce .woocommerce-form__label-for-checkbox span{font-size: 18px!important; font-weight:bold!important; font-style:normal!important;}
.wc_payment_method.payment_method_bacs {margin-bottom: 10px!important;}
 .woocommerce table.shop_table.woocommerce-checkout-review-order-table td,
 .woocommerce table.shop_table.woocommerce-checkout-review-order-table th 
 {padding: 8px 12px 8px 0!important;
 padding-inline-end: 40px;}
 .woocommerce .woocommerce-shipping-totals .woocommerce-Price-amount.amount {font-weight: normal!important; }
 table.shop_table.woocommerce-checkout-review-order-table
 tr.woocommerce-shipping-totals th,
 table.shop_table.woocommerce-checkout-review-order-table
 tr.woocommerce-shipping-totals td{padding: 0px 12px 0px 0!important;
 padding-inline-end: 40px;}
 .woocommerce .woocommerce-shipping-totals .woocommerce-Price-amount.amount {font-weight: normal!important; text-transform: none!important;}
 

 .woocommerce .order-total .woocommerce-Price-amount.amount bdi,
 .woocommerce th.product-name,
 .woocommerce th.product-total,
 .woocommerce .wc_payment_method label{ font-weight:bold!important;}
 

 .woocommerce-terms-and-conditions-wrapper .form-row.validate-required
 label .woocommerce-terms-and-conditions-checkbox-text,
 .woocommerce  label.woocommerce-form__label {font-size: 18px!important; font-weight:normal!important; font-style:normal!important; magin-bottom:20px!important;}
 div.woocommerce-terms-and-conditions-wrapper,
.woocommerce-checkout-payment button {margin-top:10px!important;}
 label.woocommerce-form__label.woocommerce-form__label-for-checkbox.checkbox {line-height: 1.3em!important;}

     
/* Checkboxen */
 .woocommerce input[type="checkbox"] {
   appearance: none !important;
   -webkit-appearance: none !important;
   width: 20px !important;
   height: 20px !important;
   border: 2px solid #777 !important;
   border-radius: 4px !important;
   display: inline-grid !important;
   place-content: center !important;
   margin-right: .5em !important;
   cursor: pointer !important;
 }
 
.woocommerce input[type="checkbox"]:checked {
   background: #2271b1 !important;
   border-color: #2271b1 !important;
 }
.woocommerce input[type="checkbox"]:checked::after {
   content: "\f00c" !important;
   font-size: 30px !important;
   width: 10px !important;
   height: 10px !important;
   clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0, 43% 62%) !important;
   background: #fff !important;
 }
 
 /* Radio-Buttons */
.woocommerce input[type="radio"] {
   appearance: none !important;
   -webkit-appearance: none !important;
   width: 20px !important;
   height: 20px !important;
   border: 2px solid #777 !important;
   border-radius: 50% !important;
   margin-right: 4px !important;
   margin-left: 4px !important;
   display: inline-grid !important;
   place-content: center !important;
   cursor: pointer !important;
   background: #fff !important;
 }
 
.woocommerce input[type="radio"]:checked {
   border-color: #2271b1 !important;
 }
 
.woocommerce input[type="radio"]:checked::after {
   content: "" !important;
   width: 10px !important;
   height: 10px !important;
   border-radius: 50% !important;
   background: #2271b1 !important;
   display: block !important;
 }

 /* Tastatur-Fokus sichtbar lassen */
.woocommerceinput[type="checkbox"]:focus,
.woocommerce input[type="radio"]:focus{
   outline: 2px solid rgba(34,113,177,.35);
   outline-offset: 2px;
 }
 
 /* thankyou page */
 /*********************/
 .ps-cart a {text-decoration: none!important;}
 .ps-cart table {border: none!important;}
 .ps-cart table th,
 .ps-cart table td
 {border-bottom: 1px solid #333 !important;}
 
 
 /* Bank details */
 .woocommerce-bacs-bank-details  {margin: 0px!important; padding:10px 10px 0px 10px!important;  background-color: #f8f8f8!important; font-family: neue-haas-grotesk-display, sans-serif;
    font-size: clamp(1.125rem, 1.0833rem + .0868vw, 1.1875rem)!important;}

li.iban, li.bic,li.bank_name
  {padding-top:5px!important; margin: 0px!important;}

 .wc-bacs-bank-details {margin: 0px!important; padding:0px 0px!important;}
 .elementor-jet-thankyou-order.jet-woo-builder p { color: #333333!important; font-family: neue-haas-grotesk-display, sans-serif;
   font-size: clamp(1.125rem, 1.0833rem + .0868vw, 1.1875rem)!important;}
 h2.wc-bacs-bank-details-heading {
 color: #333333!important;
 font-family: "neue-haas-grotesk-display", Sans-serif!important;
 font-size: clamp(1.125rem, 1.0833rem + .0868vw, 1.1875rem)!important;
 font-style: normal!important;
 font-weight: 700!important;
 line-height: 1.3em!important;
 margin: 0 0 10px!important;
 text-align: left!important;
 text-transform: none!important;}
 
 .woocommerce-bacs-bank-details
  h3.wc-bacs-bank-details-account-name {color: #333333!important;
 font-family: "neue-haas-grotesk-display", Sans-serif!important;
 font-size: clamp(1.125rem, 1.0833rem + .0868vw, 1.1875rem)!important;
 font-style: normal!important;
 font-weight: 400!important;
 line-height: 1.3em!important;
 margin: 0!important;
 text-transform: none!important;}
 
  .woocommerce-order-overview__email a,
 .woocommerce-order-overview__email .email a{
 font-size: 18px!important;
 font-style: normal!important;
 letter-spacing: 0!important;
 line-height: 20px!important;
 color: #333!important;}
 
 .woocommerce-customer-details--phone:before,
 .woocommerce-customer-details--email:before
 {display:none!important;}
 .woocommerce-customer-details--phone,
 .woocommerce-customer-details--email
 {margin-left:-28px!important;}
 strong.product-quantity {font-weight: 300!important;}
 .woocommerce-customer-details--email a{
 font-style: normal!important;
 letter-spacing: 0!important;
 color: #333!important;
 font-weight: 300!important;}
 
  .woocommerce-order-overview__email a:hover,
  .woocommerce-customer-details--email a:hover {color: #EF3340 !important;}
  
  
.loop-product-short-description-container {
  color: #1C244B!important;
  display: block!important;
  font-family: neue-haas-grotesk-display, sans-serif!important;
  font-size: 14px!important;
  font-weight: 400!important;
  line-height: 1.3em!important;
  margin-top: 0px!important;
  margin-bottom: 8px!important;
  margin-top: -8px!important;
  border-top:1px solid #1C244B!important;
  border-bottom: 1px solid #1C244B!important;
  padding: 4px 0px 4px 0px!important;
  text-align: left!important;
  }
 
 
 a.product-pdf-link  {
             display: inline-flex!important;
             align-items: center!important;
             gap: 6px!important;
             color: #d32f2f!important;
             font-weight:600!important;
             font-size: 17px!important!important;
             text-decoration: none!important;
         }
           a.product-pdf-link::before {
  content: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'><rect width='384' height='512' rx='32' ry='32' fill='%23e74c3c'/><path d='M256 32l96 96h-96z' fill='%23fff'/><text x='50%' y='70%' font-size='160' font-family='Arial, Helvetica, sans-serif' font-weight='700' fill='%23fff' text-anchor='middle'>PDF</text></svg>");

           display: inline-block;
           width: 18px;
           height: 18px;
           vertical-align: middle;
           margin-right: 6px;
           margin-top: -8px!important;
 }

.woocommerce-account p.woocommerce-form-row {display:block!important; margin-top:20px!important;}
.woocommerce-account button.woocommerce-Button.woocommerce-button.button.woocommerce-form-register__submit {margin-bottom:0px!important;}



 /* footer */

.ps-subfooter a {font-size: calc((1.1 - 1)*1.2vw + 1rem)!important;line-height:1.4!important;}
.ps-subfooter a:hover, .ps-footer a:hover {text-decoration: underline !important;}

@media (max-width: 1024px) {
 .woocommerce-message .button {margin-top:20px!important; border:1px solid #f00!important;}

 /* Swiss Made Span */
 h1 span{font-size: clamp(1.65rem, 1.55rem + 0.2083vw, 1.8rem); font-weight:normal; color:#CB0100;font-style: italic !important; } 
 h2 span{font-size: clamp(1.65rem, 1.55rem + 0.2083vw, 1.8rem); font-weight:normal; color:#CB0100;font-style: italic !important; } 
 h3 span{font-size: clamp(1.65rem, 1.55rem + 0.2083vw, 1.8rem);  font-weight:normal; color:#CB0100;font-style: italic !important; } 
   
      
      span.onsale {padding-top:5px!important; }
      
 
/* Pagination rechts unten platzieren */
.ps-slider  .swiper-pagination {
  position: absolute;
  bottom: 30px!important;
  right: 30px!important;
  left: auto!important;
  width: auto!important;
  text-align: right!important;}
}
@media (max-width: 768px) {
 /* Swiss Made Span */
 h1 span{font-size: clamp(1.65rem, 1.55rem + 0.2083vw, 1.8rem); font-weight:normal; color:#CB0100;font-style: italic !important; } 
 h2 span{font-size: clamp(1.65rem, 1.55rem + 0.2083vw, 1.8rem); font-weight:normal; color:#CB0100;font-style: italic !important; } 
 h3 span{font-size: clamp(1.65rem, 1.55rem + 0.2083vw, 1.8rem);  font-weight:normal; color:#CB0100;font-style: italic !important; } 
 
  /* Bank details */
   .woocommerce-bacs-bank-details  {margin: 0px!important; padding:5px 5px 0px 5px!important;  background-color: #f8f8f8!important; font-family: neue-haas-grotesk-display, sans-serif;
      font-size: 16px!important;}
  ul.order_details li, li.iban strong, li.bic strong ,li.bank_name strong
  {padding-top:3px!important; margin: 0px!important;font-size: 16px!important;}
  
  .ps-top-header span.elementor-button-icon-qty {font-size: 13px!important; inset-inline-end: .3em!important;
  line-height: 1.5em;}

  
   
/* Pagination rechts unten platzieren */
.ps-slider  .swiper-pagination {
  position: absolute;
  bottom: 20px!important;
  right: 10px!important;
  left: auto!important;
  width: auto!important;
  text-align: right!important;}
  
.ps-icon-title-large .elementor-heading-title::before {
 
  margin-right: .2em !important;
  width: 0.8em !important;
  height: 0.8em !important;
  vertical-align: middle !important;
  color: #CB0100 !important;
  position: relative !important;
  top: -4px !important;}

}

@media (max-width: 580px) {
  
  .woocommerce .woocommerce-ordering {width:100%;}
  
  
 /* Swiss Made Span */
h1 span {
   font-size: 20px!important;
   font-weight: normal;
   color: #CB0100;
   font-style: italic !important;
 }
 
 h2 span {
   font-size: 20px!important;
   font-weight: normal;
   color: #CB0100;
   font-style: italic !important;
 }
 
 h3 span {
   font-size: 20px!important;
   font-weight: normal;
   color: #CB0100;
   font-style: italic !important;} 
   
}
