/* 
Theme Name: Schwarz+Matt Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Schwarz+Matt Child is a child theme of Hello Elementor, created by the Elementor team and modified by Schwart+Matt.
Author: Schwarz+Matt Team
Author URI: https://www.schwarz-matt.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: schwarz+matt-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* support color elementor-icon-widget
----------------------------------------*/

.elementor-widget-icon svg path{
    fill: currentColor;
}

p{
	margin-bottom: 0;
}

/* spaces
----------------------------------------*/
:root {

  --space-3xs: 0.25rem;  /* 4px */
  --space-2xs: 0.5rem;   /* 8px */
  --space-xs: 0.75rem;   /* 12px */


  --space-s: 1rem; /* 16px – bewusst fix */

  --space-sm: clamp(1.25rem, 1.1rem + 0.6vw, 1.5rem);   /* 20px → 24px */
  --space-m:  clamp(1.5rem, 1.25rem + 0.9vw, 2rem);     /* 24px → 32px */
  --space-ml: clamp(2rem, 1.6rem + 1vw, 2.5rem);        /* 32px → 40px */
  --space-l:  clamp(2.25rem, 1.8rem + 1.2vw, 3rem);     /* 36px → 48px */
  --space-xl: clamp(3rem, 2.25rem + 1.8vw, 4rem);       /* 48px → 64px */

  --space-2xl: clamp(3.5rem, 3rem + 2vw, 5rem);         /* 56px → 80px */
  --space-3xl: clamp(4rem, 3.25rem + 3vw, 6rem);        /* 64px → 96px */
  --space-4xl: clamp(4.5rem, 3.5rem + 4vw, 7rem);       /* 72px → 112px */
  --space-5xl: clamp(5rem, 4rem + 4vw, 8rem);           /* 80px → 128px */

  --space-6xl: clamp(6rem, 4.75rem + 5vw, 10rem);       /* 96px → 160px */
  --space-7xl: clamp(7rem, 5.5rem + 6vw, 12rem);        /* 112px → 192px */
  --space-8xl: clamp(8rem, 6.25rem + 7vw, 14rem);       /* 128px → 224px */
  --space-9xl: clamp(9rem, 7rem + 8vw, 16rem);          /* 144px → 256px */

  --space-10xl: clamp(10rem, 8rem + 9vw, 17rem);        /* 160px → 272px */
  --space-11xl: clamp(12rem, 9rem + 10vw, 20rem);       /* 192px → 320px */
}



/* fon-sizes
----------------------------------------*/
:root {

  /* 64px Bold (Mobile 36px → Desktop 64px) */
  --font-64: clamp(2.25rem, 1.6rem + 2.5vw, 4rem);

  /* 48px Bold (Mobile 28px → Desktop 48px) */
  --font-48: clamp(1.75rem, 1.3rem + 2vw, 3rem);

  /* 28px Bold (Mobile 20px → Desktop 28px) */
  --font-28: clamp(1.25rem, 1.1rem + 1vw, 1.75rem);

  /* 24px Medium (Mobile 18px → Desktop 24px) */
  --font-24: clamp(1.125rem, 1rem + 0.8vw, 1.5rem);

  /* 22px Medium (Mobile 17px → Desktop 22px) */
  --font-22: clamp(1.0625rem, 0.95rem + 0.6vw, 1.375rem);

  /* 18px Regular (Mobile 16px → Desktop 18px) */
  --font-18: clamp(1rem, 0.95rem + 0.3vw, 1.125rem);

  /* 16px Regular (Mobile 15px → Desktop 16px) */
  --font-16: clamp(0.9375rem, 0.92rem + 0.15vw, 1rem);

  /* 14px Regular (Mobile 13px → Desktop 14px) */
  --font-14: clamp(0.8125rem, 0.8rem + 0.1vw, 0.875rem);

  /* 12px Regular (Mobile 12px → Desktop 12px) */
  --font-12: 0.75rem;

}

/* vars
----------------------------------------*/

:root {

	/* 12px–14px | 28px–36px */
	--button-gap-base: 
		clamp(0.75rem, 0.7rem + 0.15vw, 0.875rem)
		clamp(1.75rem, 1.6rem + 0.5vw, 2.25rem);

	/* 12px–14px | 24px–32px */
	--button-gap-small:
		clamp(0.75rem, 0.7rem + 0.15vw, 0.875rem)
		clamp(1.5rem, 1.35rem + 0.45vw, 2rem);
	
	/* content widht */
	--content-width-base: 1664px;
	--content-width-smaller: 1383px;

}

/* section
----------------------------------------*/


.section {
  	/* 48px → 64px */
	padding-left: var(--space-sm);
	padding-right: var(--space-sm);
	transition: .125s;
}

@media (min-width: 1360px){
	.section{
		padding-left: var(--space-5xl);
  		padding-right: var(--space-5xl);
	}
}

/* top + bottom
----------------------------------------*/

/* 12px */
.xs {
  padding-top: var(--space-xs);
  padding-bottom: var(--space-xs);
}

/* 16px */
.s {
  padding-top: var(--space-s);
  padding-bottom: var(--space-s);
}

/* 20px → 24px */
.sm {
  padding-top: var(--space-sm);
  padding-bottom: var(--space-sm);
}

/* 24px → 32px */
.m {
  padding-top: var(--space-m);
  padding-bottom: var(--space-m);
}

/* 32px → 40px */
.ml {
  padding-top: var(--space-ml);
  padding-bottom: var(--space-ml);
}

/* 36px → 48px */
.l {
  padding-top: var(--space-l);
  padding-bottom: var(--space-l);
}

/* 48px → 64px */
.xl {
  padding-top: var(--space-xl);
  padding-bottom: var(--space-xl);
}

/* 56px → 80px */
.xl-2 {
  padding-top: var(--space-2xl);
  padding-bottom: var(--space-2xl);
}

/* 64px → 96px */
.xl-3 {
  padding-top: var(--space-3xl);
  padding-bottom: var(--space-3xl);
}

/* 72px → 112px */
.4xl {
  padding-top: var(--space-4xl);
  padding-bottom: var(--space-4xl);
}

/* 80px → 128px */
.xl-5 {
  padding-top: var(--space-5xl);
  padding-bottom: var(--space-5xl);
}

/* 96px → 160px */
.xl-6 {
  padding-top: var(--space-6xl);
  padding-bottom: var(--space-6xl);
}

/* 112px → 192px */
.xl-7 {
  padding-top: var(--space-7xl);
  padding-bottom: var(--space-7xl);
}

/* 128px → 224px */
.xl-8 {
  padding-top: var(--space-8xl);
  padding-bottom: var(--space-8xl);
}

/* 144px → 256px */
.xl-9 {
  padding-top: var(--space-9xl);
  padding-bottom: var(--space-9xl);
}

/* 160px → 272px */
.xl-10 {
  padding-top: var(--space-10xl);
  padding-bottom: var(--space-10xl);
}

/* 192px → 320px */
.xl-11 {
  padding-top: var(--space-11xl);
  padding-bottom: var(--space-11xl);
}


/* button
----------------------------------------*/

.elementor-button{
	padding: var(--button-gap-base);
	border-radius: 2rem;
	font-size: 1rem;
}

.elementor-button .elementor-button-text{
	font-size: var(--font-size_topline-btn);
	line-height: 135%;
}

/*-- primary --*/

.elementor-button-default .elementor-button{
	background-color: var(--e-global-color-secondary);
}

.elementor-button-default .elementor-button:hover{
	background-color: var(--e-global-color-38a0569);
}



/* global slider
----------------------------------------*/

.custom-slider-section:not(.slider-is-active) .custom-slider{
	display: none;
}

body:is(.elementor-editor-active) .custom-slider-section:not(.slider-is-active) .custom-slider{
	display: flex;
}

.custom-slider-section .elementor-button-slider-arrow.previous{
	transform: scaleX(-1);
}

.custom-slider-section .slick-disabled a{
	cursor: not-allowed;
}

.custom-slider-section .jet-listing-grid__slider-icon{
	display: none!important;
}


/* topline
----------------------------------------*/ 

.topline  {
    padding: 8px 10px;
    border-radius: 20px;
    border: 1px solid var(--e-global-color-2d649dc);
    display: flex;
    align-items: center;
    gap: .5rem;
    background-color: rgba(255,255,255, .05);
}

.topline:before{
    content: "";
    display: flex;
    border-radius: 1rem;
    width: 1.125rem;
    height: 1.125rem;
    background-color: var(--e-global-color-2d649dc);
    border: 4px solid #53495A;
}