/*
Theme Name: Wellness Centered
Theme URI: https://www.wellnesscentered.ca/
Author: Wellness Centered Counselling
Author URI: https://www.wellnesscentered.ca/
Description: The official website theme for Wellness Centered Counselling. A warm, simple layout with a centered logo, page-based navigation and the signature sand-to-white gradient header and footer.
Version: 1.0.1
Requires at least: 5.9
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: wellness-centered
Tags: one-column, custom-logo, custom-menu, full-width-template, translation-ready
*/

/* ==========================================================================
   1. Reset
   ========================================================================== */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
body { line-height: 1; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
table { border-collapse: collapse; border-spacing: 0; }
article, aside, footer, header, hgroup, nav, section { display: block; }

/* ==========================================================================
   2. Base typography
   ========================================================================== */
body {
	font-family: Verdana, Helvetica, sans-serif;
	font-size: 17px;
	color: #3e0309;
	background-color: #fff;
	line-height: 1.7em;
	font-weight: 500;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
input, textarea, select { font-family: 'Ubuntu', Helvetica, Arial, Lucida, sans-serif; }

a { text-decoration: none; color: #0000ff; }
a:hover { text-decoration: none; }

h1, h2, h3, h4, h5, h6 {
	color: #638224;
	font-family: Century Gothic, serif-serif;
	font-weight: bold;
	padding-bottom: 10px;
	line-height: 1em;
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { color: inherit; }
h1 { font-size: 30px; }
h2 { font-size: 26px; }
h3 { font-size: 26px; }
h4 { font-size: 18px; }
h5 { font-size: 16px; }
h6 { font-size: 14px; }

p { padding-bottom: 1em; line-height: 1.7em; }
p:last-of-type { padding-bottom: 0; }
strong, b { font-weight: bold; }
em, i { font-style: italic; }
pre, code { font-family: Courier New, monospace; margin-bottom: 10px; }
sup, sub { height: 0; line-height: 1; position: relative; vertical-align: baseline; }
sup { bottom: 0.8em; }
blockquote { border-left: 5px solid #2EA3F2; padding-left: 20px; margin: 0 0 1em; }
blockquote p { padding-bottom: 0; }

#left-area ul, .entry-content ul, .comment-content ul { list-style-type: disc; padding: 0 0 23px 16px; line-height: 26px; }
#left-area ol, .entry-content ol, .comment-content ol { list-style-type: decimal; list-style-position: inside; padding: 0 0 23px 0; line-height: 26px; }
#left-area ul li ul, .entry-content ul li ol, .comment-content ul li ul, .comment-content ul li ol { padding: 2px 0 2px 20px; }
#left-area ol li ul, .entry-content ol li ol, .comment-content ol li ul, .comment-content ol li ol { padding: 2px 0 2px 35px; }

img { max-width: 100%; height: auto; }
embed, iframe, object, video { max-width: 100%; }

input { -webkit-appearance: none; }
input[type=checkbox] { -webkit-appearance: checkbox; }
input[type=radio] { -webkit-appearance: radio; }
input[type=text], input[type=email], input[type=url], input[type=search], input[type=tel], input.text, input.title, textarea, select {
	background-color: #fff;
	border: 1px solid #bbb;
	padding: 2px;
	color: #4e4e4e;
	margin: 0;
}
input[type=text]:focus, input[type=email]:focus, input[type=url]:focus, input[type=search]:focus, input[type=tel]:focus, textarea:focus, select:focus { border-color: #2D3940; color: #3e3e3e; }
textarea { padding: 4px; }

.entry-content table { border: 1px solid #eee; margin: 0 0 15px 0; text-align: left; width: 100%; }
.entry-content tr th, .entry-content thead th { color: #555; font-weight: bold; padding: 9px 24px; }
.entry-content tr td { border-top: 1px solid #eee; padding: 6px 24px; }

.clear { clear: both; }
.clearfix:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
* html .clearfix { zoom: 1; }
*:first-child + html .clearfix { zoom: 1; }

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}
.skip-link:focus {
	clip: auto;
	clip-path: none;
	height: auto;
	width: auto;
	left: 6px;
	top: 7px;
	padding: 12px 20px;
	background: #fff;
	color: #333;
	font-size: 14px;
	line-height: normal;
	z-index: 100000;
	text-decoration: none;
}

/* ==========================================================================
   3. Layout
   ========================================================================== */
.container { text-align: left; margin: 0 auto; width: 1080px; position: relative; }

/* ==========================================================================
   4. Header
   ========================================================================== */
#main-header {
	line-height: 23px;
	font-weight: 500;
	top: 0;
	width: 100%;
	padding: 18px 0 0 0;
	min-height: 43px;
	position: relative;
	z-index: 99999;
	background-color: #fff;
	background-image: linear-gradient(to bottom, #E5DCBD, #fff);
	background-repeat: repeat-y;
	box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
	-moz-transition: all 0.2s ease-in-out;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
#main-header .container { text-align: center; }
#main-header .logo-link { display: inline-block; }
#logo {
	float: none;
	display: inline-block;
	padding: 10px 0 8px;
	margin-bottom: 18px;
	-moz-transition: all 0.2s ease-in-out;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
#site-title { padding-bottom: 0; }
#site-title a { color: #638224; }

#top-navigation { float: none; }
nav#top-menu-nav { display: inline-block; padding-top: 10px; }
#top-menu { float: none; list-style: none; padding: 0; margin: 0; }
#top-menu li { display: inline-block; font-size: 17px; padding-right: 22px; position: relative; }
#top-menu > li:last-child { padding-right: 0; }
#top-menu a { color: #666; text-decoration: none; display: block; position: relative; }
#top-menu a:hover { color: #333; }
#top-menu > li > a { padding-bottom: 14px; }

/* Drop-down sub-pages */
#top-menu li ul {
	position: absolute;
	top: 37px;
	left: -27px;
	padding: 20px;
	z-index: 9999;
	width: 200px;
	background: #fff;
	visibility: hidden;
	opacity: 0;
	border-top: 3px solid #2EA3F2;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
	text-align: left;
	-moz-transition: opacity .2s ease-in-out;
	-webkit-transition: opacity .2s ease-in-out;
	transition: opacity .2s ease-in-out;
}
#top-menu li:hover > ul, #top-menu li:focus-within > ul { opacity: 1; visibility: visible; }
#top-menu li li { padding: 0; margin: 0; display: block; }
#top-menu li li a { font-size: 14px; padding: 10px 20px; width: 160px; -webkit-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out; }
#top-menu li li a:hover { color: #111; background-color: rgba(0, 0, 0, 0.03); }
#top-menu li li ul { z-index: 1000; top: -3px; left: 220px; }
#top-menu .menu-item-has-children > a:first-child, #top-menu .page_item_has_children > a:first-child { padding-right: 14px; }
#top-menu .menu-item-has-children > a:first-child:after, #top-menu .page_item_has_children > a:first-child:after {
	content: ' >\0000a0';
	font-size: 9px;
	position: absolute;
	right: 0;
	top: 2px;
	transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
}
#top-menu li li.menu-item-has-children > a:first-child:after, #top-menu li li.page_item_has_children > a:first-child:after { right: 20px; }

/* Mobile navigation */
#mobile-nav-menu { float: right; display: none; }
.mobile_nav { position: relative; }
.mobile_nav .select_page { display: none; }
.mobile_menu_bar { position: relative; display: inline-block; width: 32px; height: 32px; }
.mobile_menu_bar:before {
	content: "";
	position: absolute;
	left: 5px;
	top: 6px;
	width: 22px;
	height: 3px;
	border-radius: 1px;
	background: #2EA3F2;
	box-shadow: 0 8px 0 #2EA3F2, 0 16px 0 #2EA3F2;
}
.mobile_menu {
	position: absolute;
	left: 0;
	top: 51px;
	padding: 5%;
	background: #fff;
	width: 90%;
	visibility: visible;
	opacity: 1;
	display: none;
	z-index: 9999;
	border-top: 3px solid #2EA3F2;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
	list-style: none;
	text-align: left;
	overflow: hidden;
}
.mobile_menu li ul { visibility: visible !important; display: block !important; padding-left: 10px; list-style: none; }
.mobile_menu li li { padding-left: 5%; }
.mobile_menu li a {
	border-bottom: 1px solid rgba(0, 0, 0, 0.03);
	color: #666;
	padding: 10px 5%;
	width: 90%;
	display: block;
	font-size: 14px;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.mobile_menu li a:hover { color: #111; background-color: rgba(0, 0, 0, 0.03); }
.mobile_menu .menu-item-has-children > a, .mobile_menu .page_item_has_children > a { font-weight: bold; background-color: rgba(0, 0, 0, 0.03); }
.mobile_menu li .menu-item-has-children > a, .mobile_menu li .page_item_has_children > a { background-color: transparent; }

/* ==========================================================================
   5. Main content
   ========================================================================== */
#main-content .container { padding-top: 58px; }
#left-area { float: none; width: 100%; padding-bottom: 23px; }
.main_title { display: none; }
.entry-content:after, .post-content:after { content: ""; display: table; clear: both; }

/* Image alignment */
.alignright { float: right; }
.alignleft { float: left; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; clear: both; }
img.alignleft { display: inline; float: left; margin-right: 15px; }
img.alignright { display: inline; float: right; margin-left: 15px; }
img.aligncenter { display: block; margin: 0 auto; }
.wp-caption { border: 1px solid #ddd; text-align: center; background-color: #f3f3f3; margin-bottom: 10px; max-width: 96%; padding: 8px; }
.wp-caption.alignleft { margin: 0 10px 10px 0; }
.wp-caption.alignright { margin: 0 0 10px 10px; }
.wp-caption img { margin: 0; padding: 0; border: 0 none; }
.wp-caption p.wp-caption-text { font-size: 12px; padding: 0 4px 5px; margin: 0; }
.wp-block-image figcaption { font-size: 12px; text-align: center; }

/* Signature content styles used throughout the site's pages */
.phone { float: right; margin-top: 4%; font-size: 24pt; position: absolute; margin-left: 69%; }
.home-questions { font-size: 17px; line-height: 25px; margin-bottom: 3%; }
#home-image, .wc-image {
	border: 4px solid #e4dbbc;
	box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.7);
	-moz-box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.7);
	-webkit-box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.7);
}
.wc-contact-link { font-size: 21pt; }
.wc-text-block { margin-top: 5%; }
.div-left { float: left; margin-right: 4%; }
.div-right { float: right; margin-left: 2%; }
.footer-phone { color: #638224; font-size: 26px; }
a.smallblue, a.bigblue { color: #fff !important; }
a.big-button { margin: 8px 6px 8px 42%; }
.last { margin-left: -21%; width: 69%; }

/* Blog listing / single posts */
.post-meta { font-size: 14px; padding-bottom: 15px; color: #666; }
.post-meta a { text-decoration: none; color: #666; }
.entry-title { padding-bottom: 12px; }
.blog-post { padding-bottom: 40px; }
.blog-post .featured-image { padding-bottom: 7px; }
.more-link { font-weight: bold; }
.pagination, .navigation { clear: both; text-align: right; border-top: 1px solid #e2e2e2; padding-top: 13px; margin-bottom: 30px; font-size: 14px; }
.pagination a, .pagination span, .navigation a { color: #666; margin: 0 5px; }
.pagination .current, .pagination a:hover, .navigation a:hover { color: #2EA3F2; }
.nav-previous { float: left; }
.nav-next { float: right; }
.page-links { clear: both; padding: 10px 0; }

/* Comments */
#comments { padding-top: 17px; }
.commentlist { list-style: none; padding: 0; }
.commentlist li { padding: 15px 0; border-bottom: 1px solid #e2e2e2; }
.commentlist .children { list-style: none; padding-left: 40px; }
.comment-author .fn { color: #000; font-weight: 700; font-size: 16px; }
.comment-meta { font-size: 13px; color: #666; padding-bottom: 8px; }
.comment-reply-link { color: #2EA3F2 !important; font-size: 13px; }
#respond { padding-top: 17px; }
#commentform p { padding-bottom: 12px; }
#commentform label { display: block; padding-bottom: 4px; }
#commentform textarea { width: 100%; box-sizing: border-box; }
.form-submit input { display: block; color: #2EA3F2 !important; cursor: pointer; }

/* Search form */
.search-form { padding-bottom: 20px; }
.search-form label { padding-right: 8px; }
.search-submit { cursor: pointer; }

/* ==========================================================================
   6. Footer
   ========================================================================== */
#main-footer {
	background-image: linear-gradient(to top, #E5DCBD, #fff);
	background-repeat: repeat-y;
}
#footer-bottom { height: 220px; background-color: transparent; padding: 15px 0 5px; }
#footer-info {
	text-align: left;
	color: #666;
	padding-bottom: 10px;
	float: left;
	margin-left: 13%;
	font-size: 60%;
	padding-left: 90px;
}
#footer-info a { font-weight: 700; color: #666; }

/* ==========================================================================
   7. Responsive
   ========================================================================== */
@media only screen and ( min-width: 981px ) and ( max-width: 1100px ) {
	.container { width: 960px; }
}

@media only screen and ( max-width: 980px ) {
	.container { width: 690px; }
	#main-content .container:before { display: none !important; }
	#mobile-nav-menu { display: block; float: none; position: relative; }
	#main-header #mobile-nav-menu { margin-top: 8px; }
	#top-menu { display: none; }
	nav#top-menu-nav { display: none; }
	#main-header { padding-bottom: 18px; }
	#logo { margin-bottom: 0; max-height: 43px; padding: 2px 0 5px; }
	#top-navigation { margin-right: 0; }
	#main-header .mobile_nav {
		display: block;
		text-align: left;
		background-color: rgba(0, 0, 0, 0.05);
		-moz-border-radius: 5px;
		-webkit-border-radius: 5px;
		border-radius: 5px;
		padding: 5px 10px;
	}
	.mobile_nav .select_page { display: inline-block; color: #666; }
	.mobile_menu_bar { position: absolute; right: 5px; top: 2px; }
	#footer-info { float: none; text-align: center; margin-left: 0; padding-left: 0; }
}

@media only screen and ( max-width: 767px ) {
	.container { width: 400px; }
	#top-navigation { margin-right: 0; }
	#commentform input[type="text"], #commentform input[type="email"], #commentform input[type="url"] { width: 100%; box-sizing: border-box; }
	.last { margin-left: 0; width: auto; }
	.phone { position: static; float: none; margin: 0; }
}

@media only screen and ( max-width: 479px ) {
	.container { width: 280px; }
	#top-navigation { margin-right: 0; }
}
