/* 
Theme Name: Kraken Cleaning
Theme URI:  https://www.krakencleaning.co.uk
Description: Custom Wordpress Theme For Kraken Cleaning
Author: Alan Jones (First4IT Solutions Limited)
Author URI: https://www.first4it.com
Template: hello-elementor
Version: 1.0.5
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/************************/
/* Sitewide CSS Changes */
/************************/
 
html {font-size: 112.5%; scroll-behavior: smooth;} /*18px*/

/* CSS Font Clamping for Responsive Text */
h1 { font-size: clamp(2.369rem, 2.0686rem + 1.502vw, 4.209rem);}
h2 { font-size: clamp(1.777rem, 1.5517rem + 1.1265vw, 3.157rem);}		
h3 { font-size: clamp(1.333rem, 1.1639rem + 0.8457vw, 2.369rem);}
h4 { font-size: clamp(1.333rem, 1.2605rem + 0.3624vw, 1.777rem);}
h5 { font-size: clamp(1.2rem, 1.1783rem + 0.1086vw, 1.333rem);}

.blox-boxed-small-square-icon-box-heading {font-size: clamp(1.2rem, 1.1783rem + 0.1086vw, 1.333rem) !important;}

.elementor-kit-9 {
--e-global-typography-7d0aaee-font-size: clamp(1.0625rem, 0.9503rem + 0.5612vw, 1.75rem); /* Hero Strapline */
--e-global-typography-3ac21e6-font-size: clamp(1rem, 0.9796rem + 0.102vw, 1.125rem); /* Small Text */
}

/* Font Size Clamping For Button */
.elementor-kit-9 .elementor-button { font-size: clamp(0.875rem, 0.8546rem + 0.102vw, 1rem); }

/* Remove Bottom Margin From Footer Copyright */
.no_paragraph_bottom_margin p { margin-bottom: 0px; }

.elementor-widget-text-editor p:last-child { margin-bottom:0px !important;}

/* Pricing Green Tick Boxes Equal Height */
.blur .blox-boxed-small-square-icon-box-heading { height: 80px; }

/* Highlight Parent Menu Item When Submenu Is Selected */
.current-menu-parent > a, .current-menu-item a { color: #2B95FF !important; }

/* Testimonial Text of Current Item Set as Widget Does Not Allow Colour Setting */
.owl-item.uc-active-item .ue-text p, .owl-item.uc-active-item .ue_subtitle  { color: #fff !important; }

/* Blue Text For Span */
.blue-text { color: #2B95FF; }

/* Link on Dark Background */
.elementor-kit-9 .link-on-dark:hover { color: #ffffff; }

/* Link on White Background */
.elementor-kit-9 .link-on-pale { color: #000000; }
.elementor-kit-9 .link-on-pale:hover { color: #2b95ff; }

/* E-Mail Obfuscator Plugin Makes Icon and Text for E-Mail Block So Icon Appears Above Text - This Sets it Inline */
.infobar .elementor-icon-list-icon { display: inline !important; }

/* Offset When Scrolling To Anchor For Fixed Header As Anchor Disappears Under Header */
.anchoroffset { scroll-margin-top: 8rem;}

/* Add Icon To External Links */
a[target="_blank"]:not(.affiliate-link):not(.internal-link):not(.elementor-icon):not(.manual-external-link a):not(.manual-external-link):not(.bdt-logo-carousel-link):not(.ue_menu-social-icons a):not(.cky-policy):after {
   font-family: "Font Awesome 5 Free";
   content: " \f35d";
   padding-left: 3px;
   /* Must include font-weight: 900 or icons don't show */
   font-weight: 900;
}

/* Asterix - Pricing Page */
.asterix {
    font-size: 0.6em;
    top: -20px;
    right: -5px;
}

/* Small Text 'Per Month' - Pricing Page */
.small-text {
   font-size: 1rem;
}

/* Add Blur Effect To Box and Equal Height - Pricing Page */
.blur {
    backdrop-filter: saturate(180%) blur(20px);
   -webkit-backdrop-filter: satur???ate(180%) blur(20px);
}

.blur .square_icon_box { height: 100%; }
   
/* Premium Addons Contact Form 7 - Remove Label Top Padding */
.elementor-widget-premium-contact-form:not(.premium-cf__preset1) label {
	padding-top: 0px;
}

/********************************/
/* Custom Contact Form 7 Styles */
/********************************/

/* Remove Border From Fields */
input[type=date], input[type=email], input[type=number], input[type=password], 
input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea
{ border: none; }

input[type=date]:focus, input[type=email]:focus, input[type=number]:focus, input[type=password]:focus, input[type=search]:focus, input[type=tel]:focus, 
input[type=text]:focus, input[type=url]:focus, select:focus, textarea:focus {outline: none; }

/* Change Color of Placeholder Text */
.wpcf7-form .wpcf7-form-control-wrap .wpcf7-textarea,
.wpcf7-form .wpcf7-form-control-wrap input { color: #999 !important; }

/* Error Sensing Message */
.wpcf7 form.spam .wpcf7-response-output {
	background-color: #f56e28
}

/* Warning message */
.wpcf7 form.invalid .wpcf7-response-output {
    background-color: #ffb900;
}

/* Success Message */
.wpcf7 form.sent .wpcf7-response-output {
    background-color: #46b450;
}

/* Redefine Default Output Message Format */
.wpcf7 form .wpcf7-response-output { 
    text-align: center !important;
    margin: 10px 0 0 0 !important;
    font-size: 1rem !important;
    line-height: 1.1rem !important;
    color: #ffffff !important;
}

/* Hide Spinner on Form Submission */
.wpcf7-spinner { display: block !important; display: none !important;}

/* Reduce CloudFlare Turnstile Bottom Margin */
.cf7-cf-turnstile { margin-bottom: -25px !important }

/**************************/
/* Material Design For CF7 /
/**************************/
#cf7md-form .mdc-button {
	text-transform: none;
	border-radius: 4px;
	padding: 17px 30px;
	letter-spacing: 0;
	line-height: 0;
	font-size: 1rem;
}

#cf7md-form .mdc-button--raised:disabled {
    border-radius: 4px;
    border: 2px solid #2b95ff;
    box-shadow: none;
    background-color: #ffffff;
    color: #2b95ff;
    padding: 17px 30px;
}

#cf7md-form .mdc-button--raised, #cf7md-form .mdc-button--raised:active {
    box-shadow: none;
    border: 2px solid #2b95ff;
}

#cf7md-form .mdc-button--raised:hover, #cf7md-form .mdc-button--raised:focus {
    color: #ffffff;
    box-shadow: none;
}

/* Override Font */
#cf7md-form .cf7md-item, #cf7md-form input, #cf7md-form label, #cf7md-form textarea, #cf7md-form p, 
#cf7md-form .mdc-select, #cf7md-form.cf7md-form+.wpcf7-response-output, #cf7md-form .wpcf7-not-valid-tip,
#cf7md-form .cf7md-card-title, #cf7md-form .cf7md-card-subtitle, #cf7md-form .mdc-button, #cf7md-form .mdc-floating-label, 
#cf7md-form .mdc-text-field-helper-text, #cf7md-form .mdc-text-field__input, #cf7md-form .mdc-select__native-control, #cf7md-form .mdc-form-field {
font-family: proxima-nova !important; 
font-size: 1rem;
}

#cf7md-form .mdc-form-field label[for="cf7md1"] {
	font-size: 0.9rem;
}

#cf7md-form .mdc-text-field--outlined .mdc-floating-label {
	top: 13px;
}
	
#cf7md-form .mdc-text-field .mdc-floating-label {
	top: 14px;
}	

/***************/
/* Misc Styles */
/***************/

/* Add Spacing For GDPR Acceptance */
.wpcf7-list-item { margin: 10px 0 10px 0; }
.wpcf7-quiz-label { display: block; margin-top: 10px; }

/* Add Spacing on Cookie Law Plugin Accept All Button */
.cky-btn-accept { margin-top: 10px !important; }
.cky-btn:last-child { margin-right: 10px !important; }
.cky-consent-bar .cky-banner-btn-close img { width: 15px !important; height: 15px !important; margin-top: 5px !important; }
.cky-notice-des * { font-size: 0.8rem !important; }

/* Add Custom Number To Top Right Hand Corner Of Icon As BD Themes Step Process Widget
   Does Not Look Good On Mobile in Two Columns - So We Make Our Own Using Containers */
.corner-number-holder { position: relative; }

.corner-number-holder > .corner-number {
  background-color: var( --e-global-color-uicore_primary );
    color: #FFFFFF;
    font-family: "futura-pt", Sans-serif;
    font-size: 1rem;
    font-weight: 900;
    line-height: 1.5em;
    padding: 5px 5px 5px 5px;
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-radius: 20px 20px 20px 20px;
    box-shadow: 0px 0px 10px 0px rgb(0 0 0 / 50%);
    min-width: 35px;
    min-height: 35px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute; 
    top: -10px;
    right: -5px; 
    z-index: 1;
}

/* Add Customer Background Circle and Drop Shadow For Specified Icons */
.circle-background > .elementor-widget-container > .elementor-icon-wrapper {
    color: var( --e-global-color-uicore_primary );
    background-color: var( --e-global-color-7923410 );
    border-radius: 100px 100px 100px 100px;
    overflow: hidden;
    padding: 15px 15px 15px 15px;
    box-shadow: 0px 0px 10px 0px rgb(0 0 0 / 50%);
    font-size: 50px;
    width: 100%;
    transform: rotate(0deg);
} 

/**********************************/
/* Let it snow! - Christmas Only! */
/**********************************/
.snow-bg {
   position: relative;
}

.snow-bg:after {
   content: '';
   display: block;
   position: absolute;
   z-index: 2;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   pointer-events: none;
   background-image: url('https://www.krakencleaning.co.uk/gutterclean/wp-content/uploads/2022/12/s1.png'), url('https://www.krakencleaning.co.uk/gutterclean/wp-content/uploads/2022/12/s2.png'), url('https://www.krakencleaning.co.uk/gutterclean/wp-content/uploads/2022/12/s3.png');
   animation: snow 10s linear infinite;
}

@keyframes snow {
 0% {background-position: 0px 0px, 0px 0px, 0px 0px;}
 50% {background-position: 500px 500px, 100px 200px, -100px 150px;}
 100% {background-position: 500px 1000px, 200px 400px, -100px 300px;}
}

/****************************************************/
/* Custom Style for HTML Element On  Policies Pages */
/****************************************************/

ol {
	margin-bottom: 40px;
	padding-left: 0px;
	list-style-position: inside;
}

ol li {
	font-family: "futura-pt";
	font-size: clamp(1.333rem, 1.2605rem + 0.3624vw, 1.777rem);
	color: #2b95ff;
        margin-top: 18px;
	margin-bottom: 18px;
	text-indent: -24px;
	margin-left: 24px;	
}

ol > ol {
	margin-top: 0px;
	margin-bottom: 20px;
}

ol > ol > li {
	margin-top: 5px;
	list-style: none;
	text-indent: -20px;
	margin-left: 40px;
	margin-bottom: 5px;
	font-family: "proxima-nova";
	font-size: 1rem;
}

/* Style Dots Before Item */
ol > ol > li::before {
  display: inline-block;
  content: ' ';
  height: 10px;
  width: 10px;
  background-color: #2b95ff;
  border-radius: 50%;
  margin-right: 10px;
}

/* Remove BR from Service Boxes on Homepage for Mobile */
@media (max-width: 767px) {
  .service-box br { display: none; }
}

/* Home Page Service Boxes - Add Top Border */
.uc_content_box_zoom_effect_content { border-top: 3px solid var( --e-global-color-uicore_primary); }

/* Add Border To Cookie Consent Border Buttons */
.cky-notice-btn-wrapper .cky-btn {
	border: 1px solid;
	background-color: #2B95FF !important;
	color: #ffffff !important;
}

.cky-btn:last-child {
	margin-right: 0px !important;
}

.cky-consent-bar button:hover {
	border: 1px solid #2178CF !important;
	color: #ffffff !important;
	background-color: #2178CF !important;
	opacity: 1;
}
