
html #header .header-logo.custom-header-logo .logo{
		top: -7px;
		left: -30px;
}


@media (min-width: 1200px) {
	html #header .header-logo.custom-header-logo .logo{
			top: -10px;
			left: -30px;
	}
	html #header .header-logo.custom-header-logo:before {
		content: '';
		position: absolute;
		bottom: -107px;
		left: 80px;
		width: 200px;
		height: 550px;
		opacity: 1;
		visibility: visible;
		transform: rotate(45deg);
		transition: ease opacity 300ms, ease transform 300ms;
	}
}

/* Parallax footer background */
.parallax-bg {
    background-image: url('img/demos/construction/projects/wall2-wide.jpg');
    background-repeat: no-repeat !important;
    background-position: center top !important;
    background-size: cover;
min-height: 60vh;
        
    background-attachment: fixed !important;  
    width: 100% !important;
    background-color: #f3f3f3;
    position: relative;
}

/* Parallax footer background */
#footer.footer-parallax-bg {
    background-image: url('img/demos/construction/projects/wall2-wide.jpg');
    background-repeat: no-repeat !important;
    background-position: center bottom !important;
    background-size: contain !important;                 
    background-attachment: fixed !important;  
    background-color: #f3f3f3;
    position: relative;
}



/* 80% white overlay on top of the background */
.footer-parallax-bg .contact-mask {
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.8);
    z-index: 1;
    pointer-events: none;
}

/* All footer content sits above the mask */
.footer-parallax-bg .footer-inner {
    position: relative;
    z-index: 2;
}

.hero-mask { 
	position: absolute; 
	inset: 0; 
	background: rgba(255,255,255,0.5); 
}


.footer-parallax-bg > *:not(.contact-mask) {
    position: relative;
    z-index: 1;
}

/*NEW: helps to adjust landing page text with "SHORING EXPERTS" text on mobile*/
@media (max-width: 575px) {

    h1.custom-big-text-style-1 {
        font-size: 36px !important;     
        line-height: 1.1 !important;
        text-align: center !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .custom-outline-text-style-1 {
        text-align: center !important;
    }

    .owl-carousel-light .background-image-wrapper {
        background-position: center !important;
    }

    .owl-carousel-light .container {
        text-align: center !important;
        padding-top: 80px !important;
    }

    .owl-carousel-light img[src*="srdrill-hero.png"] {
        display: none !important;
    }
}

/*NEW: Same thing for navigation bar*/
/* Mobile header tweaks */
@media (max-width: 575px) {

  #header .header-body {
    background: rgba(0, 0, 0, 0.75);
  }

  .header-container.container {
    padding-left: 16px;
    padding-right: 16px;
  }

  .custom-header-logo img.logo,
  .custom-header-logo img.logo-sticky {
    width: 140px;
    height: auto;
  }

  .header-row {
    align-items: center;
  }

  .header-btn-collapse-nav {
    margin-left: auto;
    font-size: 1.25rem;
    padding: 6px 10px;
  }

  .header-nav-main nav.collapse {
    padding: 8px 0;
    margin-top: 8px;
  }

  #mainNav .nav-link {
    padding: 0.5rem 0;
    text-align: center;
    font-size: 0.95rem;
    width: 100%;
  }

  .header-nav-features {
    display: none !important;
  }
}

/*NEW: Crop projects images to 392X300 */
.thumb-info-wrapper {
    position: relative;    
    width: 392px;
    height: 300px;
    overflow: hidden;
}

.thumb-info-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;   
    object-position: center;
}

/* Gallery */

.mfp-container {
  padding: 30px 16px;
}

.mfp-content {
  position: relative !important;
  width: 65vw !important;
  max-width: 720px;
}

.mfp-figure {
  aspect-ratio: 4/5;   
  width: 100%;
  max-height: 90vh;

  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  box-sizing: border-box;
}

.mfp-img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center;
  transition: opacity 800ms ease-in-out;
  box-sizing: border-box;
}

.mfp-bottom-bar {
  margin-top: 8px !important;
}

.mfp-arrow-left { left: calc(30% - 28vw) !important; }
.mfp-arrow-right { right: calc(30% - 28vw) !important; }

@media (max-width: 768px) {
  .gy-5 {
  --bs-gutter-y: 0rem;
}

  .mfp-container {
    padding: 8px 6px;
  }

  .mfp-content {
    width: 92vw !important;
    max-width: 392px !important;
    margin: 0 auto;
  }

  .mfp-figure {
   /* aspect-ratio: 3 / 4;              
    height: calc(100vh - 120px); */
    max-height: none;                 
  }

  .mfp-bottom-bar {
    margin-top: 4px !important;
    min-height: 0;
  }

  .mfp-arrow-left {
    left: 8px !important;
  }

  .mfp-arrow-right {
    right: 8px !important;
  }
}

@media (max-width: 768px) {
  .text-3-5 {
    font-size: 0.9em !important;
  }
}

button.mfp-arrow {
  background: #d57229;
}

.footer-bg-image {
  position: relative;  
  background-image: url('../img/demos/construction/projects/wall2-wide.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

#footer,
#footer .footer-inner {
  position: relative;
  z-index: 2;             
}

.footer-bg-image::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0.781),
    rgba(255, 255, 255, 0.826)
  );
  z-index: 1;             
  pointer-events: none;
}

/* Entire image clickable */
.thumb-info-wrapper > a.open-gallery {
  display: block;
  position: relative;
}

.thumb-info-wrapper > a.open-gallery::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.344);
  opacity: 0;
  transition: opacity 0.25s ease;
}

.thumb-info-wrapper > a.open-gallery:hover::after {
  opacity: 1;
}
.thumb-info-wrapper > a.open-gallery {
  cursor: pointer;
}

.thumb-info-wrapper{
  position: relative;
}

/* Link becomes the full clickable layer */
.thumb-info-wrapper > a.open-gallery{
  position: absolute;
  inset: 0;
  display: block;
  z-index: 5;
}

.thumb-info-wrapper > a.open-gallery > img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.thumb-info.thumb-info-centered-icons .thumb-info-action{
  display: none !important;
}

html, body {
  width: 100%;
  overflow-x: hidden;
}

.body {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

#main, #wrapper, .body-wrapper {
  max-width: none !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
}
.parallax-bg{
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
body.boxed .body,
body.boxed #main,
body.boxed .main {
  max-width: none !important;
  width: 100% !important;
}
.parallax-bg{
  position: relative;

  width: 200vw;
  margin-left: -50vw;
  margin-right: -50vw;
  background-position: center;
  background-repeat: no-repeat;
}

@media (max-width: 767.98px) {
  .row.g-4 {
    justify-content: center;
  }
}
@media (max-width: 767.98px) {
  .portfolio-item {
    text-align: center;
  }

  .thumb-info-wrapper {
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }

  .thumb-info-wrapper img {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}

html #header .header-logo.custom-header-logo::before {
  bottom: -109px !important;
  width: 211px !important;
}

@media (max-width: 767.98px) {
  .container.custom-margin-1 {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  .pb-4 {
    padding-bottom: 0 !important;
  }
}

.svg-fill-color-dark {
  fill: #212529df !important;
}

@media (max-width: 767.98px) {

  .home-services .d-flex {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .home-services .d-flex > div {
    padding-left: 0 !important;
  }

  .home-services .d-flex img {
    margin-bottom: 1rem;
  }

  .home-services .custom-view-more {
    justify-content: center;
  }
}


@media (max-width: 767.98px) {
  .diamonds > li:nth-child(3),
  .diamonds > li:nth-child(4),
  .diamonds > li:nth-child(6),
  .diamonds > li:nth-child(7),
  .diamonds > li:nth-child(8) {
    display: none !important;
  }

}
@media (max-width: 575px) {

    .diamonds-wrapper {
    margin-top: 62px !important; 
  }

  .diamonds > li:nth-child(3),
  .diamonds > li:nth-child(4),
  .diamonds > li:nth-child(6),
  .diamonds > li:nth-child(7),
  .diamonds > li:nth-child(8) { display: none !important; }

  .diamonds-wrapper { min-height: 0 !important; height: auto !important; }
  .diamonds-wrapper .diamonds {
    position: relative !important;
    left: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: auto !important;
    padding: 0 !important;
  }
  .diamonds-wrapper .diamonds .diamond,
  .diamonds-wrapper .diamonds > li:first-child .diamond {
    margin: 0 !important;
  }

  .diamonds {
    --d: 144px;     
    --y: 140px;     
    --x: 78px;      

    width: calc(var(--d) + var(--x) * 2) !important;
    height: calc(var(--d) + var(--y)) !important;
    margin: 18px auto 28px !important;
    position: relative !important;
  }

  .diamonds > li {
    position: absolute !important;
    margin: 0 !important;
    float: none !important;
    clear: none !important;
  }

  .diamonds > li:nth-child(2) {
    top: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 3;
  }

  .diamonds > li:nth-child(1) {
    left: calc(0px - var(--x)) !important;
    z-index: 1;
  }

  .diamonds > li:nth-child(5) {
    right: calc(0px - var(--x)) !important;
    z-index: 2;
  }

  .diamonds > li:nth-child(1) .diamond::after,
  .diamonds > li:nth-child(5) .diamond::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.667);
    opacity: 1 !important;
    transform: scale(1) !important;
    z-index: 2;
    pointer-events: none;
  }
}


.mfp-figure {
  display: flex;
  align-items: center;
  justify-content: center;
  max-height: 90vh;
}

.mfp-img {
  position: relative !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 90vh !important;
  object-fit: contain;  
}

.mfp-logo {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 11000;     
  pointer-events: none;
  display: none;
}

body.mfp-has-logo .mfp-logo {
  display: block;
}

.mfp-logo img {
  width: 120px;
  height: auto;
  opacity: 0.75;
}

.mfp-content {
  position: relative !important; 
}

.mfp-figure {
  position: relative;
}

.mfp-logo {
  position: absolute;
  right: clamp(12px, 2vw, 24px);     
  bottom: clamp(55px, 2vh, 24px);
  pointer-events: none;
  display: none;
  z-index: 5;
}

body.mfp-has-logo .mfp-logo {
  display: block;
}

.mfp-logo img {
  width: clamp(80px, 9vw, 120px);
  height: auto;
  opacity: 0.75;
  filter: drop-shadow(0 2px 8px rgba(0,0,0,.35));
}

@media (min-width: 794px) and (max-width: 999px) {
  .mfp-logo {
    right: clamp(96px, 4vw, 64px);
  }
}

@media (min-width: 1000px) and (max-width: 1134px) {
  .mfp-logo {
    right: clamp(126px, 6vw, 106px);
  }
}

@media (min-width: 1200px) {
  .mfp-logo {
    right: clamp(24px, 2vw, 32px);
  }
}

/* EDUCATION */
section .card {
  box-shadow: 0 10px 30px rgba(0,0,0,.08);
}

/* Education cards: keep buttons aligned */
.education-cards .card-body{
  display: flex;
  flex-direction: column;
  height: 100%;
}

.education-cards .card-body p{
  margin-bottom: 1rem; /* keep spacing consistent */
}

.education-cards .card-body a.btn{
  margin-top: auto; /* pushes button to bottom */
  align-self: flex-start; /* keep button left-aligned */
}
