.elementor-2689 .elementor-element.elementor-element-b788913{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overlay-opacity:1;--padding-top:5rem;--padding-bottom:7rem;--padding-left:0rem;--padding-right:0rem;}.elementor-2689 .elementor-element.elementor-element-b788913:not(.elementor-motion-effects-element-type-background), .elementor-2689 .elementor-element.elementor-element-b788913 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://calroof.innovisionwebsites.com/wp-content/uploads/2025/09/contact-us-hero-cal-roof.png");background-position:bottom center;background-repeat:no-repeat;background-size:cover;}.elementor-2689 .elementor-element.elementor-element-b788913::before, .elementor-2689 .elementor-element.elementor-element-b788913 > .elementor-background-video-container::before, .elementor-2689 .elementor-element.elementor-element-b788913 > .e-con-inner > .elementor-background-video-container::before, .elementor-2689 .elementor-element.elementor-element-b788913 > .elementor-background-slideshow::before, .elementor-2689 .elementor-element.elementor-element-b788913 > .e-con-inner > .elementor-background-slideshow::before, .elementor-2689 .elementor-element.elementor-element-b788913 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(90deg, #00000052 0%, #00000024 80%);}.elementor-2689 .elementor-element.elementor-element-518db84{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-2689 .elementor-element.elementor-element-5262cfa .elementor-heading-title{font-family:"Source Sans 3", Sans-serif;font-weight:700;color:var( --e-global-color-accent );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-2689 .elementor-element.elementor-element-c6e7bb8{width:var( --container-widget-width, 45% );max-width:45%;--container-widget-width:45%;--container-widget-flex-grow:0;font-family:"Source Sans 3", Sans-serif;font-size:20px;font-weight:500;line-height:24px;color:var( --e-global-color-accent );}.elementor-2689 .elementor-element.elementor-element-203f2bc{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:70px;--padding-bottom:100px;--padding-left:70px;--padding-right:70px;}.elementor-2689 .elementor-element.elementor-element-62f981e{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:95px;--padding-bottom:95px;--padding-left:95px;--padding-right:95px;}.elementor-2689 .elementor-element.elementor-element-62f981e:not(.elementor-motion-effects-element-type-background), .elementor-2689 .elementor-element.elementor-element-62f981e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1A4923;}.elementor-2689 .elementor-element.elementor-element-ae807ae{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:60px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-2689 .elementor-element.elementor-element-186848f{text-align:left;}.elementor-2689 .elementor-element.elementor-element-5bd9546 .elementor-heading-title{font-family:"Source Sans 3", Sans-serif;font-size:37px;font-weight:600;color:#FFFFFF;}.elementor-2689 .elementor-element.elementor-element-cebb76f{font-family:"Source Sans 3", Sans-serif;font-size:20px;font-weight:400;color:#FFFFFF;}.elementor-2689 .elementor-element.elementor-element-ced5ae6{font-family:"Source Sans 3", Sans-serif;font-size:20px;font-weight:400;color:#FFFFFF;}.elementor-2689 .elementor-element.elementor-element-9fd29b9{font-family:"Source Sans 3", Sans-serif;font-size:20px;font-weight:400;color:#FFFFFF;}.elementor-2689 .elementor-element.elementor-element-ae576cc{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:50px;--padding-right:0px;}.elementor-2689 .elementor-element.elementor-element-f646210{text-align:left;}.elementor-2689 .elementor-element.elementor-element-bb4dcfa .elementor-heading-title{font-family:"Source Sans 3", Sans-serif;font-size:37px;font-weight:600;color:#FFFFFF;}.elementor-2689 .elementor-element.elementor-element-c64bf1f{font-family:"Source Sans 3", Sans-serif;font-size:20px;font-weight:400;line-height:30px;color:#FFFFFF;}@media(min-width:768px){.elementor-2689 .elementor-element.elementor-element-518db84{--content-width:1400px;}.elementor-2689 .elementor-element.elementor-element-ae807ae{--width:50%;}.elementor-2689 .elementor-element.elementor-element-ae576cc{--width:50%;}}@media(max-width:1024px){.elementor-2689 .elementor-element.elementor-element-b788913:not(.elementor-motion-effects-element-type-background), .elementor-2689 .elementor-element.elementor-element-b788913 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:bottom right;}.elementor-2689 .elementor-element.elementor-element-c6e7bb8{--container-widget-width:80%;--container-widget-flex-grow:0;width:var( --container-widget-width, 80% );max-width:80%;}.elementor-2689 .elementor-element.elementor-element-203f2bc{--padding-top:70px;--padding-bottom:70px;--padding-left:40px;--padding-right:40px;}.elementor-2689 .elementor-element.elementor-element-ae807ae{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(max-width:767px){.elementor-2689 .elementor-element.elementor-element-b788913:not(.elementor-motion-effects-element-type-background), .elementor-2689 .elementor-element.elementor-element-b788913 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://calroof.innovisionwebsites.com/wp-content/uploads/2025/09/contact-us-hero-cal-roof-mobile.png");background-position:bottom right;}.elementor-2689 .elementor-element.elementor-element-b788913{--min-height:90vh;--padding-top:03rem;--padding-bottom:0rem;--padding-left:0rem;--padding-right:0rem;}.elementor-2689 .elementor-element.elementor-element-5262cfa{text-align:center;}.elementor-2689 .elementor-element.elementor-element-5262cfa .elementor-heading-title{font-size:32px;}.elementor-2689 .elementor-element.elementor-element-c6e7bb8{--container-widget-width:90%;--container-widget-flex-grow:0;width:var( --container-widget-width, 90% );max-width:90%;text-align:center;}.elementor-2689 .elementor-element.elementor-element-c6e7bb8.elementor-element{--align-self:center;}.elementor-2689 .elementor-element.elementor-element-203f2bc{--padding-top:40px;--padding-bottom:70px;--padding-left:12px;--padding-right:12px;}.elementor-2689 .elementor-element.elementor-element-62f981e{--padding-top:95px;--padding-bottom:0px;--padding-left:40px;--padding-right:0px;}.elementor-2689 .elementor-element.elementor-element-ae807ae{--width:100%;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2689 .elementor-element.elementor-element-5bd9546 .elementor-heading-title{font-size:24px;}.elementor-2689 .elementor-element.elementor-element-cebb76f{font-size:16px;}.elementor-2689 .elementor-element.elementor-element-ced5ae6{font-size:16px;}.elementor-2689 .elementor-element.elementor-element-9fd29b9{font-size:16px;}.elementor-2689 .elementor-element.elementor-element-ae576cc{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2689 .elementor-element.elementor-element-bb4dcfa .elementor-heading-title{font-size:24px;}.elementor-2689 .elementor-element.elementor-element-c64bf1f{font-size:16px;line-height:24px;}}/* Start custom CSS for heading, class: .elementor-element-5262cfa */.elementor-2689 .elementor-element.elementor-element-5262cfa {
    text-transform: uppercase
}/* End custom CSS */
/* Start custom CSS *//***** CONTACT FORM STYLES START ******/

label.gform-field-label.gform-field-label--type-sub {
    font-size: 18px;
    color: black;
    font-family: "Source Sans 3";
    font-weight:400;
}

label.gfield_label.gform-field-label {
    font-size: 18px;
    font-family: 'Source Sans 3';
    font-weight: 400;
}

legend.gfield_label.gform-field-label.gfield_label_before_complex {
    font-size: 18px;
    font-family: 'Source Sans 3';
    font-weight: 400;
}

legend.gfield_label.gform-field-label {
    font-size: 18px;
    font-family: 'Source Sans 3';
    font-weight: 400;
}

div#input_1_8 {
    font-size: 18px!important;
    font-family: 'Source Sans 3';
    font-weight: 400!important;
}

label#label_1_9_1 {
    font-size: 16px;
    font-family: 'Source Sans 3';
    font-weight: 400;
}

span.gfield_required.gfield_required_custom {
    display: none!important;
}

p.gform_required_legend {
    display: none;
}
h2.gform_title {
    display: none;
}

/* #field_1_8 — 3 on the left, last 2 on the right */
#field_1_8 .gfield_radio {
  display: grid;
  grid-auto-flow: column;              /* fill DOWN the first column first */
  grid-template-rows: repeat(3, auto); /* 3 rows => first 3 items on the left */
  grid-auto-columns: minmax(0, 1fr);   /* equal column widths */
  gap: 12px 24px;                      /* row / column spacing */
}

#field_1_8 .gchoice {
  margin: 0;
  display: flex;
  align-items: flex-start;
  gap: 8px;
}

#field_1_8 .gform-field-label { white-space: normal; }
#field_1_8 .gchoice br { display: none; }
#field_1_8 .gchoice .gchoice_other_control { width: 100%; margin-top: 4px; }

/* Mobile: stack to one column */
@media (max-width: 600px) {
  #field_1_8 .gfield_radio {
    grid-auto-flow: row;
    grid-template-rows: none;
    grid-template-columns: 1fr;
  }
}

@media (min-width: 1025px) {
  #field_1_8 .gchoice .gchoice_other_control {
    width: 100%;
    margin-top: 40px;
    margin-left: -78px;
  }

  .gchoice.gchoice_1_8_2 {
    margin-top: -55px !important;
  }
}


@media (min-width: 768px) {
  #field_1_8 .gchoice .gchoice_other_control {
    width: 100%;
    margin-top: 40px;
    margin-left: -170px;
  }

  .gchoice.gchoice_1_8_2 {
    margin-top: -55px !important;
  }
}


@media (max-width: 767px) {
  input#input_1_8_other {
    margin-top: 35px !important;
    margin-left: -175px!important;
  }
}


/* Text-based fields (First Name, Last Name, Email, Phone, Address inputs, Message, etc.) */
body .gform_wrapper .gfield input[type=text],
body .gform_wrapper .gfield input[type=email],
body .gform_wrapper .gfield input[type=tel],
body .gform_wrapper .gfield input[type=url],
body .gform_wrapper .gfield input[type=number],
body .gform_wrapper .gfield input[type=password],
body .gform_wrapper .gfield textarea {
    background-color: #f2f2f2 !important;
    border: 1px solid #d9dad9 !important;
    border-radius: 14px !important;
    padding: 16px 12px !important;   /* more height (top/bottom) while keeping width */
    box-shadow: none !important;     /* removes shadows */
    font-size: 18px !important;
    font-family: 'Source Sans 3', sans-serif !important;
    color: #010402 !important;       /* typed text color */
}

/* Placeholder styling for all text fields and textareas */
body .gform_wrapper .gfield input::placeholder,
body .gform_wrapper .gfield textarea::placeholder {
    font-size: 17px !important;
    font-family: 'Source Sans 3', sans-serif !important;
    color:rgba(1, 4, 2, 0.60) !important;
    opacity: 1 !important; /* ensures placeholder isn't faded */
}

/* Dropdowns and Address select fields */
body .gform_wrapper .gfield select {
    background-color: #f2f2f2 !important;
    border: 1px solid #d9dad9 !important;
    border-radius: 14px !important;
    padding: 14px 12px !important; /* taller dropdowns */
    box-shadow: none !important;
    font-size: 18px !important;
    font-family: 'Source Sans 3', sans-serif !important;
    color: #010402 !important;
}

/* Radio button labels */
body .gform_wrapper .gfield_radio li label {
    background-color: #f2f2f2 !important;
    border: 1px solid #d9dad9 !important;
    border-radius: 14px !important;
    padding: 8px 14px !important;
    display: inline-block;
    cursor: pointer;
    box-shadow: none !important;
    font-size: 18px !important;
    font-family: 'Source Sans 3', sans-serif !important;
    color: #010402 !important;
}


input#gform_submit_button_1 {
    background: #B71F36;
    font-family: 'Source Sans 3';
    padding: 12px 20px;
    border: none;
    border-radius: 14px;
    font-size:24px;
    color: #fff;
    display: block;         /* make button a block */
    margin: 20px auto 0;    /* center horizontally */
    text-align: center;     /* center text inside */
    cursor: pointer;
}




/* Make Gravity Forms required asterisk bigger and black */
body .gform_wrapper .gfield_required {
    font-size: 18px !important;  /* adjust size */
    color: #000 !important;      /* black instead of red */
    font-weight: 600;            /* optional: make it bolder */
}


/* Add black asterisk to First Name and Last Name sub-labels in Form ID 1 */
#gform_wrapper_1 #field_1_1 .ginput_complex label[for="input_1_1_3"], /* First Name */
#gform_wrapper_1 #field_1_1 .ginput_complex label[for="input_1_1_6"]  /* Last Name */ {
    position: relative;
}

#gform_wrapper_1 #field_1_1 .ginput_complex label[for="input_1_1_3"]::after, /* First Name */
#gform_wrapper_1 #field_1_1 .ginput_complex label[for="input_1_1_6"]::after { /* Last Name */
    content: " *";
    color: #000;          /* black instead of red */
    font-size: 20px;      /* adjust size */
    font-weight: 600;     /* make it stand out */
    margin-left: 2px;
}



/***** CONTACT FORM STYLES END ******//* End custom CSS */