/*
Theme Name:   Glow Aesthetics Child
Theme URI:    https://glow-aesthetics.de
Description:  Elementor Child Theme für GLOW AESTHETICS – Facharztpraxis by Manuel Sánchez
Author:       GLOW AESTHETICS
Author URI:   https://glow-aesthetics.de
Template:     hello-elementor
Version:      1.3.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  glow-aesthetics-child
*/

:root {
--sand: #c9b99a;
--sand-dark: #b0a080;
--sand-light: #e0d4b8;

--women: #8b4a5e;
--women-dark:#6b3a4a;
--women-light:#ab6a7e;

--men-primary:           #2a7b7b;
--men-primary-hover:     #1E6F6F;
--men-primary-light:     #3DB8B8;
--men-primary-subtle:    #EAF4F4;
--men-primary-mid:       rgba(43,143,143,0.15);

--women-primary:           #8b4a5e;
--women-primary-hover:     #6b3a4a;
--women-primary-light:     #ab6a7e;
--women-primary-subtle:    #EAF4F4;
--women-primary-mid:       rgba(43,143,143,0.15);

--men: #2a7b7b;
--men-dark:#1e5f5f;
--men-light:#3d9a9a;
--men-gradient:linear-gradient(135deg,var(--men),var(--men-dark));
--men-rgb: 10, 20, 40;
--men-dark-rgb: 5, 10, 20;

--header-bg:210 21% 23%;
--text-sub: 209 38% 64%;
--overlay-darkblue:linear-gradient(135deg,rgba(var(--men-rgb), 0.75), rgba(var(--men-dark-rgb), 0.75));
--blue:#1d3a5d;
--text:#454545;
--cream:#f9fbfa;
--white:#ffffff;
--lightgray:#ddd;
--semi-white:rgba(255,255,255,.8);
--black:#000000;
--semi-black:rgba(0,0,0,.3);
--font:Lato,Arial;
--font-accent:Caveat, cursive;
--shadow:0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);
--shadow-alternate: 0 4px 15px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.3);
--button-gradient:linear-gradient(180deg,rgba(255,255,255,0.20),rgba(255,255,255,0.08));
--radius-small:6px;
--radius:12px;
--radius-xl:24px;
--radius-lxl:24px 0 0 24px;
--radius-rxl:0 24px 24px 0;
--radius-full:42px;
  --primary: var(--men-primary);
--container-padding:80px;
--parallax-padding:120px;


--primary: var(--sand);
--primary-hover:     #b0a080;
--primary-light:     #e0d4b8;
--primary-subtle:    #EAF4F4;
--primary-gradient:linear-gradient(135deg,var(--primary),var(--primary-hover));

body.men {
  --primary: var(--men-primary);
  --primary-hover:     #1E6F6F;
  --primary-light:     #3DB8B8;
  --primary-subtle:    #EAF4F4;
  --semi-white:rgba(255,255,255,.6);
  --primary-gradient:linear-gradient(135deg,var(--primary),var(--primary-hover));
}
body.women {
  --primary: var(--women-primary);
  --primary-hover:     #6b3a4a;
  --primary-light:     #ab6a7e;
  --primary-subtle:    #EAF4F4;
  --semi-white:rgba(255,255,255,.6);
  --primary-gradient:linear-gradient(135deg,var(--primary),var(--primary-hover));
}


}

/* ============================================================
   RESET & BASE
   ============================================================ */
*, *::before, *::after {
  box-sizing: border-box;margin: 0;padding: 0;border-width: 0;border-style: solid;
}

html { scroll-behavior: smooth; }

body {
  font-family: var(--font);
  font-weight: 400;
  font-size: 17px;
  color: var(--text);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: var(--white);
}

img { max-width: 100%; height: auto; display: block; }
.text-white {color:var(--white);}
.text-primary {color:var(--primary);}
.text-center {text-align:center;}
.text-uppercase {text-transform:uppercase;letter-spacing:1px;}
.text-strong-uppercase strong {text-transform:uppercase;letter-spacing:1px;color:var(--primary) !important;font-size:80%;}
.text-semibold {font-weight:600;}
.category-title {color:var(--primary-light) !important;font-size:12px;backdrop-filter: blur(4px);text-transform:uppercase;letter-spacing:2px;display:inline-block;margin-block-end:25px !important;font-weight:600;background:var(--semi-black);padding:10px 15px;width:auto !important;}
.radius, .elementor img.radius {border-radius:var(--radius);}
.radius-xl, .elementor img.radius-xl {border-radius:var(--radius-xl);}
.radius-r-xl {border-radius:var(--radius-rxl);}
.radius-l-xl {border-radius:var(--radius-lxl);}
.elementor-widget-icon-list {font-size:15px;}
.bg__creme {background:var(--cream);}
.elementor-button {background:var(--primary);color:var(--white);border-radius:8px;border:1px solid transparent;padding:20px 30px;font-weight:bold;transition:ease all .3s;
  &:hover {background:var(--primary-hover);}
}
a {color:var(--primary);}
.elementor-element.elementor-button-info .elementor-button {background:transparent;border:1px solid var(--white);
  &:hover {background: var(--button-gradient);backdrop-filter: blur(10px);-webkit-backdrop-filter: blur(10px);}
}
.ablauf__strahl {position:relative;font-size:15px;
  &::before {content:"";height:2px;background: var(--primary);width:100%;position:absolute;top:55px;z-index:0;}
  & .ablauf__number {z-index:1;position:relative;display:flex;font-weight:700;background:var(--primary-gradient);color:var(--white);border-radius:255px;font-size:34px;margin:0 auto 30px;justify-content:center;flex-wrap:wrap;align-content:center;box-shadow:var(--shadow);width:90px;height:90px;}
  & .elementor-widget-text-editor {padding:0 30px;}
}

header.elementor-location-header {background:hsl(var(--header-bg));  position: sticky;top: 0;z-index: 9999;transition: all .3s ease;
  & > .site-header {max-width: var(--content-width);margin-right: auto;margin-left: auto;width:100%;padding:20px 20px;}
  .hideOnScroll {transition: all .3s ease;overflow: hidden;display:block;
  }
  
}
.site-header.is-scrolled .hideOnScroll {
  max-height: 0;
opacity: 0;
transform: translateY(-10px);
margin-top: 0 !important;
margin-bottom: 0 !important;

padding-top: 0 !important;
padding-bottom: 0 !important;
}
.page-content > .elementor {
  & .elementor-widget-text-editor {
    & strong {color:var(--blue)}
    & ul {list-style: none;margin-block-end:15px;margin-block-start:15px;
      & li {position: relative;padding-left:25px;margin-bottom:10px;}
      & li::before {content: "✓";color:var(--primary);position: absolute;left: 0;top:6px;line-height: 1;}
    }
  }
  & .elementor-button {}
  & .quote-box {border-color:var(--primary);border-left-width:4px;text-align:left;}
  & hr.e-divider-base {background:var(--lightgray);margin:50px 0 30px;}
  & h1 {font-weight:bold;font-size:50px;
    & em {display:block;font-style: normal;font-weight:400;font-size:80%;margin:10px 0 25px;}
  }
  & h2.e-heading-base {color:var(--blue);font-weight:bold;font-size:32px;margin:0 auto 30px;
    & + p {max-width:750px;margin-bottom:40px;}
    & em {color:var(--primary);text-transform:uppercase;letter-spacing:2px;font-size:16px;font-style: normal;}
  }
  & h3.e-heading-base {color:var(--blue);font-weight:bold;font-size:24px;margin:0 auto 15px;}
  & .h3-primary-bg h3, & .grid__headline {color:var(--white);padding:25px;background:var(--primary-gradient);display: flex;align-items: center;min-height: clamp(100px, 4vw, 152px);flex-wrap:wrap;row-gap:0;
    & h3 {margin-block-end: 5px;font-size:20px;font-weight:bold;}
  }
  .h3-primary-bg h3 {font-size:20px;}
  & .overlay {position:relative;padding-block-start: 80px;padding-block-end: 80px;
    &::before {width:100%;height:100%;content:"";background:var(--overlay-darkblue);position:absolute;top:0;left:0;z-index:0;}
    & > * {position:relative;z-index:1;}
    p, a, h1, h2, ul, li, span {color:var(--white);}
    & .subheadline {margin-block-end:30px;max-width:850px;
      & strong {display:block;font-weight:600;opacity:1;margin-block-end:10px;}
      & em {opacity:.6;font-style: normal;}
    }
  }
  & > .e-atomic-element {padding-block-end:var(--container-padding);padding-block-start:var(--container-padding);
    & > * {max-width: var(--content-width);margin-right: auto;margin-left: auto;width:96%;}
  }
  & .fw.e-atomic-element.ablauf-container {padding-left:0;padding-right:0;}
  & .fw.e-atomic-element {max-width:100%;padding-left:2%;padding-right:2%;}
  & > .factsbox {padding:40px 30px 0;max-width: var(--content-width);margin-right: auto;margin-left: auto;width:100%;box-shadow:var(--shadow);border-radius:var(--radius-xl);z-index:2;
    & > div {padding:0;}
    & .facts {font-size:15px;
      & > div.e-con-inner {
        &::before {height:1px;background:var(--lightgray);position:absolute;top:15px;left:0;content:"";width:100%;}
        & > div.elementor-widget {border-right:1px solid var(--lightgray);margin-block-start: 20px;padding-right:20px;}
        & > div.elementor-widget.featured {background:var(--primary);color:var(--semi-white);margin: -20px;width: calc(100% + 77px);max-width: none;padding:40px 20px 0;
          & em {color:var(--white);font-style: normal;font-weight:600;}
          & strong {color:var(--semi-white);}
          & p:last-of-type {font-size:12px;margin:0;}
        }
  }
      & p {margin:10px 0;}
      & strong {color:var(--primary);font-size:14px;text-transform: uppercase;letter-spacing:1px;}
    }
  }
  & .methoden {}
  & .grid {column-gap:30px;
    & .box.elementor-widget-text-editor {padding:25px 25px 10px;}
    & .box {overflow:hidden;border-radius:var(--radius-xl);background:var(--white);box-shadow:var(--shadow);
      & .elementor-widget-text-editor {padding:25px 25px 10px;}
      > img  {width: 100%;aspect-ratio: 2 / 1;object-fit: cover;display: block;}
    }
  }
  & .grid-50 {column-gap:40px;row-gap:40px;
    & > .box {width:calc(50% - 20px);}
  }
  & .grid__nachsorge .e-flexbox-base {column-gap:40px;
    & .box {background:var(--cream);border-radius:var(--radius);width:100%;
      & p:first-of-type {border-bottom:1px solid var(--lightgray);padding-bottom:15px;margin-bottom:15px;}
    }
    
  }
  & .fa-profil {column-gap:40px;
    & .subheadline {margin:0 0 20px;font-size:15px;}
    & .fa-portrait {}
    & h2 + p {max-width:100%;}
    & .fa-profil__links {width:35%;
      & .fa-ms strong {color:var(--blue);font-size:16px;}
      & .elementor-widget {background:var(--cream);margin:15px 0;text-align:center;padding:20px;font-size:14px;}
      & .elementor-widget.quote-box {text-align:left;}
    }
  }
  & .parallax__cta:not(.parallax__cta-v2) {padding-block-end:var(--parallax-padding);padding-block-start:var(--parallax-padding);
    & .elementor-button {border-radius:var(--radius-full);box-shadow:var(--shadow-alternate);background:var(--button-gradient);backdrop-filter: blur(10px);padding:20px 30px;
      -webkit-backdrop-filter: blur(10px);}
    & > .elementor-widget-text-editor {
      & > p:first-of-type {text-transform:uppercase;font-size:15px;letter-spacing:1px;color:var(--primary-light);}
      & h2 {font-weight:bold;letter-spacing:1px;font-size:32px;text-transform:uppercase;margin-block-end:30px;
        & em {color:var(--primary-light);font-style:normal;}
      }
    }
  }
  & .parallax__cta-v2 {padding-block-end:var(--parallax-padding);padding-block-start:var(--parallax-padding);
    & > .elementor-widget-text-editor {
    & h2 {font-weight:bold;font-size:32px;margin-block-end:30px;}
    & h2 + p {max-width:700px;margin-left:auto;margin-right:auto;}
  }}
  & .methoden {
    & .elementor-widget-text-editor > ul + p {margin:30px 0 20px;}
    & .elementor-widget-text-editor > ul + p:last-of-type {margin:30px 0 20px;padding-block-start: 30px;border-top:1px solid var(--lightgray);
      strong {color:var(--primary);}
    }
  }
  .elementor-widget-n-accordion {max-width: var(--content-width) !important;margin-right: auto;margin-left: auto;width:100%;
    details.e-n-accordion-item {border:1px solid var(--lightgray);background:var(--white);margin:0 0 15px;border-radius:var(--radius-small);box-shadow:var(--shadow);
      & summary {padding:20px 20px;}
      & summary + div {padding:10px;}
    }
    .e-n-accordion-item-title {border:0;color:var(--blue) !important;font-weight:bold;
      & .e-n-accordion-item-title-icon span>svg {fill:var(--primary) !important;}
    }
    .e-n-accordion-item[open]>.e-n-accordion-item-title {border-bottom:1px solid var(--lightgray);}
    span.e-n-accordion-item-title-header {width:100%;display:block;position:relative;}
  }
  .rating.elementor-widget-n-accordion {
    span.e-n-accordion-item-title-header::after {content: "★★★★★";color:var(--primary);position:absolute;right:15px;font-size:14px;top:1px;}
    summary + div {font-size:15px;padding:0px 0;
      & strong {color:var(--blue);}
      & > div > p {position:relative;margin:20px 0;
        &::after {content: "★★★★★";color:var(--primary);position:absolute;right:0;font-size:13px;top:1px;}
      }
    }
  }
  .sources .elementor-widget-n-accordion {
    summary + div {font-size:14px;}
    & details.e-n-accordion-item {border:0;box-shadow:none;border-radius:0;}
    & span.e-n-accordion-item-title-header {width:auto;display:inline;position:relative;}
  }
  & .ablauf {padding-block-end: 0;}
}

.mitgliedschaften {
  figure {max-width:200px;margin-right:30px !important;}
  img {height:auto;max-width:120px;margin:20px;}
  .isaps img {margin:45px 0;}
  figcaption {font-size:12px;font-style: normal;}
}

footer.elementor-location-footer {color:var(--white);
  .address {
    
  }
}
header, footer {
  & .logo {line-height:1.74;
    & strong {color:var(--primary-light);font-size:20px;letter-spacing:2px;}
      & .logo-text {text-transform:uppercase;font-size:12px;letter-spacing:1px;display:block;color:hsl(var(--text-sub));}
      & em {color:var(--primary-light);display:block;font-size:18px;font-family:var(--font-accent);letter-spacing:1px;}
    }
}


.ablauf-container {
  display: flex;
  flex-wrap: nowrap;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
padding-block-end:50px !important;
}

.ablauf-container > .ablauf__strahl {
  flex: 0 0 22.5%;
  scroll-snap-align: start;
}

/* Scrollbar */

.ablauf-container::-webkit-scrollbar {
  height: 8px;
}

.ablauf-container::-webkit-scrollbar-track {
  background: #e5e5e5;
  border-radius: 20px;
}

.ablauf-container::-webkit-scrollbar-thumb {
  background: var(--primary);
  border-radius: 20px;
}


.sticky-bar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  transform: translateY(120%);
  transition: transform 0.3s ease;
}

.sticky-bar.is-visible {
  transform: translateY(0);
}


@media (max-width:700px) {
  body {font-size:16px;}
  .categroy-title {font-size:11px;}
  .page-content > .elementor {
  & h1 {font-size:8vw;
    & em {font-size:70%;margin:10px 0 25px;}
  }
  & h2.e-heading-base {font-size:6.5vw;
    & em {letter-spacing:1px;font-size:10px;}
  }
  & .intro {
    .elementor-button {width:100%;}
  }
  & .grid {display:block;
    & > .box {margin-block-end: 40px;}
  }
  & .grid__nachsorge {
    & .e-flexbox-base {display:block;
      & > .box {margin:35px 0;}
    }
  }
  & .grid-50 {
    & > .box {width:100%;}
  }
  & > .factsbox {width:90%;padding:30px 20px 0;
      & .facts {font-size:13px;
        & strong {font-size:11px;letter-spacing:.25px;}
          & > div.e-con-inner {display:flex;flex-wrap:wrap;padding-bottom:0;
              & > div.elementor-widget {width: 46%;}
              & > div.elementor-widget.featured {margin:0 -20px;width:calc(100% + 40px);padding:20px;border-radius:var(--radius-xl);}
          }
      }
      
  }
& .parallax__cta.parallax__cta-v2 {
  & .e-flexbox-base:last-of-type {flex-wrap:wrap;
    & > div {width:100%;}
    & > * > a {width:100%;}
  }
}
  & .parallax__cta:not(.parallax__cta-v2) {
    & > .elementor-widget-text-editor {
      & > p:first-of-type {font-size:13px;letter-spacing:1px;}
      & h2 {font-size:6.5vw;margin-block-end:30px;
        & em {}
      }
    }
  }
  & .fa-profil {flex-wrap: wrap;
    & .subheadline {margin:0 0 20px;font-size:15px;}
    & .fa-portrait {}
    & .fa-profil__rechts {width:100%;padding:10px 0;}
    & .fa-profil__links {width:100%;padding:10px 0;
      & .fa-ms strong {color:var(--blue);font-size:16px;}
      & .elementor-widget {background:var(--cream);margin:15px 0;text-align:center;padding:20px;font-size:14px;}
      & .elementor-widget.quote-box {text-align:left;}
  }
}
}
.ablauf-container {
  & > .ablauf__strahl {flex:0 0 72%;}
  & .elementor-widget-text-editor {padding:0 5px;}
}
.intro-brust, .intro, .parallax__cta {background-attachment: scroll !important;}
}