/*
 Theme Name: Hello Child PROR
 Description: Child Theme für Hausarztpraxis Dr. Oremus
 Author: Ronny Edelstein Designatelier
 Author URI: https://ronnyedelstein.com
 Template: hello-elementor
 Version: 0.2
*/


/* =================================================
   PROR · GLOBAL LAYOUT
================================================= */

/* Elementor-Seitenbereich selbst */
.site-main > .elementor {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Nur die obersten Elementor-Container auf volle Breite setzen */
.site-main > .elementor > .e-con,
.site-main > .elementor > .elementor-section {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Kein zusätzlicher Abstand unter dem Seiteninhalt */
.site-main {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Nur letzter äußerer Container */
.site-main > .elementor > .e-con:last-child,
.site-main > .elementor > .elementor-section:last-child {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}


/* =================================================
   PROR · MOBILE LAYOUT
================================================= */

@media (max-width: 480px) {

  .site-main > .elementor {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .site-main .e-con,
  .site-main .elementor-section,
  .site-main .elementor-container {
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

}


/* =================================================
   PROR · STANDARD TYPOGRAPHY
================================================= */

:root {
  --pror-font-copy: "Barlow", sans-serif;
   --pror-font-headline: "Old Standard TT", serif;
}

html {
  font-size: 100%;
}

body {
  font-family: var(--pror-font-copy);
  font-size: clamp(16px, 1.2vw, 18px);
  font-weight: 400;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}


/* Headlines */

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--pror-font-headline);
  margin-top: 0;
}

h1 {
  font-size: clamp(34px, 5vw, 56px);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.01em;
}

h2 {
  font-size: clamp(26px, 3.5vw, 40px);
  font-weight: 600;
  line-height: 1.2;
}

h3 {
  font-size: clamp(20px, 2.5vw, 28px);
  font-weight: 600;
  line-height: 1.3;
}

h4 {
  font-size: clamp(18px, 2vw, 20px);
  font-weight: 500;
  line-height: 1.4;
}


/* Buttons */

.elementor-button {
  font-family: var(--pror-font-headline);
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}


/* =================================================
   CONTENT · PROJECT HERO
================================================= */

.p-hero img,
.p-hero video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


/* =================================================
   PROR · BACKGROUND PARALLAX
================================================= */

.pror-bg-parallax {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-attachment: fixed;
}


@media (max-width: 767px) {
  .pror-bg-parallax {
    background-attachment: scroll;
  }
}


/********** 20260814 *********/



/* PROR · Header Scroll */

.pror-header {
  transition: transform 0.35s ease !important;
  will-change: transform;
}

.pror-header.pror-header-hidden {
  transform: translateY(-110%) !important;
}


/* =================================================
   UI · Scroll to Top
================================================= */

.ui-scroll-top {
  position: fixed;
  right: 30px;
  bottom: 30px;
  width: 43px;
  height: 43px;
  z-index: 9999;

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
  color: #fff;

  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);

  transition:
    opacity 0.3s ease,
    visibility 0.3s ease,
    transform 0.3s ease;

  cursor: pointer;
}

.ui-scroll-top.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}


/* SVG */

.ui-scroll-top svg {
  width: 42px;
  height: 42px;
  display: block;
}


/* Kreis */

.ui-scroll-top .scroll-top-bg {
  fill: transparent;
  stroke: #fff;
  stroke-width: 1px;

  transition: fill 0.3s ease;
}


/* Pfeil */

.ui-scroll-top .scroll-top-arrow line,
.ui-scroll-top .scroll-top-arrow polyline {
  fill: none;
  stroke: #fff;
  stroke-width: 1px;
  stroke-linecap: round;
  stroke-linejoin: round;
}


/* Hover */

.ui-scroll-top:hover .scroll-top-bg {
  fill: var(--e-global-color-accent);
}

.ui-scroll-top:hover,
.ui-scroll-top:focus,
.ui-scroll-top:focus-visible {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none;
}


/* Mobile */

@media (max-width: 767px) {
  .ui-scroll-top {
    right: 20px;
    bottom: 20px;
  }
}

