/* ===== Maviaa – static site layout fixes ===== */

/* One content width everywhere: 1300px max / 90% of the screen (header, all sections, footer).
   Full-width sections (home banner slider, About video band, Contact map) stay edge to edge. */
#page-container .et_pb_section .et_pb_row,
#page-container .et_pb_section .et_pb_row.et_pb_row_fullwidth {
  width: 90% !important;
  max-width: 1300px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
#page-container .et-l--header .et_pb_section .et_pb_row,
#page-container .et-l--footer .et_pb_section .et_pb_row {
  width: 90% !important;
  max-width: 1300px !important;
}
#page-container .et_pb_fullwidth_section .et_pb_row {
  width: 100% !important;
  max-width: none !important;
}

/* form spam trap (hidden from people) + result message */
.pym-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.pym-msg { display: none; margin: 0 0 18px; padding: 13px 16px; border-radius: 8px; font-size: 15px; line-height: 1.5; }
.pym-msg.is-ok { background: #e8f6ec; color: #17602e; border: 1px solid #9bd3ab; }
.pym-msg.is-err { background: #fdecee; color: #9b1c2c; border: 1px solid #f1a9b3; }
.gform_wrapper .pym-tip { color: #c62828 !important; font-size: 13px; margin-top: 4px; }
.gform_wrapper .gfield_error input, .gform_wrapper .gfield_error textarea { border-color: #ff6b81 !important; }


/* photo galleries (About "Innovative Designs" + footer): simple even grid instead of the JS masonry,
   which broke on phones (thin grey strips). Same look: 5 per row (About), 3 per row (footer). */
.dnxte-msnary-grid { display: grid !important; grid-template-columns: repeat(5, 1fr); gap: 10px; height: auto !important; }
.et-l--footer .dnxte-msnary-grid { grid-template-columns: repeat(3, 1fr); gap: 6px; }
.dnxte-msnary-grid > .grid-sizer, .dnxte-msnary-grid > .gutter-sizer { display: none !important; }
.dnxte-msnary-grid > .dnxte-msnary-item { position: relative !important; left: auto !important; top: auto !important; width: auto !important; margin: 0 !important; transform: none !important; }
.dnxte-msnary-grid > .dnxte-msnary-item img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; }
.et-l--footer .dnxte-msnary-grid > .dnxte-msnary-item img { aspect-ratio: 1 / 1; }
@media (max-width: 767px) { .dnxte-msnary-grid { grid-template-columns: repeat(3, 1fr); gap: 6px; } }

/* contact form on the blue background: readable placeholders */
.gform_wrapper input::placeholder, .gform_wrapper textarea::placeholder { color: #6b7a78 !important; opacity: 1 !important; }
/* long e-mail address never sticks out of its box on phones */
.et_pb_blurb_description, .et_pb_blurb_description a, .et-l--footer a { overflow-wrap: anywhere; }


/* "What is a + b?" spam check field */
.pym-sum { margin-top: 6px; }
.pym-sum .gfield_label { display: block !important; position: static !important; clip: auto !important; width: auto !important; height: auto !important; font-size: 15px; margin-bottom: 6px; color: #2e3f8f; }
.pym-sum input { max-width: 220px; }

/* top banners full width (Cool Roof Tiles: penguin banner, Maviaa Properties: "Dream Property" banner) */
.page-id-244492 #page-container .et_pb_section_3 > .et_pb_row,
.page-id-371096 #page-container .et_pb_section_2 > .et_pb_row { width: 100% !important; max-width: none !important; }
/* Cool Roof Tiles header: all 8 menu items always in ONE line on desktop/laptop
   (logo column was 40% of the row -> menu had too little room and LOCATE US dropped to a 2nd line) */
@media (min-width: 981px) {
  .page-id-244492 .et_pb_section_0 .et_pb_row_0 { display: flex !important; align-items: center; }
  .page-id-244492 .et_pb_section_0 .et_pb_column_0 { flex: 0 0 auto; width: auto !important; margin-right: 30px !important; }
  .page-id-244492 .et_pb_section_0 .et_pb_column_0 img { width: 193px !important; max-width: none !important; height: auto !important; }
  .page-id-244492 .et_pb_section_0 .et_pb_column_1 { flex: 1 1 auto; width: auto !important; margin-right: 0 !important; }
  .page-id-244492 .et_pb_section_0 .et_pb_menu { width: 100% !important; left: 0 !important; margin: 0 !important; }
  .page-id-244492 .et_pb_section_0 .et_pb_menu__menu, .page-id-244492 .et_pb_section_0 .et_pb_menu nav { width: 100%; }
  .page-id-244492 .et_pb_section_0 ul.et-menu { flex-wrap: nowrap !important; white-space: nowrap; justify-content: flex-end; }
  .page-id-244492 .et_pb_section_0 ul.et-menu > li { padding-left: 10px !important; padding-right: 10px !important; }
}
@media (min-width: 981px) and (max-width: 1440px) {
  .page-id-244492 .et_pb_section_0 ul.et-menu > li > a { font-size: 16px !important; }
  .page-id-244492 .et_pb_section_0 ul.et-menu > li { padding-left: 7px !important; padding-right: 7px !important; }
}
@media (min-width: 981px) and (max-width: 1200px) {
  .page-id-244492 .et_pb_section_0 .et_pb_column_0 img { width: 150px !important; }
  .page-id-244492 .et_pb_section_0 ul.et-menu > li > a { font-size: 14px !important; }
  .page-id-244492 .et_pb_section_0 ul.et-menu > li { padding-left: 5px !important; padding-right: 5px !important; }
}
/* landing page header: phone number / e-mail never break into 2 lines */
.page-id-10 .dnxt-blurb-description, .page-id-10 .dnxt-blurb-description a { white-space: nowrap !important; }
.page-id-10 .et_pb_row_0 .dnxt-blurb-wrapper-outer, .page-id-10 .et_pb_row_0 .dnxt-blurb-wrapper { width: auto !important; max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; }
@media (min-width: 981px) { .page-id-10 .et_pb_row_0 { display: flex !important; align-items: center; gap: 30px; } .page-id-10 .et_pb_row_0 > .et_pb_column { margin: 0 !important; } .page-id-10 .et_pb_row_0 .et_pb_column_0 { flex: 1 1 auto; width: auto !important; } .page-id-10 .et_pb_row_0 .et_pb_column_1, .page-id-10 .et_pb_row_0 .et_pb_column_2 { flex: 0 0 auto; width: auto !important; } }

/* phones: fixed (parallax) backgrounds don't work on iPhone/Android -> normal background, white text stays readable */
@media (max-width: 980px) { #page-container .et_pb_section { background-attachment: scroll !important; } }
@media (max-width: 767px) {
  /* Cool Roof Tiles "Its Not Just Cool" highlight cards: 2 per row */
  .page-id-244492 .et_pb_row_4col { display: block !important; }
  .page-id-244492 .et_pb_row_4col > .et_pb_column { width: 100% !important; max-width: 320px; margin: 0 auto 22px !important; float: none !important; }
  .page-id-244492 .et_pb_section_7 > .et_pb_row_4col:last-of-type > .et_pb_column:last-child { margin-bottom: 0 !important; }
  /* Maviaa Properties "Our Key Features": 2-3 per row instead of one tall column */
  .page-id-371096 .et_pb_section_5 .et_pb_row { display: flex !important; flex-wrap: wrap; justify-content: center; }
  .page-id-371096 .et_pb_section_5 .et_pb_column_4_4 { width: 100% !important; }
  .page-id-371096 .et_pb_section_5 .et_pb_column_1_5 { width: 100% !important; margin: 0 0 22px 0 !important; }
}
@media (max-width: 767px) {
  .page-id-371096 .et_pb_section_5 .et_pb_column_1_5 :is(h1,h2,h3,h4,h5,p,.et_pb_module_header,.et_pb_text_inner) { font-size: 13px !important; line-height: 1.35 !important; }
}

/* ===== one even spacing for every content section (header, banners and footer keep their own) =====
   Old Divi settings pulled sections/rows/text UP with negative margins -> headings ran into the cards below
   (worse with the real Open Sans font). All of that is reset; every section gets the same breathing room. */
.page-id-244492 #page-container .et_pb_section_4, .page-id-244492 #page-container .et_pb_section_5, .page-id-244492 #page-container .et_pb_section_7, .page-id-244492 #page-container .et_pb_section_8, .page-id-244492 #page-container .et_pb_section_9, .page-id-244492 #page-container .et_pb_section_10, .page-id-370800 #page-container .et_pb_section_3, .page-id-370800 #page-container .et_pb_section_4, .page-id-370800 #page-container .et_pb_section_5, .page-id-371096 #page-container .et_pb_section_4, .page-id-371096 #page-container .et_pb_section_5, .page-id-371096 #page-container .et_pb_section_6, .page-id-371096 #page-container .et_pb_section_7, .page-id-371096 #page-container .et_pb_section_8, .page-id-371230 #page-container .et_pb_section_3, .page-id-371274 #page-container .et_pb_section_3, .page-id-371284 #page-container .et_pb_section_3, .page-id-371254 #page-container .et_pb_section_3 { padding-top: 80px !important; padding-bottom: 80px !important; margin-top: 0 !important; margin-bottom: 0 !important; }
:is(.page-id-244492 #page-container .et_pb_section_4, .page-id-244492 #page-container .et_pb_section_5, .page-id-244492 #page-container .et_pb_section_7, .page-id-244492 #page-container .et_pb_section_8, .page-id-244492 #page-container .et_pb_section_9, .page-id-244492 #page-container .et_pb_section_10, .page-id-370800 #page-container .et_pb_section_3, .page-id-370800 #page-container .et_pb_section_4, .page-id-370800 #page-container .et_pb_section_5, .page-id-371096 #page-container .et_pb_section_4, .page-id-371096 #page-container .et_pb_section_5, .page-id-371096 #page-container .et_pb_section_6, .page-id-371096 #page-container .et_pb_section_7, .page-id-371096 #page-container .et_pb_section_8, .page-id-371230 #page-container .et_pb_section_3, .page-id-371274 #page-container .et_pb_section_3, .page-id-371284 #page-container .et_pb_section_3, .page-id-371254 #page-container .et_pb_section_3) > .et_pb_row { padding-top: 0 !important; padding-bottom: 0 !important; margin-top: 0 !important; margin-bottom: 40px !important; }
:is(.page-id-244492 #page-container .et_pb_section_4, .page-id-244492 #page-container .et_pb_section_5, .page-id-244492 #page-container .et_pb_section_7, .page-id-244492 #page-container .et_pb_section_8, .page-id-244492 #page-container .et_pb_section_9, .page-id-244492 #page-container .et_pb_section_10, .page-id-370800 #page-container .et_pb_section_3, .page-id-370800 #page-container .et_pb_section_4, .page-id-370800 #page-container .et_pb_section_5, .page-id-371096 #page-container .et_pb_section_4, .page-id-371096 #page-container .et_pb_section_5, .page-id-371096 #page-container .et_pb_section_6, .page-id-371096 #page-container .et_pb_section_7, .page-id-371096 #page-container .et_pb_section_8, .page-id-371230 #page-container .et_pb_section_3, .page-id-371274 #page-container .et_pb_section_3, .page-id-371284 #page-container .et_pb_section_3, .page-id-371254 #page-container .et_pb_section_3) > .et_pb_row:last-of-type { margin-bottom: 0 !important; }
:is(.page-id-244492 #page-container .et_pb_section_4, .page-id-244492 #page-container .et_pb_section_5, .page-id-244492 #page-container .et_pb_section_7, .page-id-244492 #page-container .et_pb_section_8, .page-id-244492 #page-container .et_pb_section_9, .page-id-244492 #page-container .et_pb_section_10, .page-id-370800 #page-container .et_pb_section_3, .page-id-370800 #page-container .et_pb_section_4, .page-id-370800 #page-container .et_pb_section_5, .page-id-371096 #page-container .et_pb_section_4, .page-id-371096 #page-container .et_pb_section_5, .page-id-371096 #page-container .et_pb_section_6, .page-id-371096 #page-container .et_pb_section_7, .page-id-371096 #page-container .et_pb_section_8, .page-id-371230 #page-container .et_pb_section_3, .page-id-371274 #page-container .et_pb_section_3, .page-id-371284 #page-container .et_pb_section_3, .page-id-371254 #page-container .et_pb_section_3) .et_pb_module:not(.et_pb_number_counter):not(:is(.page-id-370800 .et_pb_section_4 .et_pb_text)) { margin-top: 0 !important; }
:is(.page-id-244492 #page-container .et_pb_section_4, .page-id-244492 #page-container .et_pb_section_5, .page-id-244492 #page-container .et_pb_section_7, .page-id-244492 #page-container .et_pb_section_8, .page-id-244492 #page-container .et_pb_section_9, .page-id-244492 #page-container .et_pb_section_10, .page-id-370800 #page-container .et_pb_section_3, .page-id-370800 #page-container .et_pb_section_4, .page-id-370800 #page-container .et_pb_section_5, .page-id-371096 #page-container .et_pb_section_4, .page-id-371096 #page-container .et_pb_section_5, .page-id-371096 #page-container .et_pb_section_6, .page-id-371096 #page-container .et_pb_section_7, .page-id-371096 #page-container .et_pb_section_8, .page-id-371230 #page-container .et_pb_section_3, .page-id-371274 #page-container .et_pb_section_3, .page-id-371284 #page-container .et_pb_section_3, .page-id-371254 #page-container .et_pb_section_3) .dnxte_multi_heading { margin-bottom: 30px !important; }
@media (max-width: 980px) {
  .page-id-244492 #page-container .et_pb_section_4, .page-id-244492 #page-container .et_pb_section_5, .page-id-244492 #page-container .et_pb_section_7, .page-id-244492 #page-container .et_pb_section_8, .page-id-244492 #page-container .et_pb_section_9, .page-id-244492 #page-container .et_pb_section_10, .page-id-370800 #page-container .et_pb_section_3, .page-id-370800 #page-container .et_pb_section_4, .page-id-370800 #page-container .et_pb_section_5, .page-id-371096 #page-container .et_pb_section_4, .page-id-371096 #page-container .et_pb_section_5, .page-id-371096 #page-container .et_pb_section_6, .page-id-371096 #page-container .et_pb_section_7, .page-id-371096 #page-container .et_pb_section_8, .page-id-371230 #page-container .et_pb_section_3, .page-id-371274 #page-container .et_pb_section_3, .page-id-371284 #page-container .et_pb_section_3, .page-id-371254 #page-container .et_pb_section_3 { padding-top: 50px !important; padding-bottom: 50px !important; }
  :is(.page-id-244492 #page-container .et_pb_section_4, .page-id-244492 #page-container .et_pb_section_5, .page-id-244492 #page-container .et_pb_section_7, .page-id-244492 #page-container .et_pb_section_8, .page-id-244492 #page-container .et_pb_section_9, .page-id-244492 #page-container .et_pb_section_10, .page-id-370800 #page-container .et_pb_section_3, .page-id-370800 #page-container .et_pb_section_4, .page-id-370800 #page-container .et_pb_section_5, .page-id-371096 #page-container .et_pb_section_4, .page-id-371096 #page-container .et_pb_section_5, .page-id-371096 #page-container .et_pb_section_6, .page-id-371096 #page-container .et_pb_section_7, .page-id-371096 #page-container .et_pb_section_8, .page-id-371230 #page-container .et_pb_section_3, .page-id-371274 #page-container .et_pb_section_3, .page-id-371284 #page-container .et_pb_section_3, .page-id-371254 #page-container .et_pb_section_3) > .et_pb_row { margin-bottom: 28px !important; }
  :is(.page-id-244492 #page-container .et_pb_section_4, .page-id-244492 #page-container .et_pb_section_5, .page-id-244492 #page-container .et_pb_section_7, .page-id-244492 #page-container .et_pb_section_8, .page-id-244492 #page-container .et_pb_section_9, .page-id-244492 #page-container .et_pb_section_10, .page-id-370800 #page-container .et_pb_section_3, .page-id-370800 #page-container .et_pb_section_4, .page-id-370800 #page-container .et_pb_section_5, .page-id-371096 #page-container .et_pb_section_4, .page-id-371096 #page-container .et_pb_section_5, .page-id-371096 #page-container .et_pb_section_6, .page-id-371096 #page-container .et_pb_section_7, .page-id-371096 #page-container .et_pb_section_8, .page-id-371230 #page-container .et_pb_section_3, .page-id-371274 #page-container .et_pb_section_3, .page-id-371284 #page-container .et_pb_section_3, .page-id-371254 #page-container .et_pb_section_3) .dnxte_multi_heading { margin-bottom: 22px !important; }
}

/* phones: top banner sliders edge to edge (Cool Roof Tiles + Maviaa Properties use a separate phone banner) */
@media (max-width: 980px) {
  .page-id-244492 #page-container .et_pb_section_2, .page-id-371096 #page-container .et_pb_section_3 { padding: 0 !important; }
  .page-id-244492 #page-container .et_pb_section_2 > .et_pb_row, .page-id-371096 #page-container .et_pb_section_3 > .et_pb_row { width: 100% !important; max-width: none !important; padding: 0 !important; }
  .page-id-244492 .et_pb_section_2 .et_pb_column, .page-id-371096 .et_pb_section_3 .et_pb_column { padding: 0 !important; }
}

/* ===== phones: tidy sections ===== */
@media (max-width: 767px) {
  /* Cool Roof "Welcome To" photo: full width, no empty box under it */
  .page-id-244492 .dnxte_floating_element_0, .page-id-244492 .dnxte_floating_element_0 .dnxte-floatimg-wrapper { height: auto !important; min-height: 0 !important; }
  .page-id-244492 .dnxte_floating_element_0 .dnxte_floating_element_child { position: relative !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; width: 100% !important; transform: none !important; }
  .page-id-244492 .dnxte_floating_element_0 .dnxte_floating_element_child_1 { display: none !important; }
  .page-id-244492 .dnxte_floating_element_0 { margin: 20px 0 0 !important; }
  .page-id-244492 .dnxte_floating_element_0 img.dnxte-floting-image { animation: none !important; }
  .page-id-244492 .dnxte_floating_element_0 img { position: static !important; display: block; width: 100% !important; height: auto !important; max-width: 100% !important; }
  /* headings never overlap the gallery / testimonial cards below them */
  .page-id-244492 .dnxte_masonary_0, .page-id-244492 .dnxte_testimonial_parent_0 { margin-top: 24px !important; }
  /* Contact section: the snow/penguin picture blew up to full height on phones -> soft light-blue background */
  .page-id-244492 #page-container .et_pb_section_10 { background-image: none !important; background-color: #eaf4fb !important; }
}
}
/* Cool Roof gallery: small "Our Gallery" label was dark blue on the dark background */
.page-id-244492 .et_pb_section_8 .dnxte_multi_heading_2 .dnxt-text-one .dnxt-gradient-text-color-1, .page-id-244492 .et_pb_section_8 .dnxte_multi_heading_2 .dnxt-text-one, .page-id-244492 .et_pb_section_8 .dnxte_multi_heading_2 h1 > span:first-child, .page-id-244492 .et_pb_section_8 .dnxte_multi_heading_2 :is(h4,h5,h6,p) { color: #a9c94f !important; }
.page-id-244492 #page-container .et_pb_section_8 .dnxte_multi_heading_2 .dnxt-gradient-text-color-1 { color: #a9c94f !important; -webkit-text-fill-color: #a9c94f !important; background: none !important; }
@media (max-width: 980px) {
  /* About achievements: the last counter circle stays inside the dark picture */
  .page-id-370800 #page-container .et_pb_section_4 { padding-bottom: 130px !important; }
  /* footer: social icons never sit on the small house icons */
  .et_pb_social_media_follow { margin-bottom: 30px !important; }
}

/* ===== phones: Cool Roof Tiles + Maviaa Properties header = clean full-width bar, logo fully inside it ===== */
@media (max-width: 980px) {
  .page-id-244492 #page-container .et_pb_section_1, .page-id-371096 #page-container .et_pb_section_1 {
    margin: 0 !important; padding: 10px 0 !important; position: relative; z-index: 20; }
  .page-id-244492 #page-container .et_pb_section_1 { background-color: #364890 !important; }
  .page-id-371096 #page-container .et_pb_section_1 { background-color: #f6f6f4 !important; }
  .page-id-244492 #page-container .et_pb_section_1 > .et_pb_row, .page-id-371096 #page-container .et_pb_section_1 > .et_pb_row {
    width: 90% !important; max-width: none !important; padding: 0 !important; margin: 0 auto !important; background: transparent !important; }
  :is(.page-id-244492, .page-id-371096) .et_pb_section_1 .et_pb_menu, :is(.page-id-244492, .page-id-371096) .et_pb_section_1 .et_pb_menu_inner_container {
    margin: 0 !important; padding: 0 !important; width: 100% !important; display: flex !important; align-items: center; justify-content: space-between; min-height: 0 !important; }
  :is(.page-id-244492, .page-id-371096) .et_pb_section_1 .et_pb_menu__logo-wrap, :is(.page-id-244492, .page-id-371096) .et_pb_section_1 .et_pb_menu__logo { margin: 0 !important; padding: 0 !important; }
  :is(.page-id-244492, .page-id-371096) .et_pb_section_1 .et_pb_menu__logo img { height: 62px !important; width: auto !important; max-width: 150px !important; display: block; }
  :is(.page-id-244492, .page-id-371096) .et_pb_section_1 .et_pb_menu__wrap { margin-left: auto !important; flex: 0 0 auto; }
  /* banner starts right under the header (it was pulled up under it) */
  .page-id-244492 #page-container .et_pb_section_2, .page-id-371096 #page-container .et_pb_section_3 { margin-top: 0 !important; }
  :is(.page-id-244492 .et_pb_section_2, .page-id-371096 .et_pb_section_3) :is(.et_pb_row, .dnxte_coverflowslider_parent) { margin-top: 0 !important; }
}
@media (max-width: 980px) { .page-id-244492 .et_pb_section_1 .mobile_menu_bar:before, .page-id-244492 .et_pb_section_1 .mobile_menu_bar { color: #fff !important; } }
@media (max-width: 767px) {
  /* Cool Roof contact: the two big penguin pictures pushed the form far down on phones -> hidden on phones only */
  .page-id-244492 .et_pb_section_10 .et_pb_column_25, .page-id-244492 .et_pb_section_10 .et_pb_column_28 { display: none !important; }
  .page-id-244492 .et_pb_section_10 .et_pb_column_26 { margin-bottom: 22px !important; }
  /* Cool Roof "Welcome To" picture centred */
  .page-id-244492 .dnxte_floating_element_0 img { max-width: 300px !important; margin: 0 auto !important; }
}
