/*
Theme Name: Complete Renovation
Theme URI: 
Author: 
Author URI: 
Description: Contractors & Construction Managers Since 2008.
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: complete-renovation
Tags: 
*/

*:focus:not(:focus-visible) { outline: none !important; }
*:focus-visible { outline: 3px solid #2563eb !important; outline-offset: 2px !important; }
.skip-link.screen-reader-text:focus {
  clip-path: none !important;
  position: fixed !important;
  top: 5px;
  left: 5px;
  z-index: 999999;
}

.nfd-site-preview-warning{display:none;}
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
.wp-block-jetpack-slideshow .wp-block-jetpack-slideshow_pagination.swiper-pagination-custom{justify-content: center !important;display: none;}
.yellow-strip{z-index: 15 !important; position: relative; background-color: rgb(251, 196, 47) !important;}
.wp-block-navigation .wp-block-navigation-item__content{padding: 5px 10px 5px 10px;}
.wp-block-navigation .wp-block-navigation-item__content:hover{color: var(--wp--preset--color--accent-5) !important;
  text-decoration: none;}
.skip-link:focus { position: static; clip: auto; width: auto; height: auto; } 
/* Sticky header row */
.cr-main-header{
  position: sticky;
  top: 0;
  z-index: 9999;
  transition: background-color .2s ease, box-shadow .2s ease, padding .2s ease;
}
.wp-block-navigation .current-menu-item > a{color: var(--wp--preset--color--accent-5) !important;background-color:var(--wp--preset--color--contrast);border-radius: 0px;}


/* Scrolled effect */
.cr-main-header.is-stuck{
  background: #fff;
  box-shadow: 0 10px 30px rgba(0,0,0,.10);
}

/* Optional: hide top bar after scroll */
.cr-main-header.is-stuck .cr-topbar{
  display: none;
}

/* Optional: slightly reduce spacing when stuck (if your header feels tall) */
.cr-main-header.is-stuck{
  padding-top: 8px;
  padding-bottom: 8px;
}
body.admin-bar .cr-main-header{
  top: 32px;
}
footer{margin-block-start:0 !important;}
footer h3.wp-block-heading{padding-bottom: 10px !important;}
footer h3.wp-block-heading {
  position: relative;
  padding-bottom: 14px;   /* space for underline */
  margin-bottom: 20px;
}

.wp-block-button__link.has-contrast-color.has-accent-5-background-color.has-text-color:hover{background-color:var(--wp--preset--color--base) !important;}
.wp-block-button__link.has-contrast-color.has-base-background-color.has-text-color:hover{background-color:var(--wp--preset--color--accent-5) !important;}
.is-style-fill.wp-block-button .wp-block-button__link:hover{background-color:var(--wp--preset--color--base) !important;color:var(--wp--preset--color--contrast);}
.wp-block-buttons.nfd-wb-animate .wp-block-button .wp-block-button__link.wp-element-button:hover{background-color:var(--wp--preset--color--accent-5) !important;color:var(--wp--preset--color--contrast);}
.wpcf7-form-control.wpcf7-submit:hover{background-color:var(--wp--preset--color--accent-5) !important;color:var(--wp--preset--color--contrast);}
/* Full thin line */
footer h3.wp-block-heading::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
}

/* Short colored segment */
footer h3.wp-block-heading::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;           /* align over thin line */
  width: 70px;            /* length of yellow part */
  height: 1.5px;            /* slightly thicker */
  background: #f4b400;    /* yellow accent */
}

.shortunderline{
  display: inline-block;     /* match text width */
  position: relative;
  padding-bottom: 14px !important;
}

.shortunderline::after{
  content: "";
  position: absolute;
  left: 0;                   /* start at first letter */
  bottom: 0;
  width: 70px;
  height: 2px;
  background: #f4b400;
}

/* keep heading centered when WP adds this class */
.has-text-align-center.shortunderline{
  margin-left: auto;
  margin-right: auto;
  display: table;
}

.wpcf7-form-control.wpcf7-text{font-size: 14px;
  padding: 5px;
  line-height: 1.4rem;}
.wpcf7-not-valid-tip {
    color: #dc3232;
    font-size: 14px !important;
    font-weight: normal;
    display: block;
}
/* --- 1) Two-column spacing (fix touching fields) --- */
.form_row{
  display: flex;
  gap: 14px;              /* space between the 2 fields */
  margin-bottom: 2px;
}

.form_row .form_1_2{
  flex: 1 1 0;
  width: auto;
  float: none !important; /* override float-based layouts */
}

.form_row .form_1_2.last{
  float: none !important;
}
.form_row .form_1_2 p{margin:0;padding:0;}

/* Stack columns on mobile */
@media (max-width: 768px){
  .form_row{
    flex-direction: column;
    gap: 14px;
  }
}


/* --- 2) Label styling --- */
.wpcf7 label{
  display: block;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.25;
  margin: 0 0 8px;
  color: #1f2937;         /* dark gray */
}
.wpcf7 label .small{font-size: 12px;font-weight:500;}
/* Optional: make "(required)" less loud if it's plain text */
.wpcf7 label small,
.wpcf7 label .required{
  font-weight: 500;color: #dc3232;font-size: 12px;
}


/* --- 3) Inputs/selects/textarea sizing + "cover empty area" for textarea --- */
/* Make fields fill their container width */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 select,
.wpcf7 textarea{
  width: 100%;
  box-sizing: border-box;
  display: block;
  padding: 12px 12px;
  border: 1px solid #d1d5db;
  border-radius: 0px;
  background: #fff;
  color: #111827;
  font-size: 15px;
  line-height: 1.3;
}

/* Textarea: fill width + remove the “unused” look */
.wpcf7 textarea{
  min-height: 140px;      /* cover the empty area by giving it height */
  resize: vertical;       /* let user expand it if they want */
}

/* If CF7 wraps controls in .wpcf7-form-control-wrap, ensure it doesn't constrain width */
.wpcf7-form-control-wrap{
  display: block;
}


/* Focus states */
.wpcf7 input:focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus{
  outline: none;
  border-color: #2563eb;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.18);
}


/* --- 4) Submit button styling --- */
.wpcf7 input[type="submit"]{
  display: inline-block;
  width: 100%;
  padding: 14px 16px;
  border: 0;
  border-radius: 0px;
  background: var(--wp--preset--color--contrast);
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.2px;
  cursor: pointer;
  transition: transform .06s ease, opacity .2s ease;
}

.wpcf7 input[type="submit"]:hover{
  opacity: .92;
}

.wpcf7 input[type="submit"]:active{
  transform: translateY(1px);
}

/* CF7 disabled state while submitting */
.wpcf7 input[type="submit"]:disabled{
  opacity: .6;
  cursor: not-allowed;
}
.wpcf7 .wpcf7-response-output{margin:0; border-color:var(--wp--preset--color--contrast);font-size:14px;background-color:var(--wp--preset--color--accent-4);color:var(--wp--preset--color--contrast);}
.wpcf7 form.invalid .wpcf7-response-output{margin:0; border-color:#dc3232;font-size:14px;color:#cb0101 !important;}
.hide-mobile {display: block;}

@media screen and (min-width: 783px) and (max-width: 1240px){
	.ourwork-gallery .wp-block-group .wp-block-columns{flex-wrap: wrap !important;}
	.ourwork-gallery .wp-block-group .wp-block-columns .wp-block-column{flex-basis:32% !important;width:32%;}
}

@media (max-width: 782px){
  body.admin-bar .cr-main-header{ top: 46px; }
}
/* Between 600px and 782px */
@media screen and (min-width: 600px) and (max-width: 782px) {
	.hide-mobile {display: flex !important;align-content: flex-start;align-items: flex-start;}
	.top-nav-container .wp-block-spacer{flex-basis:0 !important;}
	.top-nav-container{ flex-wrap: nowrap !important;}
	.top-nav-container .wp-block-column:nth-child(1){flex-basis: 30% !important;}
	.top-nav-container .wp-block-column:nth-child(2){flex-basis: 70% !important;}
	.wp-block-navigation__container.is-responsive{gap: 0px;--navigation-layout-justification-setting: flex-start;--navigation-layout-justify: flex-start; justify-content: flex-start;}
	.reverse-order .wp-block-column:nth-child(1){order:1;}
	.reverse-order .wp-block-column:nth-child(2){order:0;}
	.wp-container-core-group-is-layout-113bc9fa{gap: 10px !important;}
	.wp-container-core-group-is-layout-113bc9fa p{font-size:12px !important;line-height: 1.9;}
	.wp-block-social-links .wp-block-social-link.wp-social-link .wp-block-social-link-anchor svg{max-width:20px !important;}
	.ourwork-gallery .wp-block-group .wp-block-columns .wp-block-column{flex-basis:48% !important;width:48%;}
	#footer-contentinfo .wp-block-columns{flex-wrap: wrap !important;}
	#footer-contentinfo .wp-block-columns .wp-block-column{flex-basis: 48% !important;max-width: 48% !important;}
	#footer-contentinfo .copyright-container{flex-wrap: wrap !important;}
	#footer-contentinfo .copyright-container .wp-block-column{flex-basis:100% !important;}
}

@media (max-width: 599px) {
    .hide-mobile {display: none !important;}
	#footer-contentinfo .wp-block-columns{flex-wrap: wrap !important;}
}

@media (max-width: 599px){
	.wp-block-navigation__responsive-container.is-menu-open:not(.disable-default-overlay){padding:10px 10px 0 10px !important;}
	.wp-block-navigation__responsive-container.is-menu-open:where(:not(.disable-default-overlay)) .wp-block-navigation__responsive-container-content .wp-block-navigation__container, .wp-block-navigation__responsive-container.is-menu-open:where(:not(.disable-default-overlay)) .wp-block-navigation__responsive-container-content .wp-block-navigation-item, .wp-block-navigation.items-justified-right{align-items:flex-start !important;--navigation-layout-justification-setting: flex-start !important;width: 100%;}
	.top-nav-container .wp-block-column:first-child{width:80%;flex-basis: 80% !important;}
	.top-nav-container .wp-block-column:nth-child(2){width:20%;flex-basis: 20% !important;}
	.wp-block-navigation__responsive-container-open svg {height: 26px;width: 26px;}	
	.wp-block-site-logo img {height: auto;max-width: 85%;}
	.wp-block-navigation__responsive-container{top: 79px;bottom:unset;}
	header .wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content{width:100%;text-align: center;}
	header .wp-block-navigation ul li{width:100%;}
	header .wp-block-navigation__container.items-justified-center.is-vertical.wp-block-navigation.has-barlow-font-family {width: 100%;}
	.mobile-space{padding:0 1rem;}
	.wp-block-navigation__responsive-container.is-menu-open:not(.disable-default-overlay) .wp-block-navigation__responsive-container-content{padding-top:10px;}
	:root :where(.wp-element-button, .wp-block-button__link){padding-left:1rem;padding-right:1rem;min-width: 140px;}
	.logo-image{max-width:260px;}
	
	.has-modal-open .admin-bar .is-menu-open:where(:not(.disable-default-overlay)) .wp-block-navigation__responsive-dialog {margin-top: 0;}
	.wp-block-navigation__responsive-dialog .wp-block-navigation-item__label:focus{outline-style: none;outline-width: 0;}
	.wp-block-navigation__responsive-container.is-menu-open:where(:not(.disable-default-overlay)) .wp-block-navigation__responsive-container-content .wp-block-navigation__container{gap:0;}
	.wp-block-navigation-item__content{outline-style: none;outline-width: 0;}
	.reverse-order .wp-block-column:nth-child(1){order:1;}
	.reverse-order .wp-block-column:nth-child(2){order:0;}
	#footer-contentinfo .copyright-container{flex-wrap: wrap !important;}
	#footer-contentinfo .copyright-container .wp-block-column:nth-child(1){flex-basis:70% !important;}
	#footer-contentinfo .copyright-container .wp-block-column:nth-child(2){flex-basis:30% !important;}
	.contact-right-container p a{font-size:14px;}
	@media not (prefers-reduced-motion) {
    .wp-block-navigation__responsive-container.is-menu-open {
        animation: menu-slide-down 0.60s cubic-bezier(0.22, 1, 0.36, 1) forwards;
    }

    @keyframes menu-slide-down {
        from {
            opacity: 0;
            transform: translate3d(0, -40px, 0);
        }
        to {
            opacity: 1;
            transform: translate3d(0, 0, 0);
        }
    }
}
	
}

