/* Base Reset */
* {margin: 0; padding: 0; box-sizing: border-box;}

html {height: 100%; padding-bottom: 1px;}
body {
	font: normal 15px -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	color: #345;
	line-height: 1.5;
}
body.layout {
	background: #FCFCFC no-repeat center top fixed;
}

/* Typography */
a {
	color: #06A;
	text-decoration: none;
	transition: color 0.2s ease;
}
a:hover {color: #036;}

p {margin: 0 0 1rem;}

h1 {font: normal 2em -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;}
h2 {font: normal 1.5em -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;}
h3 {font: bold 1.2em -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;}
h1,h2,h3 {
	margin: 1.5rem 0 1rem;
	color: #2D3748;
}

blockquote {
	background: #F9F9F9 url('/images/winterplain/quote.gif') no-repeat;
	border: 1px solid #EAEAEA;
	border-radius: 8px;
	color: #555;
	font: normal 1em sans-serif;
	margin: 1.5rem 0;
	padding: 1.5rem 1.5rem 1.5rem 40px;
}

code {
	display: block;
	white-space: pre;
	background: #FFFFF6;
	border: 1px solid #EED;
	border-radius: 6px;
	padding: 1rem;
	overflow: auto;
	margin: 1.5rem 0;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

/* Lists */
ul,ol {margin: 0 0 1em 1.4em;}
ul ul, ul ul ul, ul ul ul ul, ol ol, ol ol ol, ol ol ol ol {margin: 0 0 0 1.4em;}

/* Forms */
fieldset {
	padding: 1rem;
	background: #EFE;
	color: #232;
	border: 1px solid #DED;
	border-radius: 8px;
	margin-bottom: 1rem;
}
legend {
	font: bold 1em -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	padding: 0 0.75rem;
	color: #363;
}

/* Images */
img {border: none;}
img.bordered,.post img {
	background: #FFF;
	padding: 0.5rem;
	border: 1px solid #DDD;
	border-radius: 4px;
}
img[align="left"], img.left {margin-right: 1rem;}
img[align="right"], img.right {margin-left: 1rem;}

small,.small {font-size: 0.875rem;}

/* Form Elements */
input.submit {
	background: #4F46E5;
	color: white;
	padding: 0.75rem 1.5rem;
	border-radius: 6px;
	border: none;
	font-weight: 500;
	transition: all 0.2s ease;
	cursor: pointer;
}
input.submit:hover {
	background: #4338CA;
	transform: translateY(-1px);
}
input#s {
	background: #FCFCFC;
	font: normal 1rem sans-serif;
	border: 1px solid #E2E8F0;
	border-radius: 6px;
	padding: 0.75rem 1rem;
	width: 100%;
	max-width: 320px;
	transition: all 0.2s ease;
}
input#s:hover {background: #FFF;}
input#s:focus {
	outline: none;
	border-color: #4F46E5;
	box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.1);
}
textarea {
	width: 100%;
	max-width: 320px;
	border: 1px solid #E2E8F0;
	border-radius: 6px;
	padding: 0.75rem 1rem;
	transition: all 0.2s ease;
}

/* Layout */
#container {
	width: 95%;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 1.5rem;
}

#main {
	margin: 2rem 0;
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
}

#main_left {
	min-width: 0;
}


/* Header */
#top {
	margin: 2rem 0;
	padding: 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#site_title {
	font: bold 2.5em -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	color: #2D3748;
	margin: 0;
}
#site_description {
	font: normal 1rem -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	color: #718096;
	margin-top: 0.5rem;
}

/* Navigation */
.path {
	margin-bottom: 1.5rem;
	background: white;
	border: 1px solid #E2E8F0;
	border-radius: 8px;
	padding: 1rem;
	box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

#nav {
	font-size: 1rem;
	position: relative;
}

#nav ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#nav > ul > li {
	display: inline-block;
	position: relative;
	margin: 0 0.5rem;
}

#nav a {
	color: #2D3748;
	text-decoration: none;
	display: block;
	padding: 0.75rem 1rem;
	border-radius: 6px;
	transition: all 0.2s ease;
	white-space: nowrap;
}

#nav a:hover,
#nav a#current {
	background: #F7FAFC;
	color: #4F46E5;
}

/* Dropdown Menus */
#nav > ul > li > ul {
	display: none;
	position: absolute;
	top: 100%;        /* Changed from calc(100% - 5px) */
	left: 0;
	min-width: 200px;
	background: white;
	border: 1px solid #E2E8F0;
	border-radius: 8px;
	box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
	z-index: 1000;
	padding: 0.5rem;
}

#nav > ul > li:hover > ul {
	display: block;
}

#nav > ul > li > ul > li {
	display: block;
	margin: 0;
	position: relative;  /* Added to establish positioning context */
}

/* Third Level */
#nav > ul > li > ul > li > ul {
	display: none;
	position: absolute;
	top: 0;           /* Aligns with parent li */
	left: 100%;       /* Positions right after parent */
	min-width: 200px;
	background: white;
	border: 1px solid #E2E8F0;
	border-radius: 0 8px 8px 0;
	border-left: none;
	box-shadow: 0 4px 0px -1px rgba(0, 0, 0, 0.1);
	z-index: 1001;
	padding: 0.5rem;
	margin-left: 8px;  /* Removes double border appearance */
}

#nav > ul > li > ul > li:hover > ul {
	display: block;
}

/* Breadcrumbs */
.breadcrumbs {
	margin: 1.5rem 0;
	font-size: 0.875rem;
	color: #718096;
}

.breadcrumbs .container {
	padding: 0;
}

.breadcrumbs a {
	color: #4A5568;
	text-decoration: none;
	transition: color 0.2s ease;
}

.breadcrumbs a:hover {
	color: #2D3748;
}

.breadcrumbs .separator {
	color: #CBD5E0;
	margin: 0 0.75rem;
}

.breadcrumbs .current {
	color: #2D3748;
	font-weight: 500;
}

/* Content Areas */
.article {
	background: white;
	border-radius: 12px;
	box-shadow: 0 1px 3px rgba(0,0,0,0.05);
	padding: 1.5rem;
	margin-bottom: 1.5rem;
	border: 1px solid #E2E8F0;
}

#sidebar .content {
	background: white;
	border-radius: 12px;
	box-shadow: 0 1px 3px rgba(0,0,0,0.05);
	padding: 1.5rem;
	margin-bottom: 1.5rem;
	border: 1px solid #E2E8F0;
}

/* Social media buttons */
.social-icons {
	margin-top: 10px;
	margin-left: 50px;
	display: flex;
	gap: 20px;
	align-items: center;
}

a.facebook {
	background: url('/images/winterplain/facebook.png') no-repeat left top;
	background-size: contain;
	width: 30px;
	height: 30px;
	margin: 0;
}

a.instagram {
	background: url('/images/winterplain/instagram.png') no-repeat left top;
	background-size: contain;
	width: 30px;
	height: 30px;
	margin: 0;
}

a.youtube {
	background: url('/images/winterplain/youtube.png') no-repeat center;
	background-size: contain;
	width: 30px;
	height: 30px;
	margin: 0;
}

/* Footer */
#footer {
	border-top: 1px solid #E2E8F0;
	padding: 2rem 0;
	margin-top: 3rem;
	color: #718096;
}

#footer a {
	color: #4A5568;
	transition: color 0.2s ease;
}

#footer a:hover {
	color: #2D3748;
}

/* Utilities */
.clearer {clear: both;}
.left {float: left;}
.right {float: right;}
.bold {font-weight: 600;}
.light, .light a {color: #718096;}
.odd {background: #F7FAFC;}

/* Responsive Design */
@media (max-width: 1024px) {
	#main {
		flex-direction: column;
	}

	#main_right {
		width: 100%;
	}
}

@media (max-width: 768px) {
	body {
		font-size: 14px;
	}

	#container {
		width: 100%;
		padding: 0 1rem;
	}

	#top {
		flex-direction: column;
		text-align: center;
	}

	.social-icons {
		margin-top: 1rem;
		margin-left: 0;
		justify-content: center;
	}

	#nav > ul {
		flex-direction: column;
	}

	#nav > ul > li {
		display: block;
		margin: 0;
		padding-bottom: 0;
	}

	#nav > ul > li > ul,
	#nav > ul > li > ul > li > ul {
		position: static;
		width: 100%;
		box-shadow: none;
		margin-left: 1rem;
	}

	.breadcrumbs {
		font-size: 0.75rem;
	}

	.breadcrumbs .separator {
		margin: 0 0.5rem;
	}
}

/* Gallery */
#gallery_content {
	margin-bottom: 14px;
}

#bigimagebox {
	width: 600px;
	margin: 5px;
	position: relative;
}

#bigimagebox .imagebox {
	width: 120px;
	height: 130px;
	float: left;
	margin: 15px;
	position: relative;
}

#bigimagebox .imagebox #title {
	width: 120px;
	position: relative;
	top: 5px;
	left: 0;
	overflow: hidden;
	font-size: smaller;
}

img.thumb_image {
	margin: auto;
}

/* Calendar */
#calendar_header {margin-bottom: 20px;}
#calendar_footer {margin-top: 20px;}

/* Comments */
.commentlist {margin: 1em 0 0; font-size: 0.9em;}
.commentlist li {list-style: none; padding: 8px 10px 1px;}
.commentlist .post .date {margin-bottom: 3px;}