@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&family=Lora:ital,wght@0,400;0,500;1,400&display=swap');

:root {
	--background: 252 50% 98%;
	--foreground: 240 10% 3.9%;
	--card: 0 0% 100%;
	--card-foreground: 240 10% 3.9%;
	--popover: 0 0% 100%;
	--popover-foreground: 240 10% 3.9%;
	--primary: 210 70% 45%;
	--primary-foreground: 210 40% 98%;
	--secondary: 210 20% 95%;
	--secondary-foreground: 210 20% 30%;
	--muted: 240 4.8% 95.9%;
	--muted-foreground: 240 3.8% 46.1%;
	--accent: 240 4.8% 95.9%;
	--accent-foreground: 240 5.9% 10%;
	--destructive: 0 84.2% 60.2%;
	--destructive-foreground: 210 40% 98%;
	--border: 240 5.9% 90%;
	--input: 240 5.9% 90%;
	--ring: 210 70% 45%;
	--radius: 0.75rem;
}

* { border-color: hsl(var(--border)); }
html {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

body {
	background-color: #fdfcfb;
	font-family: 'Montserrat', sans-serif;
	color: #333;
}

h1, h2, h3 { font-family: 'Lora', serif; }

.gradient-text {
	background: linear-gradient(135deg, hsl(var(--primary)) 0%, #6a8cff 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	color: transparent;
}

.soft-shadow {
	box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -2px rgba(0, 0, 0, 0.05);
}

.soft-shadow-lg {
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.05), 0 4px 6px -4px rgba(0, 0, 0, 0.05);
}

/* About section fine-tuning */
.about-title {
	letter-spacing: -0.02em; /* slightly tighter like on screenshot 2 */
}

.about-copy p {
	letter-spacing: 0.01em;
}

@media (min-width: 768px) {
	.about-copy p { line-height: 1.9; }
}

	/* Make brand icons readable on colored buttons */
	.brand-icon-contrast {
		filter: drop-shadow(0 1px 1px rgba(0,0,0,0.15));
	}
