/* Main stylesheet. */

:root {
  --uncan-purple: #7A39C4;   /* rgb(122,57,196) */
  --uncan-magenta: #AC3CB4;  /* rgb(172,60,180) */
  --uncan-red: #F83A3A;      /* rgb(248,58,58) */
  --uncan-yellow: #FFAB00;   /* rgb(255,171,0) */
  --uncan-purple-dark: #2D1B4E;
  
  --bg-creme: #FDFCF8; 
  --text-main: #1A1128;
  
  --font-heading: 'Atkinson Hyperlegible', sans-serif;
  --font-body: 'Source Sans 3', sans-serif;
  
  --uncan-gradient: linear-gradient(90deg, 
                rgb(122,57,196) 0%, 
                rgb(122,57,196) 22.5%, 
                rgb(172,60,180) 46.5%, 
                rgb(248,58,58) 70.5%, 
                rgb(255,171,0) 91%);

}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
	font-family: var(--font-heading);
	line-height: 1.2;
	margin-top: 0;
}

h1, .h1 { font-size: clamp(40px, 5.5vw, 72px); font-weight: 700; letter-spacing: -0.02em; line-height: 1.2; }
h2, .h2 { font-size: clamp(32px, 4vw, 42px); font-weight: 600; letter-spacing: -0.02em; line-height: 1.2; }
h3, .h3 { font-size: 30px; font-weight: 600; letter-spacing: -0.02em; line-height: 1.2; }
h4, .h4 { font-size: 24px; font-weight: 500; letter-spacing: -0.02em; line-height: 1.2; }
h5, .h5 { font-size: 18px; font-weight: 500; }

/* The "Eyebrow" or Category text */
h6, .h6 { 
	font-size: 14px;
    font-weight: 700; 
	text-transform: uppercase; 
	letter-spacing: 0.1em;
	color: var(--uncan-red);
}

body {
	background-color: var(--bg-creme);
	font-family: var(--font-body);
	font-size: 17px;
    line-height: 1.65;
	color: var(--text-main);
	font-weight: 400;
}

/* The Yellow Action Button */
body input[type="button"], body input[type="submit"],
body .lqd-contact-form .wpcf7-submit,
body .wp-element-button {
	background-color: var(--uncan-yellow);
	color: var(--uncan-purple);
	padding: 22px 45px;
	border-radius: 12px;
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: 18px;
	text-decoration: none;
	display: inline-block;
	box-shadow: 0 10px 25px rgba(0,0,0,0.1);
}

body input[type="button"]:hover, body input[type="submit"]:hover,
body .lqd-contact-form .wpcf7-submit:hover {
	transform: translateY(-2px);
	filter: brightness(1.1);
	box-shadow: 0 15px 30px rgba(0,0,0,0.2);
}

/* Links and Lists */
a {
	color: var(--uncan-purple);
	text-decoration: none;
	font-weight: 500;
}

/* Custom Yellow Bullets */
.elementor-widget-text-editor ul {
	list-style: none;
	padding-left: 0;
}

.elementor-widget-text-editor ul li::before {
	content: "•";
	color: var(--uncan-yellow);
	font-weight: bold;
	display: inline-block; 
	width: 1em;
	margin-left: 0;
}

.eyebrow {
    font-family: var(--font-header);
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    margin-bottom: 20px;
    display: block;
    color: rgba(255, 255, 255, 0.85);
}

section.elementor-top-section > .elementor-container, .container.titlebar-container {
	padding: 0 8%;
	width: 100%;
}

#hero h1 {
	font-size: clamp(40px, 5.5vw, 72px);
    font-weight: 700;
    line-height: 1.05;
    margin-bottom: 30px;
    letter-spacing: -0.03em;
}

.main-gradient {
	background: linear-gradient(90deg, 
		rgb(122,57,196) 0%,      /* Purple start */
		rgb(122,57,196) 22.5%,   /* Solid purple stretch */
		rgb(172,60,180) 46.5%,   /* Magenta transition */
		rgb(248,58,58) 70.5%,    /* Red/Orange transition */
		rgb(255,171,0) 91%       /* Yellow end */
	);
}

.glow::after {
	content: "";
	position: absolute;
	top: -10%;
	right: -10%;
	width: 400px;
	height: 400px;
	background: radial-gradient(circle, rgba(172,60,180,0.1) 0%, rgba(255,171,0,0.05) 100%);
	filter: blur(60px);
	z-index: 0;
}

main.content .lqd-imggrp-img-container img {
    border-radius: 12px;
}

.main-header {
	background-color: rgba(255, 255, 255, 0.05);
	backdrop-filter: blur(15px);
	-webkit-backdrop-filter: blur(15px);
	border-bottom: 1px solid rgba(255,255,255,0.1);
}

.bgrnd-grad {
	background: var(--uncan-gradient);
	overflow: hidden;
}

ul.bullet-list-ul.inline-nav {
	list-style: none;
	margin-bottom: 45px;
	display: flex;
	gap: 40px;
	flex-wrap: wrap;
}

ul.bullet-list-ul.inline-nav li {
	font-weight: 600;
	font-size: 17px;
	display: flex;
	align-items: center;
	margin-bottom: 0;
}

ul.bullet-list-ul.inline-nav li::before {
	content: "";
	width: 14px;
	height: 14px;
	background-color: var(--uncan-yellow);
	border-radius: 50%;
	margin-right: 15px;
}

.main-header.is-stuck .wbm-hide-on-sticky {
	display: none;
}

.main-header.is-stuck {
	background-color: rgba(255, 255, 255, 0.3);
}

.main-header .main-nav .nav-item-children {
	padding-top: 40px;
	padding-bottom: 20px;
}

.main-header .main-nav .nav-item-children:before {
    margin-top: 20px;
    background: rgba(255, 255, 255, 0.7);
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);

}

.cutout-section-left,
.cutout-section-right {
	padding-top: 20px important;
	padding-bottom: 20px important;
}

.cutout-section-left > .elementor-container,
.cutout-section-right > .elementor-container {
	padding-top: 120px !important;
	padding-bottom: 120px !important;
}

.cutout-section-left {
    background-color: transparent !important;
    clip-path: polygon(0% 0%, 100% 10%, 100% 90%, 0% 100%);
}

.cutout-section-left::after {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color: rgba(255, 255, 255, 0.3);
    z-index: -2;
}

.cutout-section-left::before {
    content: "";
    position: absolute;
    top: 32px;
    left: 0;
    right: 0;
    bottom: 28px;
    background-color: var(--bg-creme);
    clip-path: polygon(0% 0%, 100% 10%, 100% 90%, 0% 100%);
    z-index: -1;
}

.cutout-section-right {
    background-color: transparent !important;
    clip-path: polygon(100% 0%, 0% 10%, 0% 90%, 100% 100%);
}

.cutout-section-right::after {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color: rgba(255, 255, 255, 0.3);
    z-index: -2;
}

.cutout-section-right::before {
    content: "";
    position: absolute;
    top: 32px;
    left: 0;
    right: 0;
    bottom: 28px;
    background-color: var(--bg-creme);
    clip-path: polygon(100% 0%, 0% 10%, 0% 90%, 100% 100%);
    z-index: -1;
}

#section-impact > .elementor-background-overlay {
    background-image: linear-gradient(to right, var(--bg-creme) 35%, rgba(253, 252, 248, 0.7) 100%), url('https://uncan-connect.eu/wp-content/uploads/2026/01/colorful-bgrnd.jpg');
    background-attachment: fixed;
    background-position: center right;
    background-repeat: no-repeat;
    background-size: cover;
}

#section-mission > .elementor-background-overlay {
	background-image: linear-gradient(to right, var(--bg-creme) 45%, rgba(253, 252, 248, 0.6) 100%), url('https://uncan-connect.eu/wp-content/uploads/2026/01/eu-flag.jpg');
    background-attachment: fixed;
    background-position: center right;
    background-repeat: no-repeat;
    background-size: cover;
}

/* 1. Force the Carousel Item into a Square Shape */
.carousel-partners .carousel-item {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.12);
    width: 180px !important;
    height: 180px !important; 
    border-radius: 24px;
    margin-right: 25px; 
    padding: 30px;
    display: flex !important;
    justify-content: center;
    align-items: center;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.carousel-partners .carousel-item img {
    max-width: 100%;
    max-height: 100%;
    width: auto !important;
    height: auto !important;
    object-fit: contain;
    filter: brightness(0) invert(1) opacity(0.5); 
    transition: all 0.4s ease;
}

.carousel-partners .carousel-item:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: var(--uncan-yellow, #FFD700);
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}

.carousel-partners .carousel-item:hover img {
    filter: brightness(1) invert(0) opacity(1);
    transform: scale(1.05);
}

.carousel-partners .flickity-viewport {
    height: 220px !important; 
    overflow: visible !important;
}

.main-footer {
	position: relative;
	z-index: 2;
}

#section-footer {
	background: radial-gradient(circle at 50% 0%, #46385e 0%, #4c3c66 100%);
	clip-path: polygon(0% 0%, 100% 16%, 100% 100%, 0% 100%);
    padding-top: 100px;
}

body ::-moz-selection {
    color: #f6fafb;
    background: #7A39C4;
}

body ::selection {
    color: #f6fafb;
    background: #7A39C4;
}

::-webkit-scrollbar-track {
	border-radius: 6px; 
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
	background-color: #F5F5F5;
}

::-webkit-scrollbar {
	border-radius: 10px;
	width: 6px;
	background-color: #F5F5F5;
}

::-webkit-scrollbar-thumb {
	border-radius: 6px;
	background: #7A39C4;
}

