:root {
	--accent: #6c5ce7; /* trendy purple */
	--accent-2: #00d1b2; /* teal pop */
	--dark: #0f0f14;
	--muted: #7b7f8a;
}
html {
	scroll-behavior: smooth;
}
body {

	font-family: 'Poppins', system-ui, -apple-system, Segoe UI, Roboto, Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji";
	color: #1a1d21;
#	background-image: url("/p/vadviragok.jpg");
#	background-size: cover;
	/* scales image to cover whole screen */
#	background-position: center;
	/* keeps image centered */
#	background-repeat: no-repeat;
	/* prevents tiling */
}
h1, h2, h3, .display-1, .display-2 {
	font-family: 'Playfair Display', serif;
	letter-spacing: .3px;
}

/* Navbar */


.zapfino {
  font-family: 'Zapfino', cursive, sans-serif;
}
.navbar {
	backdrop-filter: saturate(180%) blur(10px);
	background: rgba(255,255,255,.8) !important;
}
.navbar .nav-link {
	font-weight: 500;
}
.navbar .nav-link.active {
	color: var(--accent) !important;
}

.bg-light-trans {
  background-color: rgba(248, 249, 250, 0.7); /* Bootstrap light with 70% opacity */
}

/* Hero */
.hero {
	position: relative;
#	background: linear-gradient(120deg, #f7f7fb 0%, #aaf7ff 100%);
  background: linear-gradient(
    120deg,
    rgba(247, 247, 251, 0.8) 0%,   /* light gray, 80% opacity */
    rgba(170, 247, 255, 0.5) 100%  /* aqua, 50% opacity */
  );
	overflow: hidden;
}
.hero .bg-accent {
	position: absolute;
	inset: -20% -10% auto auto;
	width: 60vmax;
	height: 60vmax;
	background: radial-gradient(closest-side, rgba(108,92,231,.15), transparent 65%);
	transform: rotate(25deg);
}
.hero-cta .btn {
	padding: .8rem 1.2rem;
	border-radius: 14px;
}

/* Section helpers */
section {
	padding: 80px 0;
}
.section-heading {
	margin-bottom: 1rem;
}
.italic {
		font-style: italic;
}
.eyebrow {
	text-transform: uppercase;
	letter-spacing: .2em;
	color: var(--accent);
	font-weight: 600;
	font-size: .85rem;
}
.lead-muted {
	color: var(--muted);
}

/* About */
.about-photo {
	border-radius: 20px;
	box-shadow: 0 15px 35px rgba(0,0,0,.08);
}

/* Gallery */
.filter-chip {
	cursor: pointer;
}
.portfolio-card {
	transition: transform .25s ease, box-shadow .25s ease;
	border: none;
	border-radius: 18px;
	overflow: hidden;
}
.portfolio-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 40px rgba(0,0,0,.12);
}
.portfolio-card img {
	aspect-ratio: 4/3;
	object-fit: cover;
}
.badge-soft {
	background: rgba(108,92,231,.1);
	color: var(--accent);
}

/* CV */
.timeline {
	border-left: 3px solid var(--accent);
	padding-left: 1rem;
}
.timeline .item {
	position: relative;
	margin-bottom: 1.25rem;
}
.timeline .item::before {
	content: "";
	position: absolute;
	left: -1.4rem;
	top: .2rem;
	width: .75rem;
	height: .75rem;
	background: var(--accent);
	border-radius: 999px;
	box-shadow: 0 0 0 4px rgba(108,92,231,.15);
}

/* Contact */
.contact-card {
	border-radius: 20px;
}

/* Footer */
footer {
	background: var(--dark);
	color: #cfd3dc;
}
footer a {
	color: #cfd3dc;
}

/* Back to top */
#backToTop {
	position: fixed;
	right: 1rem;
	bottom: 1rem;
	z-index: 1040;
	display: none;
}
