/*---------------------------------------------------------------------------------

 Theme Name:   Base Template
 Theme URI:    https://base-template.definitivedev.com/
 Description:  Infinite Base Template
 Author:       GM
 Author URI:   
 Template:     Divi
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html

------------------------------ ADDITIONAL CSS HERE ------------------------------*/

/* FONTS */
@font-face {
    font-family: 'circular_stdlight_italic';
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-light_italic-webfont.eot);
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-light_italic-webfont.eot?#iefix) format('embedded-opentype'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-light_italic-webfont.woff2) format('woff2'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-light_italic-webfont.woff) format('woff'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-light_italic-webfont.ttf) format('truetype');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'circular_stdlight';
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-light-webfont.eot);
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-light-webfont.eot?#iefix) format('embedded-opentype'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-light-webfont.woff2) format('woff2'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-light-webfont.woff) format('woff'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-light-webfont.ttf) format('truetype');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'circular_stdblack';
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-black-webfont.eot);
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-black-webfont.eot?#iefix) format('embedded-opentype'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-black-webfont.woff2) format('woff2'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-black-webfont.woff) format('woff'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-black-webfont.ttf) format('truetype');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'circular_stdbook_italic';
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-bookitalic-webfont.eot);
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-bookitalic-webfont.eot?#iefix) format('embedded-opentype'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-bookitalic-webfont.woff2) format('woff2'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-bookitalic-webfont.woff) format('woff'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-bookitalic-webfont.ttf) format('truetype');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'circular_stdmedium_italic';
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-mediumitalic-webfont.eot);
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-mediumitalic-webfont.eot?#iefix) format('embedded-opentype'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-mediumitalic-webfont.woff2) format('woff2'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-mediumitalic-webfont.woff) format('woff'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-mediumitalic-webfont.ttf) format('truetype');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'circular_stdblack_italic';
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-blackitalic-webfont.eot);
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-blackitalic-webfont.eot?#iefix) format('embedded-opentype'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-blackitalic-webfont.woff2) format('woff2'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-blackitalic-webfont.woff) format('woff'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-blackitalic-webfont.ttf) format('truetype');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'circular_stdbold';
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-bold-webfont.eot);
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-bold-webfont.eot?#iefix) format('embedded-opentype'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-bold-webfont.woff2) format('woff2'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-bold-webfont.woff) format('woff'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-bold-webfont.ttf) format('truetype');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'circular_stdbook';
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-book-webfont.eot);
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-book-webfont.eot?#iefix) format('embedded-opentype'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-book-webfont.woff2) format('woff2'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-book-webfont.woff) format('woff'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-book-webfont.ttf) format('truetype');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'circular_stdmedium';
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-medium-webfont.eot);
    src: url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-medium-webfont.eot?#iefix) format('embedded-opentype'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-medium-webfont.woff2) format('woff2'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-medium-webfont.woff) format('woff'),
         url(https://id2025.infinite-dev.co.uk/wp-content/themes/Infinite/Fonts/circularstd-medium-webfont.ttf) format('truetype');
    font-weight: normal;
    font-style: normal;

}

/* TYPOGRAPHY */

h1 {
	font-family: 'circular_stdlight', Geneva, Verdana, sans-serif;
	font-size: 40px !important;
	transition: all ease-in-out .5s;
}

h2 {
	font-family: 'circular_stdmedium', Geneva, Verdana, sans-serif;
	font-size: 28px !important;
	line-height: 1.1em !important;
}
h3 {
	font-family: 'circular_stdbold', Geneva, Verdana, sans-serif;
	font-size: 24px !important;
}
h4 {
	font-family: 'circular_stdbook', Geneva, Verdana, sans-serif;
	font-size: 22px !important;
}
h5 {
	font-family: 'circular_stdbook', Geneva, Verdana, sans-serif;
	font-size: 19px !important;
}
h6 {
	font-family: 'circular_stdbook', Geneva, Verdana, sans-serif;
	font-size: 14px !important;
}
p {
	font-family: 'circular_stdbook', Geneva, Verdana, sans-serif;
	font-size: 18px !important;
	line-height: 1.5em;
}

h1 + p {
  margin-top: 40px;
}
h2 + p {
  margin-top: 20px;
}
h2 + h3 {
  margin-top: 30px;
}

h3 + p {
  margin-top: 15px;
}

h4 + p, h5 + p, h6 + p {
  margin-top: 10px;
}
p + h3, p + h4, p + h5, p + h6 {
	margin-top: 10px;
}
p + h2 {
	margin-top: 15px;
}

.wp-block-quote + h2, .wp-block-quote + h3, .wp-block-quote + h4, .wp-block-quote + h5 {
	margin-top: 60px;
}
p, ul, ol {
}
.wp-block-quote p, blockquote p {
	font-size: 20px;
	margin-bottom: 10px;
}
.wp-block-quote p strong, blockquote p strong {
	font-size: 16px;
}
.wp-block-quote p {
	padding-bottom: 10px;
}
blockquote {
	border-left: 10px solid #dba529 !important;
  margin: 0 0 1em;
  padding-left: 2em !important;
}
ul, ol {
	margin-left: 4px;
}
li::marker {
	color: #dba529;
	font-weight: normal;
	font-style: normal;
	font-size: 18px;
}
sup, sub {
  font-size: 60%;
}
pre {
  background: #fafafa;
}
.entry-content ol {
	list-style-position: outside !important;
	padding-left: 15px !important;
}
p a, h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
	border-bottom: 1px solid #ebebeb;
	transition: ease .5s all;
}
p a:hover, h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover {
	color: #888;
	border-bottom: 1px solid #dba529;
}
.id-legal p a, .id-legal p a:hover, .id-contact p a, .id-contact p a:hover {
  border-bottom: unset;
}

/* TYPOGRAPHY MEDIA QUERIES */
@media (max-width: 767px) {
	h1 {
	font-size: 34px !important;
}
}
@media (max-width: 479px) {
	h1 {
	font-size: 30px !important;
}
}

/* BUTTONS */

.standard-button, .et_pb_button, .et_button_no_icon .et_pb_button {
	font-family: 'circular_stdblack', arial, sans-serif;
	font-size: 16px !important;
	color: #dba529 !important;
	background-color: #22222c !important;
	padding: 10px 20px !important;
	transition: all ease 1s !important;
	-webkit-transition: all ease 1s !important;
	display: inline-block;
	margin: 15px 0 15px !important;
	border: 1px solid #22222c !important;
	text-align: center;
}
.standard-button:hover, .et_pb_button:hover, .et_button_no_icon .et_pb_button:hover {
	color: #fff !important;
	background-color: #dba529 !important;
	border: 1px solid #dba529 !important;
	padding: 10px 20px !important;
	cursor: pointer;
}

/* FORMIDABLE FORMS TWEAKS */
.with_frm_style .frm_form_fields > fieldset {
	font-family: 'circular_stdbook', Geneva, Verdana, sans-serif;
}
.id-bottom-rule .frm_primary_label {
  display: none !important;
  visibility: hidden !important;
}
.id-bottom-rule input {
  border: unset !important;
    border-bottom-width: unset;
    border-bottom-style: unset;
    border-bottom-color: unset;
  border-bottom: 1px solid #dba529 !important;
	padding-left: unset !important;
}
input::placeholder {
	color: #22222c !important;
}
.id-bottom-rule input:focus {
	border-bottom: 1px solid #22222c !important;
}
input:focus::placeholder {
	color: #ffffff !important;
}
.with_frm_style .vertical_radio .frm_checkbox label, .with_frm_style .vertical_radio .frm_radio label {
  display: flex;
  align-items: center;
}
.with_frm_style .frm_checkbox label input[type="checkbox"], .with_frm_style .frm_radio label input[type="radio"] {
  margin-right: 10px;
}
.with_frm_style .frm_message {
  border: unset;
  background-color: unset;
  color: #22222c;
  border-radius: unset;
  font-size: 20px !important;
}
.with_frm_style .frm_message {
  padding: 0;
}

/* REPLACING IMAGE HOVER ICON WITH ELLIPSIS */
.et_overlay::before {
	border: 2px solid #22222c;
  border-radius: 50%;
  padding: 5px;
	opacity: 0.8;
}

/* Ensure `.id-masonry-image` remains the hover container */
.id-masonry-image {
  position: relative;
  overflow: hidden; /* ✅ Ensures no container expansion */
}

/* ✅ CLIENT NAME (Always Static) */
.id-masonry-image::before {
  content: attr(data-bold);
  position: absolute;
  left: 10px;
  color: #ffffff !important;
  font-size: 26px !important;
  line-height: 1.2em !important;
  font-family: 'circular_stdbook', Geneva, Verdana, sans-serif !important;
  text-align: left !important;
  white-space: nowrap !important; /* ✅ Prevents wrapping */
  word-wrap: normal !important;
  max-width: 90% !important;
  width: max-content !important;
  min-width: 100px !important;
  z-index: 10000 !important;
  pointer-events: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 1s ease-in-out, visibility 0s linear 1s !important;
  display: block !important;
  padding-left: 10px !important;
  bottom: 47px !important; /* ✅ Default positioning */
}

/* ✅ PROJECT TITLE (WITH ELLIPSIS FOR LONG TEXT) */
.id-masonry-image::after {
  content: attr(data-alt);
  position: absolute;
  left: 10px;
  color: #ffffff !important;
  font-size: 26px !important;
  line-height: 1em !important;
  font-family: 'circular_stdlight', Geneva, Verdana, sans-serif !important;
  text-align: left !important;
  white-space: nowrap !important; /* ✅ Keeps text in a single line */
  word-wrap: normal !important;
  max-width: 90% !important; /* ✅ Prevents text from overflowing */
  width: max-content !important;
  min-width: 100px !important;
  z-index: 10000 !important;
  pointer-events: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 1s ease-in-out, visibility 0s linear 1s !important;
  display: block !important;
  padding-left: 10px !important;
  bottom: 20px !important; /* ✅ Adjust bottom spacing */

  /* ✅ Failsafe: Ellipsis if text is too long */
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* ✅ Show both lines on hover */
.id-masonry-image:hover::before, .id-masonry-image:hover::after {
  opacity: 1 !important;
  visibility: visible !important;
  transition: opacity 1s ease-in-out, visibility 0s linear 0s !important;
}

/* ✅ Chrome Fix: Ensures `::before` content appears */
@supports (-webkit-appearance:none) {
  .id-masonry-image::before {
    content: attr(data-bold) !important;
  }
}



@media (max-width: 980px) {
	.id-masonry-image::before {
		font-size: 20px !important;
		bottom: 42px !important;
	}
	.id-masonry-image::after {
		font-size: 20px !important;
	}
}
@media (max-width: 767px) {
	.id-masonry-image::before {
		font-size: 16px !important;
		bottom: 38px !important;
	}
	.id-masonry-image::after {
		font-size: 16px !important;
	}
}
@media (max-width: 660px) {
	.id-masonry-image:hover::before, .id-masonry-image:hover::after {
		visibility: hidden !important;
	}
}

.mfp-iframe-holder .mfp-close, .mfp-image-holder .mfp-close {
  top: 40px;
  opacity: .7;
  padding: 10px 20px;
}
.mfp-iframe-holder .mfp-close, .mfp-image-holder .mfp-close:hover {
  top: 40px;
  opacity: 1;
  padding: 10px 20px;
}
/* ID MASONRY */
.id-masonry-image {
	padding: 10px;
	display: flex;
	overflow: hidden;
	clip-path: inset(10px 10px 10px 10px);
	transition: clip-path 1s ease;
}
.id-masonry-image:hover {
	clip-path: inset(10px 10px 10px 10px);
}
.id-masonry-image img {
	transition: transform 1s ease;
}
.id-masonry-image:hover img {
	transform: scale(1.04);
}

/*.id-masonry-half-height {
  height: 50%;
}*/
/*.et_pb_module.et_pb_has_overlay .et_overlay, article.et_pb_has_overlay {
	transition: all ease-in-out 1s;
}*/

.id-masonry-col-fill, .id-masonry-image .et_pb_lightbox_image {
	display: flex !important;
}

.id-masonry-col-fill img, .id-masonry-col-fill a {
	height: 100%;
	width: auto;
	object-fit: cover;
}
.focus-right img {
	object-fit: cover;
	object-position: right;
}
.focus-top img {
	object-fit: cover;
	object-position: top;
}

/* THIS LITTLE BIT OF CODE IS REALLY HARD TO FIND BUT IT HIDES THE ANIMATION WHEN CLOSING THE LIGHTBOX IMAGE! */
.mfp-removing img {
    opacity: 0!important;
}
/*.id-masonry-image img {
  transition: all ease 0.7s;
}*/
/*.id-masonry-image:hover {
	filter: blur(1px) grayscale(30%);
	opacity: 0.9;
}*/

.id-masonry-col-fill, .id-masonry-col {
  overflow: hidden;
	transition: .5s ease all;
}

@media (min-width: 1341px) {
.id-masonry-section .id-masonry-row, .id-masonry-row {
max-width: 1360px !important;
	transition: .5s ease all;
}
}

@media (max-width: 1715px) {
.id-masonry-section .id-masonry-row, .id-masonry-row {
width: calc(80% + 20px) !important;
	transition: .5s ease all;
}
}

/* THE MEDIA QUERIES THAT RESET THE COLUMN WIDTHS */

@media (max-width: 980px) {
}
.id-masonry-4-10-col-980 {
  width: 40% !important;
  display: inline-flex !important;
flex-wrap: nowrap;
}
.id-masonry-6-10-col-980 {
  width: 60% !important;
  display: inline-flex !important;
flex-wrap: nowrap;
}
.id-masonry-1-3-col-980 {
  width: 34% !important;
  display: inline-flex !important;
flex-wrap: nowrap;
}
.id-masonry-2-3-col-980 {
  width: 66% !important;
  display: inline-flex !important;
flex-wrap: nowrap;
}

@media (max-width: 767px) {
.id-masonry-2-col-pic {
  width: 50% !important;
  display: inline-flex !important;
flex-wrap: nowrap;
}
.id-masonry-2-col-pic img {
  height: 270px;
  object-fit: cover;
}
	.restrict-row-200 img {
		object-fit: cover;
		max-height: 200px;
}
.id-masonry-2-3-col {
  width: 66% !important;
  display: inline-flex !important;
flex-wrap: nowrap;
}
.id-masonry-1-3-col {
  width: 34% !important;
  display: inline-flex !important;
flex-wrap: nowrap;
}
	.id-mob-33 {
		width: 33% !important;
	}
	.id-mob-66 {
		width: 67% !important;
	}
}
@media (max-width: 660px) {
	.id-masonry-2-col-pic img {
  height: 240px;
  object-fit: cover;
}
}
@media (max-width: 600px) {
	.id-masonry-2-col-pic img {
  height: 220px;
  object-fit: cover;
}
}
@media (max-width: 540px) {
	.id-masonry-2-col-pic img {
  height: 200px;
  object-fit: cover;
}
	.restrict-row-200 img {
	object-fit: cover;
	max-height: 150px;
}
}
@media (max-width: 479px) {
.id-masonry-2-col-pic img {
  height: 180px;
  object-fit: cover;
}
}


/*@media (max-width: 980px) {
.id-masonry-col {
	width: calc(50% - 10px) !important;
}
.id-masonry-col-fill img {
	height: 100%;
	width: calc(50% - 10px) !important;
	object-fit: cover;
}
}*/
