/**
 * OTR Blog — brand tokens + base theme styles
 * Sourced from optimataxrelief.com globals.css / PRD §9
 */

:root {
	--otr-blue: #0c71c3;
	--otr-blue-deep: #1c50a4;
	--otr-blue-bright: #0273d0;
	--otr-blue-accent: #2ea3f2;
	--otr-navy: #1c3a6b;
	--otr-navy-cta: #204675;
	--otr-green: #7cda24;
	--otr-green-hover: #6bc91a;
	--otr-text: #333333;
	--otr-text-muted: #666666;
	--otr-bg: #ffffff;
	--otr-bg-soft: #fafafc;
	--otr-border: #e0e0e0;
	--otr-utility: #2a2f31;
	--otr-nav-text: #1a1a1a;
	--otr-dropdown-hover: #0976d5;
	--otr-font: "Poppins", Helvetica, Arial, sans-serif;
}

html {
	scroll-behavior: smooth;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

body {
	margin: 0;
	font-family: var(--otr-font) !important;
	color: var(--otr-text);
	background-color: var(--otr-bg);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

img,
picture,
video,
canvas,
svg {
	max-width: 100%;
	height: auto;
}

button,
input,
select,
textarea {
	font: inherit;
}

main {
	display: block;
}

/* Admin bar offset for sticky header */
body.admin-bar .otr-header {
	top: 32px;
}

@media screen and (max-width: 782px) {
	body.admin-bar .otr-header {
		top: 46px;
	}
}

body.otr-mobile-nav-open {
	overflow: hidden;
}

a {
	color: var(--otr-blue);
	text-decoration: none;
}

a:hover,
a:focus {
	text-decoration: none;
}

/* Shared buttons (header + reusable) */
.otr-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	height: 2.25rem;
	padding: 0 1rem;
	border-radius: 9999px;
	font-family: var(--otr-font);
	font-size: 0.75rem;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
	cursor: pointer;
	box-sizing: border-box;
}

.otr-btn--outline {
	border: 2px solid var(--otr-blue);
	background: transparent;
	color: var(--otr-blue);
}

.otr-btn--outline:hover,
.otr-btn--outline:focus-visible {
	background: var(--otr-blue);
	color: #fff;
}

.otr-btn--cta {
	border: 2px solid var(--otr-green);
	background: var(--otr-green);
	color: var(--otr-navy-cta);
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	box-shadow: 0 1px 3px rgba(28, 58, 107, 0.12);
}

.otr-btn--cta:hover,
.otr-btn--cta:focus-visible {
	background: var(--otr-green-hover);
	border-color: var(--otr-green-hover);
	color: #fff;
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(28, 58, 107, 0.18);
}
