* {
	margin: 0;
	padding: 0;
}



a:hover {
	text-decoration: none;
}

body {
	line-height: 1.75em;
	background: linear-gradient(135deg, #e6edf5, #f0f4f8);  /* Subtle gradient background */
	font-size: 14pt; /* Larger base font size */
	color: #2c3e50;  /* Softer dark blue instead of pure black */
}

body,input {
	font-family: Kreon, serif;
}

br.clearfix {
	clear: both;
    display: block;
    height: 0;
    visibility: hidden;
}

h1,h2,h3,h4 {
	text-transform: uppercase;
	font-weight: normal;
}

h2 {
	font-size: 1.5em;
}

h2,h3,h4 {
	font-family: "Open Sans", sans-serif;
	color: #34495e;  /* Rich blue-gray instead of black */
	margin-bottom: 1em;
    text-shadow: 1px 1px 0px rgba(255, 255, 255, 0.5);
}

h3 {
	margin-top: -20px;
	font-size: 1.5em;  /* Increased from 1.25em */
}

h4 {
	font-size: 1em;
}

img.alignleft {
	float: left;
	margin: 0px 30px 20px 0;

    width: auto;        /* Maintain aspect ratio */
}

img.alignmiddle {
    display: block;
    margin: 0 auto 20px auto;
    
    height: auto;
}

img.aligntop {
	margin: 0px 0 10px 0;
}

p {
	margin-top: -.5em;
	margin-bottom: 1.5em;
	color: #2c3e50;  /* Matching body text color */
    font-size: 1.2em; /* Larger paragraph text */
}

ul {
	margin-bottom: 1.5em;
}

ul h4 {
	margin-bottom: 0.35em;
}

a {
	color: #2A3436;
}

.box {
	margin: 20px 0 30px 0;     /* Reduced bottom margin from 50px to 30px */
    padding: 30px 30px 15px 30px;  /* Reduced bottom padding from 30px to 15px */
    background: linear-gradient(to bottom right, rgba(255, 255, 255, 0.5), rgba(248, 250, 252, 0.5));
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    overflow: hidden;  /* Added to contain floated content */
    position: relative; /* Added for proper stacking */
}

.box::after {
    content: '';
    display: table;
    clear: both;
    margin-bottom: 15px;  /* Added to ensure space after content */
}

.box p {
    width: 100%;
    text-align: left;
}

#content {
	font-size: 18px; /* Larger content font size */
	padding: 0;
	width: calc(100% - 300px);  /* Leave space for sidebar */
    padding: 0 40px;
    box-sizing: border-box;
    margin-left: 300px;  /* Push content to the right */
}

#footer {
	opacity: 0;
	transition: opacity 1s ease-in-out;
	padding: 20px 0 80px 0;
	text-align: center;
	text-shadow: 1px 1px 0px rgba(255,255,255,0.7);
	color: #587477;
}

#footer a {
	color: #587477;
}

#header {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100px;
    margin: 0; /* Ensure no extra space */
    padding: 0px;
    position: relative
}

#logo {
    position: absolute;
    left: 40px; /* Changed from 30px to match content padding */
    height: 130px;
    line-height: 130px;
}

#logo a {
	color: #dad4db;
	text-decoration: none;
}

#logo h1 {
	font-family: "Open Sans", sans-serif;
	font-size: 3em;
    color: #000000; /* Darker logo text */
}

#menu {
    line-height: 57px;
    position: absolute;
    right: 40px;
    top: 20px;
    height: 57px;
	font-family: "Open Sans", sans-serif;
}

#menu a {
	text-transform: uppercase;
	text-decoration: none;
	color: #000000; /* Darker menu text */
	font-size: 1.3em; /* Larger menu text */
}

#menu ul {
	padding: 0 20px 0 20px;
	list-style: none;
}

#menu ul li {
	display: inline;
	padding: 10px 10px 10px 10px;
	margin: 0 8px 0 8px;
}

#menu ul li.active {
	background: linear-gradient(to bottom right, #f8f9fa, #e9ecef);
	border: solid 1px #BFB5A4;
	box-shadow: inset 0px 0px 0px 1px #fff;
	text-shadow: 1px 1px 0px rgba(255,255,255,0.9);
}

#menu ul li.active a {
	color: #403B31;
}

#page {
	margin: 0;
	position: relative;
	width: 100%;
    max-width: none; /* Remove max-width constraint */
    padding: 20px 40px;
	box-sizing: border-box;
}

#page .section-list {
	padding-left: 0;
	list-style: none;
}

#page .section-list li {
	padding: 25px 0 25px 0;
	clear: both;
}

#page ul {
	list-style: none;
}

#page ul li {
	border-top: solid 1px #DDD;
	padding: 10px 0 10px 0;
}

#page ul li.first {
	padding-top: 0;
	border-top: 0;
}

#page-bottom {
	padding: 40px 20px;
	color: #1a1a1a; /* Darker text */
	background: #ffffff; /* White background */
	position: relative;
	width: 100%;
	max-width: 1600px;
	margin: 0 auto;
	border-top: solid 1px #BFB5A4;
	box-shadow: inset 0px 0px 0px 1px #fff;
}

#page-bottom a {
	color: #1B1A18;
}

#page-bottom h2, #page-bottom h3, #page-bottom h4 {
	color: #3F3D39;
}

#page-bottom ul {
	list-style: none;
}

#page-bottom ul li {
	border-top: solid 1px #BAB5AB;
	padding: 10px 0 10px 0;
}

#page-bottom ul li.first {
	border-top: 0;
	padding-top: 0;
}


#page-bottom-content {
	width: 100%;
	margin: 0;
}

#page-bottom-sidebar {
	float: left;
	width: 250px;
}

#sidebar {
    display: block;
    position: fixed;
    left: 40px;  /* Align with content padding */
    top: 150px;  /* Below header */
    width: 260px;
    background: linear-gradient(to bottom right, rgba(255, 255, 255, 0.95), rgba(248, 250, 252, 0.95));
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 4px 25px rgba(0, 0, 0, 0.15);
    border-right: 1px solid rgba(163, 184, 204, 0.2);
}

#sidebar h3 {
    color: #000000;
    margin-top: 0;
    margin-bottom: 15px;
    font-size: 1.2em;
}

#sidebar ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

#sidebar ul li {
    padding: 10px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

#sidebar ul li:last-child {
    border-bottom: none;
}

#sidebar ul li a {
    color: #000000;
    text-decoration: none;
    font-size: 1.1em;
}

#wrapper {
	box-shadow: 0 0 200px rgba(0, 0, 0, 0.25);
	margin: 0;
	border-top: 0;
	border: solid 2px rgba(163, 184, 204, 0.3);
	width: 100vw;
	opacity: 1;
	transition: opacity 1s ease-in-out;
	position: relative;
	z-index: 10;
	background: linear-gradient(to right, rgba(255, 255, 255, 0.97), rgba(248, 250, 252, 0.97));
    backdrop-filter: blur(8px); /* Apply blur to everything behind */
    -webkit-backdrop-filter: blur(8px); /* Safari support */
    border-radius: 10px; /* Smooth edges */
    padding: 10px;
    box-sizing: border-box;
}

