/*
Theme Name: Castle Twenty-Twenty Five child 3
Theme URI: 
Author: Castlewood Inc.
Author URI: 
Description: Child theme of Wordpress Block Theme 2025
Requires at least: 6.9
Tested up to: 6.9
Requires PHP: 5.7
Version: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: twentytwentyfive
Text Domain: castle-twenty-twenty-five-child-3
Tags: 
*/


/* Start Additional CSS Styles */
/* DonSingRoofing.com */
/* 08-19-26 v3.008 */

/* Add Bold option to Fonts */
strong, b {font-weight: 700 !important;
}
/* END */

/* STOP Box Around Chosen Menu Items */
:where(.wp-site-blocks *:focus){outline-width:0px !important;outline-style:solid;}
/* END */

/* START Limit All Template Parts to 1920px wide */
.wp-block-template-part {
max-width:1920px;
margin: 0px auto
}
/* END */

/**** START Header ****/
/* START Header 2 */
@media only screen and (min-width:620px) and (max-width:1100px){
.wp-block-site-logo {
max-width:250px;
}
}

@media only screen and (min-width:1101px){
.wp-block-site-logo {
max-width:550px;
padding:0px 0px 0px 0px;
}
}

.phone-header2 {
margin: -20px 0px -10px 0px !important;
font-size:26px !important;
text-align:center !important;
}

@media only screen and (min-width: 600px){
.phone-header2 {
margin: -30px 40px 0px 0px !important;
font-size:22px !important;
text-align:right !important; }
}
/* END */
/************************/

/************************/
/* Menu */
.wp-block-navigation .wp-block-navigation-item__label {padding:0px 6px !important;
}

.wp-block-navigation-item__content {padding: 4px 0px !important;
}

.wp-block-navigation .wp-block-navigation-item :hover {background: #71b73c; color: #3f5c21;
text-decoration:none;
}

.wp-block-navigation .wp-block-navigation-item {
padding: 0px 0px 0px 0px;
}

/* Sub Menu Container */
.wp-block-navigation__submenu-container {width: 320px !important; background-color: #000000 !important;
}

/* Sub Menu Text Sub Level left, right, center */
 .wp-block-navigation-item__content {
justify-content:center !important;
}

.wp-block-navigation-submenu .wp-block-navigation-item a { color: #000000 !important;
font-size: 20px; 
}

.wp-block-navigation-submenu .wp-block-navigation-item :hover {
color: #000000;
font-size: 20px; 
}

/* Mobile Hamburger Menu */
@media only screen and (max-width:650px){
.wp-block-navigation {
justify-content: right !important;
padding-right:20px;
}
}/* END */

@media only screen and (max-width: 650px){
.wp-block-navigation .wp-block-navigation-item {
padding: 0px 20px !important;
}
}

/* Mobile Hamburger Icon and X */
.wp-block-navigation__responsive-container-close svg,.wp-block-navigation__responsive-container-open svg {
fill: currentColor;
color: #ffffff;
display: block;
height: 32px;
width: 32px;
}/* END */

/* Mobile Menu Block */
.wp-block-navigation.items-justified-center {
--navigation-layout-justification-setting: left;
}
/* END */

/* Mobile Top Items Left, Right, Center */
.wp-block-navigation {
text-align: left !important;
}

/* Mobile Menu Fonts */
@media only screen and (max-width:700px){
.wp-block-navigation-item__content {
font-size:24px !important;
}
}/* END */

/* Mobile Menu SUB Items */
.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
margin: 0px 0px 0px 0px !important;
background: #a7de61;
}/* END */
/**************************/

/**************************/
/* Banner Changes */
.wp-block-image.banner1 {
padding:0px;}

@media only screen and (max-width: 600px) {
.banner1 {
min-height: 350px !important;
}
}

@media only screen and (min-width: 601px) and (max-width:900px) {
.banner1 {
min-height:400px !important;
}
	.bannerbox {max-width: 550px !important;}
}

@media only screen and (min-width: 901px) {
.banner1 {
min-height:600px !important;
}

.banner1text2 {
line-height: 1.3em !important;
}		
}
/* END */
/************************/

/***** Utility Class ****/

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

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

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

/* Hide block, pictures, video, etc */
.hide:not(.editor-styles-wrapper .hide) {display:none !important;}
/* END */

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

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

/* START Stop Flex on All Devices */
.noflex {
flex-wrap:nowrap!important;
gap: 0px !important;
}
/* END */

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

/* 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 */

/* Figcaption STOP BLUR */
.wp-block-gallery.has-nested-images figure.wp-block-image:has(figcaption):before {
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
}
/* END */

/* Figcaption Background Color */
.wp-block-gallery.has-nested-images figcaption {
background: #0000004f !important;
}
/* END */

/* Make only top-level link unclickable */
.unclickable-item > a {
pointer-events: none;
cursor: default;
text-decoration: none;
}

/* Keep submenu links clickable */
.unclickable-item .sub-menu a {
pointer-events: auto;
cursor: pointer;
}
/* END */


/*********END utility class section***********/
    
/* Hide Page and Post Titles */
.page-id-6 .wp-block-post-title {display: none !important;} /*Home Page*/
.page-id-100 .wp-block-post-title {display: none !important;} /*Old Page*/
/* End */

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

/*---CONTACT FORM 7---*/

.wpcf7 p {margin:0px;}

input.inputbox, .registration input, .login input, .contact input, .contact textarea, select, textarea, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"], .uneditable-input, input[type="checkbox"] {
height: auto;
background: #e8e8e8;
border: #bebebe 1px solid;
}

.wpcf7 input {max-width:800px}
.wpcf7 p {
padding:0px 0px 5px 0px !important;
margin: 0px !important;
}

.wpcf7 textarea {
 height: 200px !important;
}

/* Length of Contact Form 7 fields */
.wpcf7 input[type="text"],.wpcf7 input[type="email"],.wpcf7 textarea,.wpcf7 input[type="tel"]
{
width: 90%;
height: 20px;
font-size: 18px;
padding: 5px;
margin:0px 0px 10px 0px;
font-family: arial, sans-serif;
}
/* END */

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

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

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


/**** 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 */

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


/*------------START WP Customer Reviews Plugin---------------------*/
/* Styling Overall form */
.review {
border:1px solid black;
border-radius:4px;
box-shadow:5px 6px 8px #aeaeae;
background:#efefef;
padding:15px;
text-align:left;
margin: 0px auto 40px auto !important;
}
/* END */

/* Hide Review Date*/
div.wpcr3_review div.wpcr3_review_datePublished{
display:none !important;
}
/* END */

/* Change Name */
div.wpcr3_review_item div.wpcr3_item_name {
    font-size: 18px;
    font-style: italic;
    font-weight: 600;
}
/* END */

/* Change Author */
div.wpcr3_review_author {
font-size: 16px;
font-weight: normal;
}
/* END */

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

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

/* Block Quotes */
.wpcr3_review blockquote.wpcr3_content {
margin: 0px 10px 0px 10px;
}
/* END */

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

/**************************/
/* Footer */
.attributions a {color:#000089!important;}

.footeraddress a {color:#000089 !important}

.footer-castlewood-link  a  {color:#f8e5bf !important;
}

@media only screen and (max-width: 600px) {
.footercolumns {
column-gap: 0px !important;
gap: 0px !important;
}
}

@media only screen and (max-width: 650px) {
.footer .wp-block-navigation {
justify-content: left !important;
}
}

.footercolumns .wp-block-navigation-item__label {font-size:14px !important;
}

.footercolumns .wp-block-navigation .wp-block-navigation-item :hover {
color:#bebebe !important;
}
/* END */

/* YouTube */
.wp-block-embed-youtube {
max-width:800px;
}
/* END */

/* Media/Text Block */
.wp-block-media-text>.wp-block-media-text__content {padding: 0px 10px 0px 10px;
}
/* END */

/* ADD GAP TO GALLERIES */
.wp-block-gallery {
    --wp--style--unstable-gallery-gap: 10px !important;
    gap:10px !important;
}
/* END */

/* Stop Gallery Image Padding */
.wp-block-gallery figure.wp-block-image:not(#individual-image) {padding:0px 0px;
}
/* END */

/* Images Add Padding */
.wp-block-image:not (.wp-block-gallery) {padding:10px}
/* END */

/* AlignRight - AlignLeft Image fix */
@media only screen and (max-width:600px){
.wp-block-image.alignleft, .wp-block-image.alignright {margin: 10px auto 10px auto !important; float:none;
}
}
/* END */

/* Text Link as Button */
.textlinkasbutton1 {
max-width:200px;
margin:0px auto !important;
}

.textlinkasbutton2 {
max-width:330px;
margin:0px auto !important;
}
/* END */

