/* ===== Kartya Textiles – 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; }


/* Home banner slider: full width */
.page-id-51 #page-container .et_pb_section_0 > .et_pb_row { width: 100% !important; max-width: none !important; }

/* phones: header = logo at the left edge of the 90% box, menu button at the right edge
   (logo image has ~28% transparent space on its left, so it is pulled back to the edge) */
@media (max-width: 980px) {
  .et_pb_menu_1_tb_header.et_pb_module { margin-left: 0 !important; margin-right: 0 !important; width: 100% !important; }
  .et_pb_menu_1_tb_header .et_pb_menu_inner_container { justify-content: space-between !important; }
  .et_pb_menu_1_tb_header .et_pb_menu__logo-wrap { justify-content: flex-start !important; text-align: left !important; margin: 0 !important; }
  .et_pb_menu_1_tb_header .et_pb_menu__logo { text-align: left !important; margin: 0 !important; }
  .et_pb_menu_1_tb_header .et_pb_menu__logo img { width: 160px !important; height: auto !important; max-width: none !important; margin-left: -45px !important; }
  .et_pb_menu_1_tb_header .et_pb_menu__wrap { justify-content: flex-end !important; margin-left: auto !important; }
}

/* "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: #003938; }
.pym-sum input { max-width: 220px; }
