/*
Theme Name: Tando Composites
Author: tc Inc.
Description: Tando Composites Child Theme
Version: 1.0
Template: bootstrap-component-blox
*/

:root {
	--tc-primary: #527891;
	--tc-secondary: #495965;
	--tc-accent: #45AFE4;
	--tc-dark: #000;
	--tc-light: #EBEDEE;
	--tc-font: "Manrope", sans-serif;
}

/* ===== Global ===== */

html,
body { 
	overflow-x: hidden;
	font-family: var(--tc-font);
	color: var(--tc-dark);
}

a,
a:hover {
	text-decoration: none;
}

/* ===== Custom Classes ===== */

.z-front {
	z-index: 5;
}

.z-back {
	z-index: 1;
}

.fw-600 {
	font-weight: 600;
}

.fs-sm {
    font-size: 13px;
}

.display-lg {
    font-size: 90px;
    font-weight: 800;
    text-transform: uppercase;
    transition: all .3s;
}

.lh-sm {
    line-height: 1em!important;  
}

.lg-xl {
    line-height: 2em
}
    
#tc-hero .display-5 {
    transition: all .3s;
}

.text-justify {
    text-align: justify;
}

#tc-common-breadcrumbs a {
    color: var(--tc-dark);
}

#tc-common-breadcrumbs p {
    color: var(--tc-accent);
}

/* The section following the breadcrumbs carries p-lg-5 (48px top) AND an inner
   .container py-lg-4 (24px top), so two padding layers stack and leave a 72px
   gap under the breadcrumb strip on every page. Drop the outer layer and let the
   container set the rhythm (operator, 2026-08-26). Verified across 14 templates
   that the next sibling is always a <section> carrying this same pair.
   !important is required: Bootstrap's p-lg-5 utility is itself !important and
   bootstrap.min.css is enqueued after this file. Below lg those sections use
   py-4 (24px) with a py-2 (8px) container, so zeroing there would leave only
   8px -- keep a small floor instead. Desktop 72px -> 24px, mobile 32px -> 16px. */
#tc-common-breadcrumbs + section {
    padding-top: 0 !important;
}

@media (max-width: 992px) {
    #tc-common-breadcrumbs + section {
        padding-top: 0.5rem !important;
    }
}


.w-75 {
    max-width: 75%!important;
}

.px-6 {
    padding-left: 100px!important;
    padding-right: 100px!important;
}

/* ===== Text Color ===== */

.tc-text-primary {
	color: var(--tc-primary);
}

.tc-text-secondary {
	color: var(--tc-secondary);
}

.tc-text-accent {
	color: var(--tc-accent);
}

.tc-text-dark {
	color: var(--tc-dark);
}

/* ===== Background Color ===== */

.tc-bg-primary {
	background-color: var(--tc-primary);
}

.tc-bg-secondary {
	background-color: var(--tc-secondary);
}

.tc-bg-accent {
	background-color: var(--tc-accent);
}

.tc-bg-dark {
	background-color: var(--tc-dark);
}

.tc-bg-light {
	background-color: var(--tc-light);
}

/* ===== Button ===== */

.btn {
	font-weight: 600;
	border-radius: 0;
	padding: 5px 20px;
	text-transform: uppercase;
}

.tc-btn-primary {
	background-color: var(--tc-primary);
	color: #fff;
	border: 2px solid var(--tc-primary);
}

.tc-btn-primary:hover {
	background-color: #fff;
	color: var(--tc-primary);
	border: 2px solid var(--tc-primary);
}

.tc-btn-secondary {
	background-color: var(--tc-secondary);
	color: #fff;
	border: 2px solid var(--tc-secondary);
}

.tc-btn-secondary:hover {
	background-color: #fff;
	color: var(--tc-secondary);
	border: 2px solid var(--tc-secondary);
}

.tc-btn-accent {
	background-color: var(--tc-accent);
	color: #fff;
	border: 2px solid var(--tc-accent);
}

.tc-btn-accent:hover {
	background-color: #fff;
	color: var(--tc-accent);
	border: 2px solid var(--tc-accent);
}

.tc-btn-dark {
	background-color: var(--tc-dark);
	color: #fff;
	border: 2px solid var(--tc-dark);
}

.tc-btn-dark:hover {
	background-color: #fff;
	color: var(--tc-dark);
	border: 2px solid var(--tc-dark);
}

/* ===== Navbar ===== */

#navbar-main-menu .nav-link {
	color: #fff;
	text-transform: uppercase;
	font-weight: 600;
	font-size: 15px;
}

/* Dropdown panels are white — submenu links must not inherit the white top-level color */
#navbar-main-menu .dropdown-menu {
	border: 0;
	border-radius: 0;
	margin-top: 0;
}

#navbar-main-menu .dropdown-menu .nav-link {
	color: var(--tc-secondary);
	padding: 8px 20px;
}

#navbar-main-menu .dropdown-menu .nav-link:hover,
#navbar-main-menu .dropdown-menu .nav-link:focus {
	color: var(--tc-primary);
	background-color: var(--tc-light);
}

#navbar-main-menu .tc-btn-nav-light a {
    background: #fff;
    color: var(--tc-primary)!important;
    padding: 5px 15px;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 14px;
    
}

#navbar-main-menu .tc-btn-nav-accent a {
    color: #fff;
    background: var(--tc-accent)!important;
    padding: 5px 15px;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 14px;
    
}

#navbar-brand-logo img {
    max-width: 210px;
}

#tc-top-nav a {
    color: #fff;
}

#tc-top-nav a:hover  {
    opacity: 0.8;
}

/* ===== Toggler ===== */

#toggler:focus, 
#toggler:active {
    outline: 0;
}

#toggler span {
    width: 30px;
    height: 3px;
    display: block;
    background-color: #fff;
    margin: 7px 0;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
}

#toggler span:nth-child(1) {
    -webkit-transform: translatey(10px) rotate(-45deg);
        -ms-transform: translatey(10px) rotate(-45deg);
            transform: translatey(10px) rotate(-45deg);
}

#toggler span:nth-child(2) {
    opacity: 1;
    width: 0;
}

#toggler span:nth-child(3) {
    -webkit-transform: translatey(-10px) rotate(45deg);
        -ms-transform: translatey(-10px) rotate(45deg);
            transform: translatey(-10px) rotate(45deg);  
}

#toggler.collapsed span {
    -webkit-transform: translatey(0) rotate(0deg);
        -ms-transform: translatey(0) rotate(0deg);
            transform: translatey(0) rotate(0deg);
    opacity: 1;
    width: 30px;   
}

/* ===== Header ===== */

#tc-hero .row {
    padding-top: 50px;
    padding-bottom: 50px;
}

/* ===== Has Form ===== */

.has-form .wpforms-container {
	margin-bottom: 0!important;
	margin-top: 0!important;
}

.has-form .wpforms-submit {
	color: #fff!important;
	background: var(--tc-primary)!important;
	padding: 10px 20px!important;
	text-transform: uppercase!important;
	border: none!important;
	font-weight: bold!important;
}

/* ===== Footer ===== */

#tc-footer-widgets {
	color: #fff;
}

#tc-footer-widgets a {	
	color: #fff;
}

#tc-footer-widgets ul li {	
    margin-bottom: 10px!important;
}

#tc-footer-widgets ul li:hover a {	
	opacity: 0.8;
}

#tc-footer-widgets a:hover {	
	color: rgba(255,255,255,0.8);
}

footer {	
	background: var(--tc-primary);
	color: #fff;
}

footer a {
	color: rgba(255,255,255,0.8);
}

footer a:hover {
	color: rgba(255,255,255,0.6);
}

@media (max-width: 1400px) {
    
    .fixed-top .container {
       max-width: 95%;
    }
    
    .display-lg {
        font-size: 60px;
    }
    
    #tc-hero .display-5 {
        font-size: 2rem!important;
    }
    
    .tc-btn-nav-light a,
    .tc-btn-nav-accent a {
        white-space: nowrap;
    }
    
}

@media (max-width: 1300px) { 
    #navbar-brand-logo img {
        max-width: 180px;
    }
    
    .fixed-top .container {
       max-width: 100%;
    }
}

@media (max-width: 1200px) { 
    #navbar-brand-logo img {
        max-width: 160px;
    }
    
    #navbar-main-menu .nav-link {
        font-size: 13px;
    }
    
    #navbar-main-menu .tc-btn-nav-light a,
    #navbar-main-menu .tc-btn-nav-accent a {
        font-size: 13px;
        padding-left: 8px;
        padding-right: 8px;
    }
}

@media (max-width: 992px) {
    
    #tc-hero {
        background: none!important;
    }
    
    #tc-hero .row {
        padding-top: 0;
        padding-bottom: 0;
    }
    
    #tc-hero .text-white {
        color: var(--tc-primary)!important;
    }
    
    .w-75 {
        width: 100%!important;
        max-width: 100%!important;
    }
    
    #tc-reviews .fs-4 {
        font-size: 16px!important;
    }
    
    .lg-xl {
        line-height: 1.5em
    }
    
    .px-6 {
        padding-left: 50px!important;
        padding-right: 50px!important;
    }
	
	.display-lg {
		font-size: 70px;
	}
}

@media (max-width: 768px) {
	.display-lg {
		font-size: 60px;
	}
}

@media (max-width: 576px) {
	.display-lg {
		font-size: 50px;
	}
}