/* 
Theme Name: De Ceunynck Ophthalmology
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-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 */


:root {
	--heading-1: clamp(2.5rem, 1.5625rem + 3.75vw, 4.375rem);
	--heading-2: clamp(2rem, 1.3125rem + 2.75vw, 3.375rem);
	--heading-3: clamp(1.625rem, 1.1875rem + 1.75vw, 2.5rem);
	--heading-4: clamp(1.375rem, 1.1875rem + 0.75vw, 1.75rem);
	--heading-5: clamp(1.25rem, 1.0938rem + 0.625vw, 1.5625rem);
	--heading-6: clamp(1rem, 0.875rem + 0.5vw, 1.25rem);
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: 200px;
}

html, body {
	overflow-x: clip;
}

.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    border: 0;
}

.e-con {	
    max-width: 100%;
}

/****************/
/*  TYPOGRAPHY  */
/****************/

.elementor-widget-text-editor > :last-child,
.elementor-widget-text-editor .elementor-widget-container > :last-child {
	margin-bottom: 0;
}
.elementor-widget-text-editor ol,
.elementor-widget-text-editor ul {
	margin-bottom: 1rem;
}

.elementor-widget-text-editor a {
	text-decoration: underline;
	text-underline-offset: .2em;
}

.elementor-widget-image a {
	width: 100%;
}
.elementor-widget-icon a {
	display: block;
}

a {
    color: currentColor;
}
b, strong { 
	font-weight: bold;
}

.elementor-heading-title,
.balance {
	text-wrap: balance;
}

.elementor-button {
	font-size: inherit;
}
.elementor-button-text {
	white-space: nowrap;
}

h1 { font-size: var(--heading-1); }
h2 { font-size: var(--heading-2); }
h3 { font-size: var(--heading-3); }
h4 { font-size: var(--heading-4); }
h5 { font-size: var(--heading-5); }
h6 { font-size: var(--heading-6); }


/***********/
/*  CARDS  */
/***********/

.morph-card {
	position: relative;
}
.morph-card__text {
	opacity: 0;
	transition: opacity .5s ease !important;
}
.morph-card__button {
	position: static;
	z-index: 1;
}
.morph-card__button .elementor-button {
	padding: 0 !important;
}
.morph-card__button .elementor-button:before {
	content: '';
	position: absolute;
	inset: 0;
}
.morph-card__button .elementor-button-content-wrapper {
	justify-content: start;
	position: relative;
	min-width: calc(1rem + 1em);
	max-width: 1em;
    padding: 0.5rem;
	overflow: clip;
	transition: max-width 0.5s ease !important;
}
.morph-card__button .elementor-button-text {
	padding-left: calc(.5rem + 1em);
	max-width: 1em;
	opacity: 0;
	overflow: clip;
	transition: max-width 0.5s ease, opacity .5s ease !important;
	interpolate-size: allow-keywords;
}
.morph-card__button .elementor-button-icon {
	position: absolute;
	inset: 0.5rem;
	right: auto;
	scale: 1.375;
}

.morph-card:hover .morph-card__text,
.morph-card:focus-within .morph-card__text {
	opacity: 1;
}

.morph-card:hover .morph-card__button .elementor-button-content-wrapper,
.morph-card:focus-within .morph-card__button .elementor-button-content-wrapper {
	max-width: 15em;
}
.morph-card:hover .morph-card__button .elementor-button-text,
.morph-card:focus-within .morph-card__button .elementor-button-text {
	max-width: 15em;
	opacity: 1;
}


/**************/
/*  CAROUSEL  */
/**************/

.dc-carousel .swiper {
    overflow: visible;
    clip-path: inset(0 -100vw -2rem 1px);
	margin-inline: -.5rem;
}
.dc-carousel .swiper-wrapper {
    height: 300px;
    overflow: visible !important;
}
.dc-carousel .swiper-slide {
    transition: opacity .3s ease;
	padding-inline: .5rem;
}
.dc-carousel .swiper-slide:not(.swiper-slide-active) {
    opacity: .25;
}
.dc-carousel .swiper-slide-inner {
    margin-right: 1.5rem;
}

.dc-carousel figure, 
.dc-carousel img {
    display: block;
    height: 100%;
	width: 100%;
    object-fit: cover;
}

.dc-carousel .elementor-swiper-button {
    position: absolute;
    top: 100% !important;
    left: 0 !important;
    bottom: 0 !important;
    transform: none !important;
    margin-top: .5rem;
	cursor: pointer;
}
.dc-carousel .elementor-swiper-button.elementor-swiper-button-next {
    left: 2.5rem !important;
}


/* Sitemap */

.elementor-widget-sitemap .elementor-sitemap-list {
	padding-left: 1.25rem;
}
.elementor-widget-sitemap .elementor-sitemap-item {
	margin-bottom: .25em;
}

/*************************/
/*  TECH SUPPORT POPOUT  */
/*************************/

#sidebar-tech-support {
	--sidebar-indent: 4rem;
    position: fixed;
    top: 20vh;
    right: 0;
	z-index: 99;
    translate: calc(100% - var(--sidebar-indent)) 0;
	transition: translate .4s ease;
}
#sidebar-tech-support:hover,
#sidebar-tech-support:focus-within {
	translate: 0 0;
}
@media (max-width: 767px) {
	#sidebar-tech-support {
		--sidebar-indent: 3rem;
	}
}

#sidebar-tech-support .widgettitle {
	display: none;
}
#sidebar-tech-support a:not(.elementor-button):hover,
#sidebar-tech-support a:not(.elementor-button):focus {
	text-decoration: underline;
}

