/*
 Theme Name:   castle2025_wlwm1b-child
 Theme URI: https://castlewoodstudios.com
 Description:  child theme for castle2025_wlwm1b
 Author:       Castlewood Inc.
 Template:     castle2025_wlwm1b
 Version:      1.0.0
*/

/* Start Additional CSS Styles */



/*****************************************************/
/*     ### START ADDITIONAL CSS STYLES ###           */
/*       ### B&KRoofsOzarks.com 10-02-25 ###             */
/*     ### START ADDITIONAL CSS STYLES ###           */
/*****************************************************/

/* START Hide Post Date */
.post-date {display:none !important}

/******* CENTER LOGO change line 76,100,124 *******/
/******* CENTER Menu Items line 183 ***************/
/******* ADJUSTING Menu Bar change line 151,152,157,158,164,165,171,172,363,362,394 *******/

/*START Header Color and add line to bottom of header*/
#full_header > div.inner {
   background:#4169e2;
   border-bottom: 2px solid #00007e;
   margin-bottom:0px;
}
/*End Header Color and add line to bottom of header*/

#full_headercolumn1 {
	width:100%
}


/* START Change Color of Phone Number Link */
#block-2 a, #block-3 a {
	color:#ffffff;
	text-decoration: underline; /* Default is underline */
}
/* END Change Color of Phone Number Link */


/* Breakpoint for screens under 600px */
@media (max-width: 600px) {
#full_logo {
    margin: 0px auto 0px auto;
    padding: 0px 0px 0px 0px;
    width: 90%;
}

#block-2 {
	display:none;
}

#block-3 {
    margin:0px auto 10px auto;
	font-size:1.1em;
	font-weight:400;
	display:block;
	color: #ffffff;
}
	
p {padding: 0px;}	
	
}

/* Breakpoint for screens between 601px and 1025 */
@media only screen and (min-width: 601px) and (max-width: 1025px){
#full_logo {
    margin: -30px auto 0px auto;
    padding: 0px 0px 0px 0px;
    width: 325px;
    float:left; /*CENTER LOGO float:none*/
}

#block-2 {
	margin:0px auto 0px auto;
	font-size:1.1em;
	font-weight:400;
	text-align:right;
	display:block;
	color: #ffffff;
}
	
#block-3 {
	display:none;
}
}

/* Breakpoint for screens over 1026px */
@media only screen and (min-width: 1026px) {
#full_logo {
    margin: -50px auto 0px auto;
    padding: 0px 0px 0px 0px;
    width: 486px;
    float:left; /*CENTER LOGO float:none*/
}

#block-2 {
	margin:0px auto 0px auto;
    padding:10px 20px 10px 0px;
	font-size:1.1em;
	font-weight:400;
	text-align:right;
	display:block;
	color: #ffffff;
}
	
#block-3 {
	display:none;
}
}

	 
/******** START change MENU_BAR mobile first ************/
#menu_bar > div.inner {
	background: #4169e2;
	border-bottom: 0px solid #bf8ebf;
	color: #fff;/*set color of header_menu hamburger menu*/
	margin:0px 0px 0px 0px; /*Lower Menu Bar margin:0px 0px 0px 0px;*/
	padding: 0px 0px 0px 0px; /*Lower Menu Bar padding:0px 0px 0px 0px;*/
}

@media only screen and (min-width: 601px) and (max-width: 760px){
#menu_bar > div.inner {
	margin: 0px 0px 0px 0px; /*Lower Menu Bar margin:0px 0px 0px 0px;*/
	padding: 0px 0px 0px 0px; /*Lower Menu Bar padding:0px 0px 0px 0px;*/
}
}

@media only screen and (min-width: 761px) and (max-width: 1300px){
#menu_bar > div.inner {
	margin:-50px 0px 30px 0px; /*Lower Menu Bar margin:0px 0px 0px 0px;*/
	padding: 0px 5px 0px 0px; /*Lower Menu Bar padding:0px 0px 0px 0px;*/
}
}

@media only screen and (min-width: 1301px) {
#menu_bar > div.inner {
	margin:-50px 0px 30px 0px; /*Lower Menu Bar margin:0px 0px 0px 0px;*/
	padding: 0px 30px 0px 0px; /*Lower Menu Bar padding:0px 0px 0px 0px;*/
}
}


/*START adjust MENU BAR padding in Desktop and Hamburger*/
#menu_bar ul.menu, #menu_bar ul.maximenuck {
    padding:0px 0px 0px 0px; /* Don't Add Padding to Menu Text Here - See Below */
    margin:0px 0px 0px 0px;
	text-align:right; /*Center Menu Bar Itmes text-align:center;*/
}
/*END adjust MENU BAR padding in desktop and hamburger*/


/*START change color/weight of MENU BAR FONTS*/
#menu_bar ul.menu > li > a{
  color:#ffffff;
  font-size:0.85em;
  font-weight: bold;
  text-align:center;
  margin: 0px 3px 0px 3px;/* Autopimize of Minify will compress this automatically */
  padding: 4px 5px 4px 5px;
  background:none;
  border: .0px solid #000000;
}

@media (max-width: 757px){
#menu_bar ul.menu > li > a {
  color:#ffffff;
  font-size:22px;
  font-weight: normal;
  text-align:center;
  margin: 0px;
  padding: 8px 15px 8px 15px;
  background:none;
  border: .0px solid #000000;
}
	
#menu_bar > div.inner {
  padding: 0px 0px 0px 0px;
}		
}
/*END change color/weight of MENU BAR FONTS*/


/*START change font color/size of MENU BAR items on HOVER*/
#menu_bar ul.menu > li:hover > a {
    color: #ffffff;
    background:#00007e;
    border:none;
}
/*End change font color/size of MENU BAR items on HOVER*/


/*START styling "Active" links in menu_bar*/
#menu_bar ul.menu > li.current-menu-item > a{
 /*background: #FF69B4;*/
 text-decoration: none;
}
/*END styling "Active" links in menu_bar*/


/*****START MENU BAR SUB-MENU *****/

/*****MENU BAR Sub-Menu 1*****/
#menu_bar ul.menu li li a{
color:white;
font-size:.75em;
text-align:center;
background:#ef63e0;
border: black 1px solid;
width:auto;
}

/*****MENU BAR Sub-Menu 1 on hover*****/
#menu_bar ul.menu li li a:hover{
color:white;
font-size:.75em;
text-align:center;
background:#06edf3;
border: #ffba00 1px solid;
}

#menu_bar ul.menu > li.current-menu-ancestor > a {
	text-decoration:none /*underline*/;
}


@media (max-width: 757px){
#menu_bar ul.menu li li a {
display: block;
background: #1187E9;
border: #2B3188 1px solid;
color: #ffffff;
margin: 0px;
padding: 8px;
text-align: center;
font-size: 20px;
  width:auto;
}
	
#menu_bar ul.menu li li a:hover{
color:#ebd19a;
font-size:1.2em;
}	
}
/*****END MENU BAR SUB-MENU 1 *****/

/******** END change MENU_BAR mobile first ************/


/***********Start Responsive Banner/Hero Code***********/
/* START Banner Modifications */
@media only screen and (max-width: 600px) {
.banner1 {
min-height:300px !important;
}

.banner1text1 {
font-size:16px !important;
padding:0px 10px 0px 10px;
margin:10px auto 0px auto;
max-width:300px;
}

.banner1text2 {
font-size:18px !important;
padding:0px 10px 0px 10px;
margin:190px auto 0px 0px;
}	
}

@media only screen and (min-width: 600px) and (max-width:765px) {
.banner1 {
margin-top:-8px !important;		  
min-height:280px !important;
}

.banner1text1 {
font-size:18px !important;
padding:0px 10px 0px 10px;
margin:0px auto 0px auto;
max-width:600px;
}
	
.banner1text2 {
font-size:18px !important;
float:right;
padding:0px 10px 0px 10px;
margin:100px 50px 0px 0px;
}	
}

@media only screen and (min-width: 766px) and (max-width:1000px) {
.banner1 {
min-height:340px !important;
margin-top:-19px;
}

.banner1text1 {
font-size:20px !important;
padding:0px 10px 0px 10px;
margin:0px auto 0px auto;
max-width:700px;
}
	
.banner1text2 {
float:right;
font-size:20px !important;
padding:0px 10px 0px 10px;
margin:140px 50px 0px 0px;
max-width:370px;
}	
}

@media only screen and (min-width: 1001px) and (max-width:1300px) {
.banner1 {
min-height:340px !important;
margin-top:-19px;
}

.banner1text1 {
font-size:28px !important;
padding: 0px 0px 0px 0px;
max-width:900px;
margin: 0px auto 0px auto;
}

.banner1text2 {
float:right;
font-size:26px !important;
padding:0px 10px 0px 10px;
margin:120px 50px 0px 0px;
max-width:500px;
}	
}

@media only screen and (min-width: 1301px) {
.banner1 {
margin-top:-20px;
}

.banner1text1 {
padding: 0px 0px 0px 0px;
max-width:1000px;
margin: 0px auto 0px auto;
}
	
.banner1text2 {
padding: 0px 0px 0px 0px;
max-width:600px;
margin: 140px 80px 0px 0px;
float:right;
}
}
/* END */
/***********END Responsive Banner/Hero Code***********/


/*---------------START CONTENT and MAIN CONTENT AREA---------------*/

/*Start Hide "no comments/comments closed" text*/
.nocomments{display:none;}
/*End Hide "no comments/comments closed" text*/


/*START adjusting paragraph line height, color, and bottom margin*/
#maincontent p{
font-size:22px;
margin-bottom:15px;
line-height:1.4em;
}
/*END adjusting paragraph line height, color, and bottom margin*/

/*START setting default list styling*/
#maincontent ul, #maincontent ol{
		list-style-position:inside;
}

#maincontent ul li, #maincontent ol li {
	color: #363636;
}

#maincontent .blocks-gallery-item{/*So galleries aren't affected by the code above*/
	padding: 0;
	padding-left: 0;
	text-indent: 0;

}
/*END setting default list styling*/


/*Start Hide Page and Post Titles*/
.page-id-12 .entry-title {display: none;} /*Home Page*/
.page-id-28 .entry-title {display: none;} /*Privacy Page*/
.page-id-22 .entry-title {display: none;} /*About Page*/
.page-id-266 .entry-title {display: none;} /*Commercial Roofing Page*/
.page-id-26 .entry-title {display: none;} /*Contact Us Page*/
/*End Hide Page and Post Titles*/


/* START Hide All Titles on Widgets */
.widget-title {display: none;}
/* End Hide All Titles on Widgets */


/*START styling hr's*/
hr{
margin:10px auto;
width:80%;
clear:both;
}
/*END styling hr's*/       


/* -------------START Assign Fonts ------------- */
/* p{font-family: arial, sans-serif; font-family: 'Neuton', serif; font-family: 'Crimson Pro', serif;} */
/* -------------END Assign Fonts ------------- */

/**********START change size/color/font of h1-h6************/
h1,h2,h3,h4,h5,h6 {font-family: arial, sans-serif;}
h1, h1 span, h1 strong, h1 em{font-size: 1.8em;color: #000000;/*font-family: 'Crimson Pro', serif;*/}
h2, h2 span, h2 strong, h2 em{font-size:1.6em;color: #7a7a7a;/*font-family: 'Crimson Pro', serif;*/}
h3, h3 span, h3 strong, h3 em{font-size: 1.4em;color: #616161;/*font-family: 'Crimson Pro', serif;*/}
h4, h4 span, h4 strong, h4 em{font-size:1.2em;color: #000000;}
h5, h5 span, h5 strong, h5 em{font-size:1em;color: #000000;}
h6, h6 span, h6 strong, h6 em{font-size:.9em;color: #000000;}
/************END change size/color/font of h1-h6**************/


/***************--START styling Gutenberg blocks--*****************/

/*Start Adjust padding in content on mobile*/
@media (max-width: 700px){
#content > .inner {
	padding:0px 20px 0px 20px !important;
}
}
/*End Adjust padding in content on mobile*/

/* START add padding to grouped blocks */
.wp-block-group__inner-container{padding:10px 0px;}
/* End add padding to grouped blocks */

/**** START make column blocks display properly in Gutenberg ****/


/* Start Adjust padding and margin in each column*/
div.wp-block-column{
margin:25px 0px 5px 0px;
padding:5px 0px 5px 0px;
}
/* End Adjust padding and margin in each columns*/

/* Start Remove Margin from bottom of paragraphs in columns*/
div.wp-block-column p {
margin:0px 0px -15px 0px;
}
/* End Remove Margin from bottom of paragraphs in columns*/

/* START Ajust Padding & Margin for each Column */
@media (min-width:800px){
div.wp-block-column{
    margin:5px auto !important;
    padding:5px 20px;
 }
}
/* START Ajust Padding & Margin for each Column */

/*START make columns display properly on smaller-than-ipad screens*/
@media (max-width: 830px)/* Was set for 782px D.T. */{
.wp-block-columns {
    flex-basis: 100% !important;
    display:block;
	gap: 0em !important;
}
}
/*END make columns display properly on smaller-than-ipad screens*/

/*End make column blocks display properly in Gutenberg*/

/*Start make media/text blocks display properly in mobile mode*/
@media all and (max-width:757px){
.wp-block-media-text{
display:block;
}
}
/*End make media/text blocks display properly in mobile mode*/

/*START control wordpress galleries*/
#maincontent .wp-block-gallery {
padding:4px;
margin:0px auto 0px auto;
max-width:1000px; 
}

.wp-block-gallery img {
max-height:300px; 
max-width:auto;
}

/*START code to ensure galleries display on outdated ios versions*/
.wp-block-gallery .blocks-gallery-item {
    display: block;
}
/*END code to ensure galleries display on outdated ios versions*/
/*END control wordpress galleries*/

/* START Make YouTube videos align center I DON"T THINK WE NEED THIS DT */
.is-type-video {
    max-width: 800px;
	margin:0px auto 0px auto;
}
/* START Make YouTube videos align center I DON"T THINK WE NEED THIS DT */

/* START Fix YouTube Videos Not Centering on screens above 762px DT */
.wp-block-embed__wrapper {
     text-align: center;
}
/* END Fix YouTube Videos Not Centering on screens above 762px DT */


/*START turn off image floating in mobile mode except for specific class*/
@media all and (max-width:667px){
      .wp-block-image .alignleft,.wp-block-image .alignright {
        max-width:350px; /*Possible fix for images not centering in mobile*/
        /*display: block;  -- if enabled, you'll need to use the .inlinePics class on all pictures that shouldn't display as blocks in mobile mode*/
        }

       .wp-block-image .alignright>figcaption{
       display:block;
       }

      .inlinePics{
      display:inline;
      }
}
/*END turn off image floating in mobile mode except for specific class*/


/* START Fix Right/Left Pics Not Centering in Mobile */
@media only screen and (max-width: 450px){
.wp-block-image .alignright {
    float: none;
    margin: .5em auto .5em auto;
}

.wp-block-image .alignleft {
    float: none;
    margin: .5em auto .5em auto;
}
}
/* START Fix Right/Left Pics Not Centering in Mobile */

/* START Control Spacing of LIST */
ul, ol {line-height:1.2em;}
ol li { padding: 5px 0px; }
/* END Control Spacing of LIST */


/* START Ajust Location-Phone Widget & Photo Credits */
#location_phone a {color: #0218c2;}
/* END */


/* START Bottom Address & Phone Config */
#block-12 {line-height:28px;}
/* END */
/*-----------------------END styling Gutenberg blocks-------------------------------*/


/*************** START Contact Page & Google Map Fixes *******************/

/*---START CODE FOR CONTACT FORM 7 Plugin---*/
/* START control length of contact form 7 fields */
.wpcf7 input[type="text"],.wpcf7 input[type="email"],.wpcf7 textarea,.wpcf7 input[type="tel"]
{
    width: 90%;
}
/* END control length of contact form 7 fields */


/* START control length of contact form 7 messages */
.wpcf7-response-output
{
    width:70%;
}
/* END control length of contact form 7 messages */


/* START Change Contact Form 7 Submit Button */
.wpcf7-submit {
	font-size:16px;
	width:80px;
	padding:4px;
	background: #00007f;
	color:#ffffff;
	font-weight:bold;
}
/* END Change Contact Form 7 Submit Button */

/*---END CODE FOR CONTACT FORM 7 Plugin---*/


/*START Making Embedded Google Map "Responsive"*/
/*This responsive code works by positioning an iframe within a div. The
div's dimensions are determined by the iframe's hard-coded size.
Padding-bottom removes a percentage of the available bottom area equal to
the desired aspect ratio, resulting in responsive resizing*/

.responsiveMap-container {
    position: relative;/*So we can position the iframe within it*/
    padding-bottom: 48%;/*58.33%;Desired aspect ratio. 600px x 350px iframe means 350/600=.58333 or  58.33%*/
    padding-top: 35px;/*This is really only needed for YouTube video embeds*/
    height: 0;/*This allows the padding-bottom property to override the default div height*/
    overflow: hidden;/*The Iframe still hangs off the page, but the overflow is hidden*/
    max-width:800px;/*Keeps map from getting wider than we want*/  
    max-height:800px;/*Keeps map from getting taller than we want*/  
    margin: auto;  /*So things are nicely centered*/
}

.responsiveMap-container iframe {
    position: absolute;/*So we can position the iframe within the div
    --needed because of the 0px height*/
    top:0;/*the top left corner of the iframe is positioned at the very top
    of the div*/
    left: 0;/*the top left corner of the iframe is positioned at the very
    left of the div*/
    height: 100%;/*take up all vertical space available within the div
    (determined by the padding-bottom property*/
    max-height:auto;/*350px; Keeps map from getting bigger than we want*/
    width: 100%;/*take up all horizontal space available within the div
    (determined by the padding-bottom property*/
}
/*END Making Embedded Google Map "Responsive"*/

/*************** END Contact Page & Google Map Fixes *******************/


/*------------ START FANCYBOX Plugin modifications---------------------*/
/*START enlarge on hover for clickable pictures*/
.fancybox img{
  transition: transform .2s; /* Animation */
}

.fancybox img:hover{
  transform: scale(1.05); /* (105% zoom - Note: if the zoom is too large, it will go outside of the viewport) */
}
/*END enlarge on hover for clickable pictures*/

/*START making navigation arrows always display in easy fancybox-enabled wordpress galleries*/
#fancybox-left-ico { 
   left: 20px !important; 
}
#fancybox-right-ico {  
   right: 20px;  
   left: auto !important; 
}
/*END making navigation arrows always display in easy fancybox-enabled wordpress galleries*/
/*------------ END FANCYBOX Plugin modifications---------------------*/


/* START styling 404 error page */
.error404 #maincontent .inner{
margin:0px 5%;
}

.error404 #maincontent .inner h1{
text-align:center;
font-size:2em;
margin:25px 0px 25px 0px;
}

.error404 #content .inner {
	margin:0px 0px;
	padding:0px 0px;
}

.error404 .button {
	background:#00007f;
	font-size:20px !important;
	font-weight:normal;
	padding:7px 15px 7px 15px;
}

.error404 blockquote {
        text-align: center;
        font-size:32px;
        font-weight:600;
        line-height:1.1em;
        }

.unfoundpages {
        text-align: center;
        color:#cf0000;
        font-size:24px;
        font-weight:normal;
        line-height:1.1em !important;
        }
/* END styling 404 error page */


/********START utility class section*******/

/*clear margins*/.clear{clear:both;}

/**Hide things in mobile mode**/ .nomobile{display:none !important;}
@media (min-width:768px){ .nomobile{display:block !important;}	}

/**Hide things in desktop mode**/ .nodesktop{display:block !important;}
@media (min-width:667px){ .nodesktop{display:none !important;}	}

/*Make something bigger in mobile*/
@media all and (min-width:768px){.enlarge{font-size:2.6rem !important;} } 

/* START Remove borders with class "noborder"*/
#maincontent .noborder, #maincontent .noborder * {
border: 0px solid #000000 !important;
}
/* END */

/* START Add Border around pictures */
.picborder.wp-block-image img {
border: 3px solid #9d4848;
}
/* END */

/* START Add Border around columns */
.columnborder {
border:1px solid #dcdcdc;
border-radius: 20px;
}
/* END */

/* START Hide block, pictures, video, etc */
.hide {display:none !important;}
/* END */

/* START Fix Captions to Center of Images */
figcaption {
text-align: center;
font-size: .5em !important;
font-style: italic;
}
@media only screen and (min-width: 558px) {
	figcaption {
	font-size: .8em !important;
}
}
/* END */

/* START Zero Padding on images and blocks */
.nopadding {
padding:0px 0px 0px 0px !important;
}
/* END */

/* START Zero Margins on images and blocks */
.nomargin {
margin:0px 0px 0px 0px !important;
}
/* END */

/* START Style a Group of Block */
.groupbox {padding:10px 10px 10px 10px;}
/* END */

/* START Reverse Columns */   
@media only screen and (min-width: 666px) {
.wp-block-columns.reversecolumn {
	flex-direction: row-reverse !important;
    flex-wrap: nowrap;
}
}
/* END */

/* START Stop Flex Wrap on Tablets and Larger */
@media only screen and (min-width:700px) {
.noflexmedium {
	flex-wrap:nowrap!important;
	gap: 0px !important;
}
}
/* END */

/* START Text Shadow */
.textshadow {text-shadow: 2px 2px 2px #000000;}
/* END */

/* START Box Shadow */
.boxshadow {box-shadow: 2px 2px 8px #000000;}
/* END */

/* START Button Shadow */
.wp-block-button.buttonshadow {
	box-shadow: 2px 2px 8px #6a6a6a;
	border-radius: 25px;
}
/* END */

/* START Resize Gallery for Two Pictures */
.twopic {max-width: 700px !important;}
/* END */

/*START full-width cover block styles*/
   .alignfull {
        margin-left  : calc( -100vw / 2 + 100% / 2)!important;
        margin-right : calc( -100vw / 2 + 100% / 2)!important;
        margin-top: 0px;
        width    : 100vw;
        max-width    : 100vw;/*Not needed?*/
    }
    .alignfull img {
        width: 100vw;
    }
/* END */

/*START Wide Cover Block styles */
.alignwide, .wp-block-columns.alignwide, .wp-block-group.alignwide {
margin-left  : calc( -6% + -0px)!important;
margin-right : calc( -6% + -0px)!important;
}
/*END*/

/* START Columns No Break on Screens Over 600px */
@media only screen and (min-width:600px){
.nobreakmedium {
	flex-wrap: nowrap !important;
	column-gap: 0px !important;
}
}
/* END */

/*********END utility class section***********/

/* START Fix for Bullets Appearing as Numbered List */
.bullets li {
	margin:-30px 0px 20px 0px;
	line-height:1.5em;
	font-size:20px !important;
}

ul:not(.nav) {
list-style-type:disc;
list-style-position:outside !important;
}

ol li {
	padding: .75em 0 .5em 0;
	margin: 0 0 0px 35px;
	line-height: 1.2em !important;
}
/* END Fix for Bullets Appearing as Numbered List */


/* START Adjust Tables */
tr {
    line-height:2em;
    border-bottom:#000000 solid 1px;
}

td {
	max-width:200px !important;
	padding:0px 10px;
}
/* END Adjust Tables */


/* Make Cover Blocks Contain */
/*.wp-block-cover .wp-block-cover__image-background {
   object-fit: contain;
}*/
/* END */


/*------------START WP Customer Reviews Plugin modifications---------------------*/
/*Start styling Overall form*/
.review {
    border:1px solid black;
	border-radius:4px;
	box-shadow:5px 6px 8px #aeaeae;
	background:#efefef;
	padding:15px;
	text-align:left;
}
/********END styling Overall form**********/

/*START stop showing review date*/
div.wpcr3_review div.wpcr3_review_datePublished{
	display:none !important;
}
/*END stop showing review date*/


/*START Change Title Attributes*/
div.wpcr3_review div.wpcr3_review_title {
margin:10px auto 1px auto;
font-size:.9em;
font-weight:600;
}
/*END Change Title Attributes*/


/*START increase size of review text*/
div.wpcr3_review blockquote.wpcr3_content p {
font-size:1.2em !important;
text-align:left;
}
/*END increase size of review text*/

/*START change  Review REPLY text*/
div.wpcr3_review blockquote.wpcr3_content.wpcr3_admin_response {
margin-left: 30px;
color: #6b7f1e;
}
/* END */
/*------------END WP Customer Reviews Plugin modifications---------------------*/


.bottomaddress {
	line-height:1.1em !important;
}

.tagline {
	padding-top:10px;
	line-height:1.1em !important;
}

