/* Simple responsive styles for Admiral Research demo site */

* {
	box-sizing: border-box;
}

html, body {
	height: 100%;
}

body {
	font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: #0b1220;
	margin: 0;
	line-height: 1.5;
	background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
}

.container {
	max-width: 1100px;
	margin: 0 auto;
	padding: 28px;
}

.site-header {
	background: transparent;
	padding: 18px 0;
}

.header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.brand {
	display: flex;
	align-items: center;
	gap: 12px;
	text-decoration: none;
	color: inherit;
}

.logo {
	width: 56px;
	height: 56px;
}

.brand-text {
	display: flex;
	flex-direction: column;
	line-height: 1;
}

.brand-name {
	font-weight: 800;
	letter-spacing: 0.2px;
}

.brand-sub {
	font-size: 12px;
	color: #667085;
}

.nav a {
	margin-left: 18px;
	color: #0b1220;
	text-decoration: none;
	font-weight: 600;
}

/* Language switcher in header */
.lang-switch {
	display: inline-flex;
	gap: 6px;
	align-items: center;
	margin-left: 12px;
}
.lang-btn {
	background: transparent;
	border: 1px solid transparent;
	color: inherit;
	padding: 6px 8px;
	border-radius: 6px;
	cursor: pointer;
	font-weight: 700;
	font-size: 13px;
}
.lang-btn:hover { background: rgba(11,105,255,0.06); }
.lang-btn.active {
	background: #0b69ff;
	color: #fff;
	border-color: transparent;
}

.nav a.cta {
	background: #0b69ff;
	color: #fff;
	padding: 8px 12px;
	border-radius: 8px;
}

.hero {
	padding: 72px 0 56px;
	background: radial-gradient(800px 340px at 10% 12%, rgba(11,105,255,0.06), transparent 18%);
	position: relative; /* establish containing block for overlay */
	overflow: hidden;
}

/* Use the supplied hero image as a responsive background (WebP preferred, JPG fallback) */
.hero {
	background-image: url('assets/financial-data-1600.webp');
	background-size: cover;
	background-position: center right;
	background-repeat: no-repeat;
}

/* Smaller devices: use smaller image to save bandwidth */
@media (max-width: 720px) {
	.hero { background-image: url('assets/financial-data-800.webp'); background-position: center; }
}

/* Fallback for browsers that don't support WebP: use JPG */
@supports not (background-image: url('data:image/webp;base64,UklGR')) {
	.hero { background-image: url('assets/financial-data.jpg'); }
}

.hero-inner {
	text-align: left;
	padding: 18px;
}

.hero-grid {
	display: grid;
	grid-template-columns: 1fr 420px;
	gap: 28px;
	align-items: center;
}

/* subtle overlay for improved text contrast while keeping image visible */
.hero::before {
	content: '';
	position: absolute;
	inset: 0;
	/* slightly stronger dark overlay to improve contrast over a dark image */
	background: linear-gradient(180deg, rgba(3,7,18,0.45) 0%, rgba(3,7,18,0.32) 30%, rgba(3,7,18,0.18) 60%, rgba(3,7,18,0.08) 100%);
	pointer-events: none;
	z-index: 0;
}

/* Ensure hero content sits above the overlay */
.hero-inner, .hero-grid, .hero-copy { position: relative; z-index: 1 }

/* Lighten hero text for readability on dark image */
.hero-copy, .hero-copy h1, .hero-copy p, .hero-copy .highlights, .hero-copy .highlights li {
	color: #ffffff;
}
.hero-copy .subtitle { color: rgba(255,255,255,0.9); }
.hero-copy h1 { text-shadow: 0 4px 18px rgba(2,6,23,0.6); }
.hero-copy p { text-shadow: 0 2px 8px rgba(2,6,23,0.45); }
.hero-copy .highlights li { color: rgba(255,255,255,0.92); }

/* Make the ghost button visible over the dark hero */
.hero .btn.ghost { background: transparent; border-color: rgba(255,255,255,0.85); color: #fff }

.hero-visual img { width: 100%; max-width: 420px; display:block }

.hero-copy .highlights { margin:14px 0 0; padding-left:18px }
.hero-copy .highlights li { margin-bottom:8px }

.hero h1 {
	font-size: 38px;
	margin: 0 0 12px;
	color: #ffffff; /* ensure default hero h1 is light */
	line-height: 1.05;
}
.hero-copy h1 { color: #ffffff; text-shadow: 0 6px 28px rgba(2,6,23,0.7); }

.subtitle {
	color: #334155;
	margin: 0 0 20px;
	max-width: 62ch;
}

.btn {
	display: inline-block;
	background: #0b69ff;
	color: #fff;
	padding: 12px 18px;
	border-radius: 10px;
	text-decoration: none;
	font-weight: 700;
	margin-right: 8px;
}

.btn.ghost {
	background: transparent;
	border: 2px solid #0b69ff;
	color: #0b69ff;
}

.section {
	padding: 44px 0;
	border-top: 1px solid #eef2f7;
}

.about p {
	max-width: 70ch;
	color: #334155;
}

.grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 20px;
}

.card { background: #fff; padding:18px; border-radius:10px; box-shadow:0 6px 18px rgba(16,24,40,0.04) }

.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;margin-top:16px}
.team-card{background:#fff;padding:12px;border-radius:10px;text-align:center;box-shadow:0 6px 18px rgba(16,24,40,0.04)}
.team-card img{width:96px;height:96px;border-radius:50%;display:block;margin:0 auto 12px}

.section.alt{background:linear-gradient(180deg,#fbfdff,#ffffff);}

.site-footer{background:linear-gradient(180deg,#ffffff, #fbfdff)}

.contact .contact-email {
	font-weight: 700;
	color: #0b69ff;
}

.site-footer {
	border-top: 1px solid #eef2f7;
	padding: 20px 0;
	background: transparent;
}

.footer-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	color: #64748b;
	font-size: 14px;
}

.footer-links a {
	margin-left: 12px;
	color: inherit;
	text-decoration: none;
}

.small {
	font-size: 13px;
	color: #94a3b8;
}

@media (max-width: 720px) {
	.header-inner { flex-direction: row; gap: 12px; }
	.hero h1 { font-size: 28px; }
	.nav { display: none; }
	.brand-sub { display: none; }
	.footer-inner { flex-direction: column; gap: 8px; }
}

@media (max-width: 720px) {
  /* keep the language switcher visible on small screens */
  .lang-switch { margin-left: 6px; }
}

/* visuals removed — styles for research visuals and case-study thumbnails deleted */