/*
Theme Name: Cemetery Lovers 2025
Theme URI: https://cemeterylovers.com/
Author: Andrew Kantor
Author URI: https://kantor.com/
Description: A simple, hand-rolled theme for Dale and Tina.
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: my-custom-theme
*/

html {
	font-size: 14px;
	text-align: left;
	/* height: 100%; */
	background: #222;
	}	

/* apply a natural layout model to all elements */
/* THIS IS CRITICAL. It makes the whole margin and padding thing work properly. */
*, *:before, *:after {
  -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
}

/* COLORS ----------------------------- */
:root {
	--cl-primary: #383838;
    --cl-secondary:#0c0c0c;
}

#foo {
    color: var(--cl-heds);
}

body {
	font-weight: normal;
	margin: 0 auto;
	background-color: #ccc;
	height: auto;
	font-size: 1.0rem;
	color: #0c0c0c;
/* 	max-width: 1200px; */
background: url("https://cemeterylovers.com/files/smallgraves-scaled.jpg") top center fixed;
background-repeat: no-repeat; 
}

/* HERE WE GO! ---------------------------------------------------------------------- */

.mobileonly {display: none;}

/* STRUCTURE ------------------------------------------------------ */

#home, #archive, #post, #single, #search, #page { }

#container {
	display: grid;
	grid-template-columns: 1fr;
	column-gap: 30px;
	justify-content: stretch;
	justify-items: stretch;
	align-items: start;
	grid-template-areas:
		"top"
    	"content"
		"footer";
	padding: 0 0 0 0;
	margin: 0 auto;
	width: 100% !important;
}

#topbackground {
	width: 100%;
	background-color: rgba(0,0,0,.60);
	}

#top {
	width: 100%;
	margin: 0 auto;
	background-color: rgba(0,0,0,.65);
	padding-bottom: 4px;
	}

#navigation {max-width: 1200px; margin: 0 auto; text-align:center;}

.search-form {
    display: flex;
    gap: 4.25em;
    margin-bottom: 2em;
    width: 100%;
}

.search-field {
    flex: 1;
    padding: 0.75em;
    font-size: 1.1em;
    box-sizing: border-box;
}

.search-submit {
    padding: 0.75em 1.25em;
    font-size: 1em;
    white-space: nowrap;
    margin: 0; /* kill theme-added margin */
    flex-shrink: 0; /* prevent the button from shrinking oddly */
}


#topcontent {	display: flex;
    flex-wrap: wrap; /* creates multiple rows */
    align-content: flex-start;
    justify-content: left;
	max-width: 1200px; margin: 0 auto;
	}

#topleft {
    flex-grow: 0; flex-shrink: 1;
    padding: 8px;
    margin: 0;
	text-align: left;
	}

#topright {
    flex: 0 1 300px;
    padding: 30px 0px 0 0;
    margin: 0 10px 0 auto;
	text-align: right;
	height: 100px;
}

#home #top {margin-bottom: 18px;}

#content {
	grid-area: content;
	display: grid;
	grid-template-columns: 2fr 1fr;
	column-gap: 30px;
	justify-content: stretch;
	justify-items: stretch;
	align-items: start;
	grid-template-areas:
		"mainbar sidebar";
	padding: 20px 40px;
	margin: 10px auto 0 auto;
	border-radius: 10px 10px 0 0;
	max-width: 1200px;
	background-color: rgba(255,255,255,.85);
}

	#mainbar {
		grid-area: mainbar;
		margin: 0; 
		padding-bottom: 20px;
		display: flex;
			flex-wrap: wrap; /* creates multiple rows */
			align-content: flex-start;
			justify-content: left;
		}

	#sidebar {
		grid-area: sidebar;
		margin: 0 0 0 0;
		padding: 10px 20px;
		border-radius: 6px 6px 0 0;
		text-align: left;
		background-color: #cccccc; 
		height: 100%;
	}

#footer {
		grid-area: footer;
		background-color: #222;
		color: #cdcdcd;
		text-align: center;
		padding: 20px;
}

/* HOME PAGE BOXES ------------------------- */

.toppost {
	clear:both;
	margin: 2.5em 1% 36px 0;
	padding: 10px 12px;
	border: 4px solid #1e3364;
	border-radius: 10px;
	background-color: #eee;
	text-align: left;
	min-height: 100px;
}

.toppost h3 { margin-top: 0; }

.homepost2 {
	clear:both;
	margin: 4px 1% 24px 0;
	padding: 10px 12px;
	border: 1px solid #ccc;
	border-radius: 10px;
	text-align: left;
	min-height: 100px;
}

.homepost2 h3 { margin-top: 0; }

.homepost3 {
	clear:both;
	margin: 4px 1% 2px 0;
	padding: 10px 12px;
	text-align: left;
	min-height: 100px;
}

.homepost3 h3 { 
	font-size: 1.2rem;
	margin: 0 0 6px 0;
 }

.homepost3 p {
		font-size: .85rem;
}

#mission p { 
	font-size: 1.2rem;
}

/* GENERAL FORMATTING ------------------------------------------------- */

html, body {font-family: Lato, Arial, sans-serif;}

p, li, h5 {font-family: Merriweather, Lora, Georgia, 'Times New Roman', serif; font-weight: normal; }

h1, h2, h3, h4 {font-family: Lato, Arial, sans-serif; font-weight:bold; font-weight: 700; }

p {
    font-size: 1.0rem;
	line-height: 1.75;
 	margin: 0 0 .5em 0;
}

#sidebar p { font-size: .95rem; }

h2, h3, h4 {
	text-align: left;
	font-weight: bold;
}

h1, h2 {
	line-height: 1.05;
	text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
}

h1 {
	color: white; 
	background-color: var(--cl-primary);
	padding: 2px 10px 10px 10px;
	font-size: 3.0rem;
	font-weight: bold;
	letter-spacing: -1px;
	margin: 0 0 .5em 0;
	width: 100%;	
	border-radius: 5px 5px 5px 0;
}

#home h1 { 
	font-size: 2.5rem;
	margin: 0 0 24px 0;
}

h2:first-of-type {
	border-top: none;
}

h2, .title {
	font-size: 2.75rem;
	margin: 8px 0 .6em 0;
	border-top: 2px solid #ececec; 
	letter-spacing: -1px;
}
.page h2 {margin-top: 24px;}
.entry h2 {margin-bottom: .25em;}
#sidebar h2 { font-size: 2.25rem; margin-top: 1em; }
	
h3 {
	font-size: 1.4rem;
	margin: 1.5em 0 12px 0;
	line-height: 130%;
	color: var(--cl-primary);
    transform:scale(1,1.15) !important;
}

#sidebar h3 { padding: 3px 5px 5px 5px; border-radius: 4px; color: black; background-color: #999999; }
.sidebox h3 {margin-top: 0;}

h4  {
	font-size: 1.25rem;
	font-weight: bold;
	margin: 1.25em 0 6px 0;
	letter-spacing: -.75px;
}

#sidebar h4 { margin-bottom: 6px; }

h5 { 
	display: block; 
	font-weight: normal; 
	font-weight: 400;
	font-size: .7rem; 
	font-style: italic; 
	text-align:left; 
	color: black; 
	line-height: 1.35; 
	margin: 1.5em 0 3em 0 !important;
}

h6, .caption, .wp-caption-text {
	font-style:italic;
	font-size: .8rem;
	text-align: center;
}

ul, ol {
	margin: 0 0 1em 32px;
	padding: 0;
	text-align: left;
}

ul { list-style-type: square; }

li {
	font-weight: 400;
	font-size: 1.0rem;
	line-height: 1.5;
	margin: 0 10% 4px 8px;
	padding: 0;
	text-align: left;
}

blockquote, q, .excerpt {
	font-size: 95%;
	line-height: 1.15;
	margin: 10px 10% 10px 32px;
	padding-left: 10px;
	border-left: 6px solid Silver;
	font-style: italic; 
}

pre, code {
	font-family: 'Courier New', Courier, monospace;
	font-size: .8rem;
	line-height: 1.05;
	padding-left: 0;
	margin: 6px 0 6px 0;
	text-align: left;
	border: none;
	width: 90%;
}

small { 
	display: block; 
	font-weight: normal; 
	font-weight: 400;
	font-size: .8rem; 
	text-align:left; 
	color: black; 
	line-height: 1.35; 
}


img, figure {
	max-width: 100%;
	height: auto;
}

.alignright, img.attachment-thumbnail {
	float: right !important;
    display: block; 
	margin-left: 20px;
}

.alignleft {
	float: left !important;
	margin-right: 20px;
}

.aligncenter {padding: 10px 20px;}
.center, .aligncenter {display: block; text-align: center; margin-left: auto; margin-right: auto;}

hr { 
	border: 0; 
	height: 2px; 
	background: #333; 
	background-image: linear-gradient(to right, #59a1d2, #333, #59a1d2); 
	margin-bottom: 10px;
}

.dek {
	font-size: 120%;
	font-style: italic;
	color: #969696;
	line-height: 1.4em;
	margin: 0 30% 24px 0;
}

.date {font-size: .85rem; font-style: italic;}

.entry { padding: 10px; margin: 0 0 20px 0; width: 100%; border: 1px solid #ccc;}
.entryimage {display: block; float: left; width: auto; max-width: 120px; margin: 5px 15px 15px 0;}
.entrytext {}

sup { vertical-align: top; position: relative; top: -0.5em; }

#menu-main-menu ul {
	text-indent: 0 !important;
   	padding-left: 0 !important;
}

li { text-align:left; margin-bottom: 3px; font-size: 1rem;}

/* MISCELLANEOUS FORMATTING ------------------------------------ */

.jump::first-line { padding-left:-60px !important; }

.jump {
	text-align: left;
	border-top: 2px solid #b5bfb5;
	border-bottom: 2px solid #b5bfb5; 
	background: #d1d1d1;
	margin-bottom: 24px;
	padding: 15px; 
	font: bold 1.15em Lato, Tahoma, Calibri, Arial, Verdana, sans-serif; 
}

.jump p {margin-bottom:0;}

.center {text-align:center !important; margin-left: auto !important; margin-right:auto !important;}
.larger {font-size: 125% !important; line-height: 1.3 !important;}
.narrow {width: 75%;}
.blue {color: #1e3364;}

.copyright {font-size: .8rem;}
.topborder {border-top:1px solid #cecece;}

/* BOXES ---------- */
.clearbox, .whitebox {padding:10px; border: 1px solid #cecece; border-radius:5px; margin: 10px;}
.graybox {padding:10px; background: #cecece; border: 1px solid #acacac; border-radius:5px; margin: 10px;}
.graybox h3 {margin-top: 0 !important;}
.clearbox h3 {margin-top: 0 !important;}
.whitebox h3 {margin-top: 0 !important;}

.right {float: right; margin: 10px 0 10px 10px;}
.left {float: left; margin: 10px 10px 10px 0;}

.pct33 {width:33%;}
.pct50 {width:49%;}

.trans10 {background: rgba(255,255,255,.1);}
.trans20 {background: rgba(255,255,255,.2);}
.trans40 {background: rgba(255,255,255,.4);}
.trans60 {background: rgba(255,255,255,.6);}
.trans80 {background: rgba(255,255,255,.8);}

 .cover {object-fit: cover;}
 .contain {object-fit: contain;}
 .fill {object-fit: fill;}




/* SIDEBAR STUFF --------------------------------- */

.sidebox {
	clear:both;
	text-align:left;
	margin: 0 auto 12px auto;
	padding: 20px;
	box-shadow: 0 0 3px #cacaca;
	background-color: #ececec;
	border-radius: 10px 10px 0 0;
}

.sideboxtop img { 
    width: 100%;
    overflow: hidden;
}

.sideboxtop h2 {
	display: block;
	position: absolute;
	bottom: 0; 
	left: 0;
	margin: 0;
	padding: 1% 2%;
	width: 100%;
	font: bold 1.6rem/1.0 Roboto;
	font-size: calc(20px + 1.25vw);
	color: white;
	background-color: rgba(0,0,0,.65);
	text-shadow: 2px 2px rgba(0,0,0,.65);
	text-align: left; 
	text-transform: none;
}

.sideboxbottom {
	padding: 10px;
	color: purple;
}

.sideboxbottom p {
	font: normal 1.1rem/1.6 Georgia;
	color: black;
	margin: 0 0 1em 0;
}

.sidebar-category-description {
	width: 80%;
	margin: 0 auto 1.5em auto;
}

/* BUTTONS --------------------------------------------------------- */

.button1 {
	background:gradient( linear, left top, left bottom, color-stop(0.05, #026596), color-stop(1, #4197ee) );
	background-color:#026596;
	border:1px solid #469df5;
	border-radius:10px;
	text-indent:0px;
	display:inline-block;
	color:#ffffff;
	font-size:15px;
	font-weight:normal;
	font-style:normal;
	line-height:30px; 
	text-decoration:none;
	text-align:center;
	text-shadow:1px 1px 0px #545254;
}

.button1:hover {
	background:gradient( linear, left top, left bottom, color-stop(0.05, #4197ee), color-stop(1, #026596) );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#4197ee', endColorstr='#026596');
	background-color:#4197ee;
}

.button1:active {
	position:relative;
	top:1px;
}

/* LINKS -------------------------------------------------------- */
a {
    color: #59a1d2;
        transition: all .2s ease-in-out;
	    -webkit-transition: all .2s ease-in-out;
       -moz-transition: all .2s ease-in-out;
       -ms-transition: all .2s ease-in-out;
       -o-transition: all .2s ease-in-out;
}

a:link {
     color: #005E9F;
     background-color: transparent;
     text-decoration: none;
}

a:active {
     color: #005E9F;
     background-color: transparent;
     text-decoration: underline;
}

a:visited {
     color: #005E9D;
     background-color: transparent;
     text-decoration: underline;
}

a:hover     {
     color: black;
     text-decoration: underline;
     background-color: transparent;
}

body#tinymce {height:auto !important;}

/* SMALL SCREENS ----------------------------------- */	 
/* SMALL SCREENS ----------------------------------- */	 
/* SMALL SCREENS ----------------------------------- */	 
@media all and (max-width: 800px) {

.hideme {display: none !important;}
.mobileonly {display: block;}
.halfboxopen { display: none; }

body {background-color: rgba(255, 255, 255, 1.00);}

h2 {font-size: 2.0rem !important;}
h4 {font-size: 1.0rem !important;}

/*  STILL SMALL SCREENS ----------------------------------- */	 

#content {
	grid-template-columns: 1fr !important;
	grid-template-areas:
    	"mainbar"
		"sidebar";
	margin: 0 auto 0 auto;
	padding: 0 12px 20px 12px;
	height: 100%; }

/* STILL SMALL SCREENS ----------------------------------- */	 

#mainbar {padding: 0 15px; margin: 10px 0 !important;}
div {clear:both; width: 100% !important;} 
/* This forces all the columns to full width */

#sidebar {margin-top: 2em !important;}

#sidebar h1:first-of-type {margin-top: 24px !important; clear:both;}

/* -------------- END MEDIA QUERIES for SMALL SCREENS */
/* -------------- END MEDIA QUERIES for SMALL SCREENS */
/* -------------- END MEDIA QUERIES for SMALL SCREENS */
 }
 
 