/* The Kelley Firm — site styles. No external resources. */

body {
	background: black;
	color: white;
	font-family: "SF Mono", "SFMono-Regular", ui-monospace, Menlo, Consolas, "Liberation Mono", monospace;
	font-weight: 400;
	font-style: normal;
	font-size: 1.3rem;
}

#main {
	margin: 50px auto;
	max-width: 80%;
}


/* Header banner */
.banner {
	background: white;
}
	.banner h1 {
		margin: 0;
		padding: 10px;
		text-align: center;
	}
	.banner a {
		color: black;
		text-decoration: none;
	}

/* Utility */
.center {
	text-align: center;
}

/* Buttons (also used on links) */
.btn {
	display: inline-block;
	font: inherit;
	padding: 8px 18px;
	cursor: pointer;
	border: 2px solid white;
	background: black;
	color: white;
	text-decoration: none;
}
	.btn:hover, .btn:focus-visible {
		background: white;
		color: black;
	}
	.btn:disabled {
		opacity: .4;
		cursor: default;
	}
	.btn[aria-current="page"] {
		border-color: rgba(75,75,75,1);
		color: rgba(255,255,255,.5);
	}

/* Primary call to action: larger, inverted */
#contact-open {
	font-size: 1.6rem;
	padding: 16px 40px;
	background: white;
	color: black;

}
	#contact-open:hover, #contact-open:focus-visible {
		background: black;
		color: white;
	}

/* Footer */
#footer {
	margin-top: 50px;
	border-top: 3px solid rgba(75,75,75,1);
	padding-top: 20px;
}
	#footer nav {
		display: flex;
		flex-wrap: wrap;
		gap: 15px;
		justify-content: center;
	}
	#footer .motto {
		color: rgba(255,255,255,.65);
		font-size: .8rem;
		margin-top: 30px;
		text-align: center;
	}
		#footer .motto b {
			font-size: .85rem;
		}

/* Dialogs (disclaimer + contact) */
dialog {
	background: black;
	color: white;
	font: inherit;
	border: 3px solid rgba(75,75,75,1);
	padding: 25px;
	max-width: min(60rem, 90vw);
}
	dialog::backdrop {
		background: rgba(0,0,0,.97);
	}
	dialog h2 {
		margin-top: 0;
	}
	dialog .actions {
		display: flex;
		gap: 15px;
		justify-content: flex-end;
		margin-top: 25px;
	}
	dialog a, dialog a:visited {
		color: #8ab4f8

	}

/* Contact form */
#contact input[name="answer"] {
	font: inherit;
	width: 4ch;
	margin-left: 10px;
	padding: 4px 8px;
	background: black;
	color: white;
	border: 2px solid white;
}
#contact-error {
	color: rgb(255, 25, 25);
	min-height: 1.3em;
}
#contact-email {
	text-decoration: none;
}

/* Honeypot: off-screen, not display:none (some bots skip hidden fields) */
.hp {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}
