/*
 Theme Name:     Intesa Communications Custom Theme
 Theme URI:      https://intesacom.com
 Description:    Custom theme by Crown Point Design | CPD
 Author:         Crown Point Design
 Author URI:     https://crownpointdesigns.com
 Template:       Divi
 Version:        25.03.05
*/
 
 
/* =Theme customization starts here */
/* Header and Navigation Styles */
header img#logo {
    margin-top: 30px;
    margin-left: 0px;
}

#ic-header {
    box-shadow: none;
}

#ic-header h1 {
    text-transform: lowercase !important;
}

#ic-header .et_mobile_menu {
    background-color: rgba(37, 61, 128, 0.85);
}

body.home #ic-header {
    background: transparent !important;
}

body.home div.has_et_pb_sticky #ic-header,
#ic-header.et-fixed-header {
    background: #2A3E82 !important;
}

#main-header.et-fixed-header img#logo {
    padding-top: 15px;
    margin-top: 0px;
}

/* Menu Styles */
.et-menu li li {
    width: 300px !important;
    margin-top: 5px;
    margin-bottom: 5px;
}

.et-menu li li a {
    padding: 10px 20px;
    width: 300px !important;
    color: #2E3E83;
}

.et-fixed-header .et-menu li li a {
    color: #2E3E83 !important;
}

.nav li ul {
    width: 340px;
}

/* Scroll to Top Styling */
.et_pb_scroll_top.et-pb-icon {
    background-color: rgba(37, 61, 128, 0.6);
}

.et_pb_scroll_top.et-pb-icon:hover {
    background-color: rgba(37, 61, 128, 0.75);
}

/* Form Styles */
form#subForm {
    display: block;
    margin: 30px auto !important;
}

form#subForm div.ic-footer-form-inputs {
    margin: 0 auto !important;
    display: block !important;
    width: 90%;
}

form#subForm div.ic-footer-form-inputs div {
    width: 31.5% !important;
    display: inline-block !important;
    overflow: hidden !important;
    text-align: center;
}

form#subForm div.ic-footer-form-inputs div.middle {
    margin-left: 30px;
    margin-right: 30px;
}

form#subForm input {
    font-size: 32px !important;
    border: none;
    padding: 30px;
    border-radius: 8px;
}

form#subForm button {
    width: 60%;
    text-align: center;
    margin: 30px auto !important;
    border: none;
    border-radius: 100px;
    background: #253D80;
    color: #FECD87;
    font-size: 2.35rem;
    font-family: 'Nunito Sans', sans-serif;
    font-weight: 800;
    padding: 20px;
    text-transform: uppercase;
    clear: both;
    transition: color 300ms ease, background-color 300ms ease, background-image 300ms ease;
    display: block !important;
}

form#subForm button:hover {
    background-color: #F9CC82;
    color: #253D80;
    cursor: pointer;
}

form#subForm label {
    display: none;
    visibility: hidden;
}

/* Responsive Media Queries */
/* Large Screens (2550px and above) */
@media screen and (min-width: 2550px) {
    div.et_pb_section.ic-orange-photo-flyin-right.et_pb_section_3 {
        background-image: linear-gradient(90deg, #ed7266 70vw, rgba(255, 255, 255, 0) 70vw) !important;
    }
	div.ic-fade-column > div.ic-default-text {max-width:1055px;}
}

/* Extra Large Screens (4000px and above) */
@media screen and (min-width: 4000px) { 
    div.et_pb_section.ic-orange-photo-flyin-right.et_pb_section_3 {
        background-image: linear-gradient(90deg, #ed7266 60vw, rgba(255, 255, 255, 0) 60vw) !important;
    }
	div.ic-fade-column > div.ic-default-text {padding-left:3% !important;}
}

/* Large Desktop Screens (1900px - 2450px) */
@media screen and (min-width: 1900px) and (max-width: 2450px) {
    .ic-values-list {
        max-width: 740px;
    }
}

/* Desktop Screens (1401px - 1800px) */
@media screen and (min-width: 1401px) and (max-width: 1800px) {
    header img#logo {
        margin-top: 30px;
        margin-left: 0px;
    }

    .ic-blue-dots {
        background: none !important;
    }
}

/* Tablet Screens (981px - 1500px) */
@media screen and (min-width: 981px) and (max-width: 1500px) {
    #page-container * {
        zoom: 0.98;
    }

    .et_pb_section_video_bg {
        display: none;
        visibility: hidden;
    }
}

/* Tablet Screens (981px - 1200px) */
@media screen and (min-width: 981px) and (max-width: 1200px) {
    .et_pb_text h1 {
        font-size: 5.5rem !important;
    }
}

/* Desktop Screens (981px - *) */
@media screen and (min-width: 981px) {
	/* Full width lets talk button for desktop on contact page */
	.page-id-5169 .et_contact_bottom_container {
		float: none;}
	.page-id-5169 .et_pb_contact_form {
		margin-left:0;}
	.page-id-5169 p.et_pb_contact_field {margin-left:-3%;}
	/* account for 2 column fields on desktop */
	.page-id-5169 p.et_pb_contact_field_1, .page-id-5169 p.et_pb_contact_field_5 {margin-left:3%;}
	/* Limit width of Right Float H2 Callouts */
	.ic-left-dot-flyin div.ic-default-text.et_pb_text {max-width:830px !important;}
}

/* Responsive Adjustments for Different Screen Sizes */
@media screen and (max-width: 1200px) {
    form#subForm div.ic-footer-form-inputs div {
        display: block !important;
        margin-left: 0 !important;
        margin-bottom: 30px;
        width: 100% !important;
    }

    form#subForm div.ic-footer-form-inputs {
        display: block !important;
        width: 100% !important;
    }

    form#subForm button {
        font-size: 2rem;
    }

    form#subForm input {
        font-size: 1.25rem !important;
        margin-left: 0;
    }

    #et_mobile_nav_menu {
        display: block;
    }

    #top-menu {
        display: none;
    }

    #et_top_search {
        top: 26px;
    }
}

@media screen and (max-width: 980px) {
    #logo {
        max-height: 50%;
        max-width: 50%;
    }

    .et_pb_text.ic-default-text h1,
    #ic-atf h1 {
        font-size: 3.4rem !important;
        margin-top: 50px;
        margin-bottom: 0;
    }

    form#subForm button {
        font-size: 1.35rem;
        width: 80%;
    }

    form#subForm input {
        min-width: 80%;
    }

    .ic-team-toggle h6 {
        font-size: 26px;
    }

    .ic-strong-title {
        font-size: 28px;
    }
}

@media screen and (max-width: 500px) {
    .et_pb_menu_0_tb_header .et_pb_menu_inner_container > .et_pb_menu__logo-wrap,
    .et_pb_menu_0_tb_header .et_pb_menu__logo-slot {
        width: 50% !important;
    }
}

/* Animations */
@keyframes fade-in {
    from {
        opacity: 0;
        transform: scale(0.7, 0.7);
    }
    to {
        opacity: 1;
    }
}

@keyframes bounce {
    0% { top: -2px; }
    50% { top: 2px; }
    100% { top: -2px; }
}

.ic-hidden {
    opacity: 0;
}

.ic-animated-text {
    animation: fade-in 2.4s;
}

.bounce {
    animation: bounce 1s infinite;
    position: relative;
}