/*
 Theme Name:   Mediatopia
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Jeff Hamilton
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

* {
  box-sizing: border-box !important;
}

.inside-article {
padding: 0 !important;
}

.top--header--search .wp-block-search__inside-wrapper {
padding: 0 !important;
}

.top--header--search .wp-block-search__inside-wrapper .wp-block-search__button.wp-element-button{
margin: 0 !important;
}

.top--header--search .wp-block-search__input{
	border: 1px solid #A1A4B1 !important;
}

.top--header--search .wp-block-search__button.wp-element-button{
	border: none;
    background: #002940;
}

.top--header--search input.wp-block-search__input {
	font-size: 14px;
    line-height: 18px;
    width: 100%;
    height: 40px;
    border: 1px solid #A1A4B1;
   
    display: inline-block;
}

.top--header--search input.wp-block-search__input::placeholder {
 color: #000000 !important;	
	font-weight: 500 !important;
}
.top--header--search .wp-block-search__inside-wrapper button {
	padding: 0;
	width: 45px;
	height: 40px;
}

.top--header--search .wp-block-search__input{
    width: 230px !important;
}
.top--header--search .wp-block-search__inside-wrapper {
	border: none !important;
}

.remove--menu--icon .gb-submenu-toggle{
display: none;
}
ul.sub-menu.gb-sub-menu li.menu-item span.gb-submenu-toggle {
display: unset;
}

.right--parent--content:is(:focus, :hover) .content--banner--heading {
	text-align: center;
}
.left--content--banner{
	animation: fadeIn 0.5s ease forwards;
}
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

.right--bg--banner.active {
	background: #F3F8FA;
}

h1 span.h1--element {
	position: relative;
}
h1 span.h1--element::after {
    content: "";
    width: 216px;
    height: 27px;
    background: url(https://drroofinc.com/wp-content/uploads/2025/09/under_strike.svg) no-repeat center;
    position: absolute;
    bottom: -7px;
    left: 0;
}
.residential--banner--img {
	 transition: transform 0.5s ease-in-out; /* Add this */
}

.residential--banner--img.active {
	   transform: translate(-50%,-50%);
	 transition: transform 0.5s ease-in-out; /* Add this */
}
.commercial--banner--img {
	 transform: translate(-50%,50%);
	 transition: transform 0.5s ease-in-out; /* Add this */
}
.commercial--banner--img.active {
	   transform: translate(-50%,-50%);
	 transition: transform 0.5s ease-in-out; /* Add this */
}

.list--content:hover .list--arrow,
.tab--content:hover .tab--icon {
	animation: bounce ease 1s;
    animation-duration: 1s;
    animation-timing-function: ease;
    animation-delay: 0s;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: none;
    animation-play-state: running;
    animation-name: bounce;
    animation-timeline: auto;
    animation-range-start: normal;
	-webkit-animation: bounce ease 1s;
    animation-duration: 1s;
    animation-timing-function: ease;
    animation-delay: 0s;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: none;
    animation-play-state: running;
    animation-name: bounce;
    animation-timeline: auto;
    animation-range-start: normal;
    animation-range-end: normal;
    -moz-animation: bounce ease 1s;
    -o-animation: bounce ease 1s;
    -ms-animation: bounce ease 1s;
}
@keyframes bounce {
  0%, 100%, 20%, 50%, 80% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}
  40% {
    -webkit-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    transform: translateY(-10px);
}
60% {
    -webkit-transform: translateY(-5px);
    -ms-transform: translateY(-5px);
    transform: translateY(-5px);
}
}

.side--section {
	padding-left: calc(50vw - 600px);
}
.tab--icon svg path{
	transition: 0.2s ease;
}
.tab--content:hover .tab--icon svg path {
	transition: 0.2s ease;
	fill: #0088CF !important;
}
.tab--content:hover .tab--text {
	color: #0088CF !important;
	transition: 0.2s ease;
}
.gb-element-fc34266d {
	background-size: auto 92% !important;
}
.youtube--play svg path{
		transition: 0.2s ease;
}
.youtube--container:hover .youtube--play svg path{
		transition: 0.2s ease;
	fill: #F8C23F;
}

.footer--icon--text a{
	color: white;
	list-style: none;
}
.testimonial--text a{
	color: #0088CF;
	text-decoration: none;
	transition: 0.3s;
}
.testimonial--text a:hover{
	color: #23527c;
	transition: 0.3s;
}

.splide__track.splide__track__testimonial {
	padding-bottom: 30px;
}

.list--default ul {
	   columns: 2;        /* Number of columns */
  -webkit-columns: 2; /* For Safari */
  -moz-columns: 2;    /* For Firefox */
	list-style: disc inside; /* Keep bullets aligned */
  column-gap: 40px;        /
  padding: 0;
}

.list--default ul li {
	 break-inside: avoid; /* Prevent items from splitting between columns */
  margin-bottom: 10px; /* Add spacing between items */
}

.list--container {
	margin-left: 10px;
}

.list--container .text--h2 {
	max-width: 100%;
}

.list--3--column {
	margin-left: 30px;
	-webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
    list-style-position: outside;
   
}

@media (max-width: 672px) {
    .gb-element-974d94f1 {
        width: 70% !important;
    }
    }

@media (max-width: 821px) {
.list--include ul {
    columns: 1;
    -webkit-columns: 1 !important;
    -moz-columns:1;
}
.list--3--column {
	-webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
}
}

@media (max-width: 672px) {
.list--default ul {
    columns: 1;
    -webkit-columns: 1 !important;
    -moz-columns: 1;
}
.list--3--column {
	-webkit-column-count: 1;
    -moz-column-count: 1;
    column-count: 1;
}
}

.gb-tabs__menu.gb-tabs__menu-4396d25b {
width: 100% !important;
}

.splide.splide--testimonial .splide__list{
	margin-bottom: 30px !important;
}

@media (min-width: 1025px) {
.splide.splide--testimonial .splide__list {
        column-gap: 30px;
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        visibility: visible;
    }
}

#wpforms-970 input,#wpforms-970 .choices {
	max-width: 100% !important;
}

#wpforms-form-975 .wpforms-field-container {
    display: flex !important;
    flex-wrap: wrap !important;
}
#wpforms-form-975 input,#wpforms-form-975 select {
   	max-width: 100% !important;
	height: 48px;
	padding: 10px;
	color: #232323;
    font-weight: 700;
    line-height: 18px;
    letter-spacing: 0.32px;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border: none;
}
#wpforms-form-975 select {
	color: #B0B0B0 !important;
}
ul#wpforms-975-field_8 label,ul#wpforms-975-field_9 label {
	font-weight: 500 !important;
}

#wpforms-form-975 #wpforms-975-field_1-container,#wpforms-form-975 #wpforms-975-field_2-container,#wpforms-form-975 #wpforms-975-field_3-container,#wpforms-form-975 #wpforms-975-field_4-container,#wpforms-form-975 #wpforms-975-field_6-container,#wpforms-form-975 #wpforms-975-field_7-container {
	width: 33% !important;
	padding-left: 16px !important;
	padding-right: 16px !important;
}
#wpforms-form-975 #wpforms-975-field_5-container {
	width: 67% !important;
	padding-left: 16px !important;
	padding-right: 16px !important;
}
#wpforms-form-975 #wpforms-975-field_8-container,#wpforms-form-975 #wpforms-975-field_9-container,#wpforms-form-975 #wpforms-975-field_10-container {
	width: 100% !important;
}
#wpforms-975-field_8,#wpforms-975-field_9 {
display: flex !important;
flex-wrap: wrap !important;
}

#wpforms-975-field_10 {
	color: #232323;
    font-weight: 700;
    line-height: 18px;
    letter-spacing: 0.32px;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border: none;
}
{
font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.96px;
    text-align: center;
    text-transform: uppercase;
    height: auto;
    line-height: normal;
    text-decoration: none;
    display: inline-block;
    margin: 0 auto;
    padding: 11px 20px;
    color: #ffffff;
    background: #002940;
    border: 1px solid #002940;
    box-shadow: none;
    border-radius: 4px;
}

#wpforms-submit-975 {
	    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.96px;
    text-align: center;
    text-transform: uppercase;
    height: auto;
    line-height: normal;
    text-decoration: none;
    display: inline-block;
    margin: 0 auto;
    padding: 11px 20px;
    color: #ffffff;
    background: #002940;
    border: 1px solid #002940;
    box-shadow: none;
    border-radius: 4px;
}

.blog--sidebar li{
	list-style: none;
	margin: 10px 0;
}
.blog--sidebar a{
	font-weight: 600;
    font-size: 17px;
    line-height: 22px;
    letter-spacing: 0.02em;
    color: #232323;
	text-decoration: none;
	margin: 10px 0;
}

.dynamic-entry-content h2 {
	color: var(--text);
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 15px;
    text-transform: capitalize;
}
.dynamic-entry-content h3 {
	color: var(--text);
    font-size: 24px;
    font-weight: 700;
    letter-spacing: -0.48px;
    line-height: 28px;
    text-transform: capitalize;
}
.dynamic-entry-content p {
	 font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 22px;
}

.tab--content,.tab--text {
	text-decoration: none !important;
}