/*!
Theme Name: carbon
Description: Custom theme for Carbon Design & Build
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: carbon

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

carbon is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.
*/

@layer reset {
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }

  body {
    margin: unset;
  }

  button,
  input,
  textarea,
  select {
    font: inherit;
  }

  img,
  picture,
  svg,
  canvas {
    display: block;
    max-inline-size: 100%;
    block-size: auto;
  }

  @media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
      animation-duration: 0.01ms !important;
      animation-iteration-count: 1 !important;
      transition-duration: 0.01ms !important;
      scroll-behavior: auto !important;
    }
  }
}

html { 
    font-size: 62.5%;
    background: black;
}


body {
    font-family: "Inter", serif;
    font-weight: 200;
    background-color: #f8f8f8;
    color: #333;
    margin: 0; 
    font-size: 1.6rem;
    line-height: 1.8;
}

h1, h2, h3, h4, h5, h6 {
    font-family: "Taviraj", serif;
    font-weight: 300;
    font-style: normal;
    margin-bottom: 15px;
    margin:0;
    color: #000000;
}

h1,
.h1 {
    font-size: 6rem; 
}

h2,
.h2 {
    font-size: 4rem;
} 

h3,
.h3 {
    font-size: 3.8rem;
    line-height: 4.8rem;
}

h4 ,
.h4{
    font-size: 2rem;
}

h5,
.h5 {
    font-size: 1.8rem;
}

p {
    margin: 0;  
}

ul {
    list-style: none;
    margin:0;
    padding:0;
}

a {
    text-decoration: none;
} 

@media only screen and (max-width: 768px) {
    body {
        font-size: 1.5rem;
    }
    h1,
    .h1 {
        font-size: 3.5rem; 
    }

    h2,
    .h2  {
        font-size: 2.6rem;
        line-height: 3.4rem;
    } 

    h3,
    .h3  {
        font-size: 2.4rem;
        line-height: 3.2rem;
    }

    h4,
    .h4  {
        font-size: 2rem;
    }

    h5,
    .h5  {
        font-size: 1.8rem;
    }
}

/* --- Buttons --- */

.btn {
    background-color: transparent; 
    color: black;
    padding: 10px 20px;
    border: 1px solid #CCCCCC;
    text-decoration: none;
    display: inline-block;
    cursor: pointer;
	width: max-content;
}

.btn:hover {
    background-color: black; 
    color: white;
    border-color: black;
    transition: all 0.3s ease;
}

.btn--primary {
	background-color: black; 
	border-color: black;
	color: white;
}

.btn--primary:hover {
	background-color: #474747; 
	border-color: #474747;
	color: white;
}

.btn--icon {
    display: flex;
    gap: 10px;
    align-items: center;
}

/* --- Site --- */

.container {
    width: 90%;
    max-width: 1000px;
    margin: 0 auto;
}

.home .site-wrapper,
.single-post .site-wrapper {
    height: 100vh;
    overflow-y: scroll;
    scroll-snap-type: y mandatory;
    position: relative;
}

.site-wrapper.active {
	overflow: hidden;
	height: 100vh;
}

/* --- Header --- */

.site-header {
	background: black url(img/nav-background.jpg);
    background-size: cover; 
    background-position: 50% 50%; 
    background-repeat: no-repeat;
    background-color: black;
    display: flex;    
    flex-direction: column;
    align-items: center;    
    justify-content: space-between;
    text-align: center;
    position: relative;
    padding: 50px;
    color:white;
}

.home .site-header {
	background-image: url("img/background-image-3.jpg");
	background-attachment: fixed;
	height: 100vh; 
	scroll-snap-align: start;
    background-position: right;
}

.single-post .site-header {
    background: none;
    position: absolute;
    width: 100%;
    scroll-snap-align: start;
}

.home .site-header::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    opacity: .5;
    background-color:black;
    z-index: 1;
}

.site-header-inner {
    display: flex;
    width: 100%;
    max-width: 1500px;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
}

.site-header-inner div {
  flex: 1;
}

.site-logo {
    max-width: 184px;
    z-index: 2;
}

.contact-details {
    z-index: 3;
    display: flex;
    justify-content: end;
    align-items: center;
    gap:20px;
    flex-wrap: wrap;
    font-size: 1.8rem;
}

.contact-details a {
    color:white;
    display: flex;
    align-items: center;
    text-decoration: none;
    gap:15px;
    text-wrap: nowrap;
}

.contact-details span.icon {
    font-size: 32px;
}

@media only screen and (max-width: 768px) {
    .site-header {
        padding: 15px;
    }
    .single-post .site-header,
    .home .site-header {
        scroll-snap-align: none;
    }
    .home .site-header {
        padding: 15px 15px 60px;
        background-position: center right -90px;
    }
    .contact-details .details {
        display: none;
    }
    .contact-details span.icon {
        font-size: 26px;
    }
}


/* Site Navigation - Icon */

.site-nav-icon {
    position: relative;
    width: 60px;
    height: 60px;
    cursor: pointer;
    z-index: 100;
}

.site-nav-icon.active .icon-bar:nth-child(1) {
  top: 30px;
  transform: rotate(45deg);
}

.site-nav-icon.active .icon-bar:nth-child(2) {
  width: 0;
}

.site-nav-icon.active .icon-bar:nth-child(3) {
  top: 30px;
  transform: rotate(-45deg);
}

.icon-bar {
    position: absolute;
    left: 0;
    display: block;
    width: 36px;
    height: 2px;
    background-color: #ffffff;
    transition-duration: 0.3s;
    border-radius: 20px;
}

.icon-bar:nth-child(1) {
  top: 16px;
}
.icon-bar:nth-child(2) {
  top: 28px;
}
.icon-bar:nth-child(3) {
  top: 40px;
}

/* Site Navigation */


.site-nav {
    visibility: hidden;
    opacity: 0;
    height: 0;
    transition: opacity 0.3s ease-in-out;
}

.site-nav.active {
    visibility: visible;
    background: black url("img/nav-background.jpg");
    background-size: cover; 
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100vh;
    padding: 70px;
    display: flex;
    flex-direction: column;
    align-items: center;
    opacity: 1;
    z-index: 99;
    color:#C0C0C0;
    box-sizing: border-box;
}

/* --- Header --- */

.site-nav .contact-links {
    display: flex;
    width: 100%;
    max-width: 1500px;
    justify-content: space-between;
    font-size: 2.8rem;
    font-family: "Taviraj", serif;
    flex-wrap: wrap;
    gap: 30px;
}

.site-nav .contact-links div,
.site-nav .contact-links div div {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}

.site-nav .contact-links div {
    gap: 30px;
}

.site-nav .contact-links span {
    color:white;
}

.site-nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    max-width: 1500px;
    width: 100%;
    justify-content: center;
    height: 100%;
    font-size: 6rem;
    font-family: "Taviraj", serif;
    font-weight: 100;
}

.site-nav a {
    color:#C0C0C0;
    text-decoration: none;
    text-wrap: nowrap;
}

.site-nav a:hover,
.site-nav .current_page_item a {
    color:#fff;
}

@media only screen and (max-width: 768px) {
    .site-nav.active {
        padding: 120px 20px 110px
    }
    .site-nav ul {
        font-size: 4rem;
    }
    .site-nav .contact-links {
        font-size: 2.2rem;
        gap:15px;
    }
    .site-nav .contact-links div {
        gap:15px;
    }
}

/* --- Hero --- */

.hero-text {
    color: white;
}

.hero-text {
    display: flex;
    flex: 1;
    align-items: center;
    margin: 0;
    line-height: 1.3;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
    z-index: 3;
}

@media only screen and (max-width: 768px) {
    .hero-text {
        align-items: end;
        padding-bottom: 80px;
    }
}


/* --- Scroll --- */

.scroll_down {
    z-index: 5;
}

.scroll_down .mouse-btn {
    margin: 10px auto;
    width: 22px;
    height: 36px;
    border: 1px solid white;
    border-radius: 30px;
    display: flex;
}

.scroll_down .mouse-btn .mouse-scroll {
    display: block;
    width: 8px;
    height: 8px;
    background: white;
    border-radius: 50%;
    margin: auto;
    animation: scrolling 1s linear infinite;
}


@keyframes scrolling {
  0% {
    opacity: 0;
    transform: translateY(-8px);
  }

  100% {
    opacity: 1;
    transform: translateY(8px);
  }
}

/* --- Testimonial --- */

.testimonial-block {
    padding: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    scroll-snap-align: start;
	color:white;
	background-image: url(img/nav-background.jpg); 
	background-size: cover;  
	background-position: center; 
    min-height: 50vh;
}

.testimonial-inner {
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 1500px;
    gap: 30px;
    flex-wrap: wrap;
    flex-direction: column;
}

.testimonial-quote {
    font-size: 2.2rem;
    line-height: 3.6rem;
    text-align: center;
    max-width: 80%;
    margin: 0 auto;
}

.testimonial-user {
    font-weight: 700;
}

@media only screen and (max-width: 768px) {
    .testimonial-block {
        scroll-snap-align: none;
        padding: 80px 20px;
        min-height: auto;
    }
    .testimonial-inner {
        gap: 20px;
    }
    .testimonial-quote {
        font-size: 1.8rem;
        line-height: 1.6em;
        max-width: 100%;
    }
}

/* text blocks */

.text-block {
    padding: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    scroll-snap-align: start;
}

.text-block-inner {
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 1500px;
    gap: 8%;
    flex-wrap: wrap;
}

.text-block-inner--reverse {
    flex-direction: row-reverse;
}

.text-block-inner .text-block-img,
.text-block-inner .text-block-text {
    flex:1;
    color: #7E7E7E;
}

.text-block-inner .text-block-text {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.text-block-inner .text-block-text ul {
    list-style: disc;
    margin: 0 0 0 30px;
}

.text-block-inner .text-block-text ul li {
    margin: 0 0 10px 0;
}

.text-block-inner .text-block-img {
   margin:0;
   position: relative;
}

.text-block-img figcaption {
    color:white;
    position: absolute;
    display: flex;
    min-width: 100%;
    height: 100%;
    justify-content: space-between;
    flex-direction: column;
    padding:20px;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0) 80%, rgba(0, 0, 0, 0.5) 100%);
    top:0;
}

.text-block-img figcaption a {
    color: white;
}

.text-block-img figcaption a:hover {
    text-decoration: underline;
}

.name-and-position {
    display: flex;
    flex-direction: column;
}

.name-and-position .profile-name {
    color: white;
    font-family: "Inter", serif;
    font-size: 1.8rem;
    font-weight: 700;
}

.text-block-inner .text-block-img img {
    aspect-ratio: 1;
    object-fit: cover;
    box-sizing: border-box;
    height: auto;
    width: 100%;
    vertical-align: bottom;
}

.text-block-header,
.full-width-buttons {
    flex: 0 0 100%;
    display: flex;
    flex-direction: column;
    gap: 20px;
    justify-content: center;
    align-items: center;
    margin: 0 0 50px 0;
}

.text-block-text__title {
    font-weight: 700;
    text-transform: uppercase;
    font-size: 1.4rem;
    color:#7E7E7E;
    letter-spacing: 0.1em;
}

.full-width-buttons {
    margin: 50px 0 0 0;
}

@media only screen and (max-width: 768px) {
    .text-block {
        padding: 30px 15px 30px;
        scroll-snap-align: none;
        min-height: auto;
        border-bottom: 1px solid #e5e5e5;
    }
    .text-block-inner {
        flex-direction: column;

    }
    .text-block-inner .text-block-text {
        gap:15px;
    }
    .text-block-inner .text-block-img {
       margin-bottom:20px;
    }
    .text-block-header {
        margin: 0 0 30px 0;
    }
    .full-width-buttons {
        margin:20px 0 0 0;
    }
    .text-block-header{
        margin:0 0 15px 0;
    }
    .text-block-header,
    .full-width-buttons { 
        gap:10px;
        width:100%;
    }
}

/* Page Content */

.site-content {
	padding: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.site-content .page-header,
.site-archive .posts-container,
.site-content .site-content-inner {
    width: 100%;
    max-width: 1500px;
}

.site-archive {
	flex-direction: column;
    gap: 50px;
}

.site-archive .page-title {
   text-align: center;
}   

.site-archive .posts-container {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	grid-column-gap: 50px;
	grid-row-gap: 50px;
	grid-auto-rows: min-content;
}

@media only screen and (max-width: 768px) {
	.site-content {
		padding: 15px;
	}
    .site-archive {
        gap: 20px;
    }
	.site-archive .posts-container {
		grid-template-columns: repeat(1, minmax(0, 1fr));
		grid-column-gap: 15px;
		grid-row-gap: 15px;
	}
}


/* Equiry Page */

.site-content .enquriy-content-inner  {
	display: flex;
	width: 100%;
	max-width: 900px;
	flex-direction: column;
	align-items: center;
}

/* Contact Page */

.contact-details-list a {
	color: black;
	display: flex;
	align-items: center;
    text-decoration: none;
    gap: 15px;
    font-size: 1.8rem;
    margin:0 0 20px 0;
}

.contact-details-list span.icon {
    font-size: 32px;
}

/* Ninja Form Overrides */

.nf-form-fields-required {
	display: none;
}

.nf-form-cont .nf-form-content {
	padding: 0;
}

.nf-form-cont .nf-form-wrap {
	padding: 30px;
}

.nf-form-content nf-fields-wrap {
	display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 30px;
}

.nf-form-content nf-fields-wrap nf-field {
	grid-column: span 2;
}

.nf-form-content nf-fields-wrap nf-field:nth-child(n+2):nth-child(-n+5)  {
	grid-column: span 1;
}

.nf-form-cont .nf-form-title {
	padding: 160px 60px;
	display: flex;
	justify-content: center;
	background: #232323;
	background-image: url(img/enquiry-image-bckgrd.jpg); 
	background-size: cover;  
	background-position: center; 
}

.nf-form-cont .nf-form-title h3 {
	color: white;
}

.form-content {
	background: #f2f2f2;
}

.nf-field-description {
	margin:0 0 15px 0;
}

#nf-field-19-wrap > div.nf-field-element::after { 
	content: "£" !important;
    position: absolute;
    left: 15px;
    top: 12px;
}

#nf-field-19-wrap .ninja-forms-field {
	padding: 12px 12px 12px 30px;
}

.html-wrap .nf-field-element p {
	font-family: "Taviraj", serif;
    font-weight: 300;
    font-style: normal;
    font-size: 2.8rem;
}

.nf-form-cont .nf-field-label 
.nf-form-cont .nf-label-span, 
.nf-form-cont .nf-field-label label {
	font-weight: 200;
}

.nf-form-cont #ninja_forms_required_items, 
.nf-form-cont .nf-field-container {
	margin-bottom: 15px;
}

.nf-form-cont .nf-form-content button, 
.nf-form-cont .nf-form-content input[type=button], 
.nf-form-cont .nf-form-content input[type=submit] {
    background-color: black;
    color: white;
    padding: 10px 20px;
    border: 1px solid black;
    text-decoration: none;
    display: inline-block;
    cursor: pointer;
}

.nf-form-cont .nf-form-content button:hover, 
.nf-form-cont .nf-form-content input[type=button]:hover, 
.nf-form-cont .nf-form-content input[type=submit]:hover {
    background-color: #474747;
    border: 1px solid #474747;
    color: white;s
}

@media only screen and (max-width: 768px) {
	.nf-form-content nf-fields-wrap nf-field:nth-child(n+2):nth-child(-n+5)  {
		grid-column: span 2;
	}
	.nf-form-cont .nf-form-wrap{
		padding: 15px;
	}
	.nf-form-cont .nf-form-title {
		padding: 50px 15px;
	}
	.html-wrap .nf-field-element p {
		font-size: 2rem;
	}
}

/* About Page */

.site-content--about {
	padding: 150px 50px;
} 

.site-content--about .text-block-img figcaption {
    justify-content: end;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0) 70%, rgba(0, 0, 0, 0.9) 100%);
    text-align: center;
} 


@media only screen and (max-width: 768px) {
	.site-content--about {
		padding: 20px;
	}
}

/* Default Page */

.page-template-default .entry-content p {
	margin: 0 0 10px 0;
}

.page-template-default .entry-content ul {
	list-style: disc;
    margin: 0 0 15px 0;
    padding: 0 0 0 20px;
}

.default-page-container {
	width: 100%;
    max-width: 1090px;
    background: white;
    padding: 50px 70px;
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
}

@media only screen and (max-width: 768px) {
	.default-page-container {
		padding: 15px;
	}
}

/* Single Post Page */

.single-header-banner {
	margin:0;
	scroll-snap-align: start;
}

.single-header-banner {
	position: relative;
}

.single-header-banner::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    opacity: .5;
    background-color:black;
    z-index: 1;
}

.single-header-banner img {
	aspect-ratio: 1;
	object-fit: cover;
	box-sizing: border-box;
	height: 60vh;
	width: 100%;
	vertical-align: bottom;
}

.signle-post-content {
	padding: 150px 50px;
	scroll-snap-align: start;
}

.signle-post-content .text-block-inner {
    align-items: flex-start;
}

.project-details-list {
	font-size: 1.8rem;
	line-height: 2.8rem;
    border: 1px solid #f2f2f2;
    padding: 40px;
    background: #f5f5f5;
}

.project-details-list li {
	margin:0 0 15px 0;
    color: black;
}

.project-details-list li:last-child {
    margin:0;
}

.project-details-list strong {
	color:black;
}

.nav-links .nav-previous a,
.nav-links .nav-next a,
.back-link {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    transition: gap 0.3s;
    color: #7E7E7E;
    font-weight: 200;
}

.nav-links .nav-previous a:hover,
.nav-links .nav-next a:hover,
.back-link:hover {
    gap: 10px;
    color: black;
    transition: all 0.3s;
}

.back-link span {
	font-size: 20px;
}

.image-gallery h3 {
	text-align: center;
	margin:0 0 50px 0;
}

.image-gallery ul {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	grid-column-gap: 50px;
	grid-row-gap: 50px;
	grid-auto-rows: min-content;
}

.post-navigation {
	padding: 30px 50px;
	display: flex;
	justify-content: center;
	background: #f2f2f2;
}

.nav-links {
	width: 100%;
	max-width: 1500px;
	display: flex;
	justify-content: space-between;
}

.nav-links .nav-previous a,
.nav-links .nav-next a{
    display: flex;
	color: #949494;
}

.screen-reader-text {
	display: none;
}

.gallery-container {
	background: #f2f2f2;
	padding: 150px 50px;
	scroll-snap-align: start;
}

.signle-post-iframe .site-content-inner h3 {
   text-align: center;
   margin:0 0 30px 0;
}

@media only screen and (max-width: 768px) {
    .signle-post-iframe .site-content-inner h3 {
       margin:0 0 15px 0;
    }
	.signle-post-content,
	.gallery-container,
	.single-header-banner {
		scroll-snap-align: none;
	}
	.project-details-list {
		font-size: 1.5rem;
		line-height: 2.4rem;
        padding: 15px;
        margin:0 0 20px 0;
	}
	.project-details-list li {
        margin: 0 0 10px 0;
        line-height: 2.8rem;
	}
	.project-details-list strong {
		display:block;
	}
	.signle-post-content,
	.gallery-container  {
		padding: 20px 15px;
	}
	.image-gallery ul {
        grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-column-gap: 15px;
		grid-row-gap: 15px;
	}
	.signle-post-content .text-block-img { 
		margin:0;
	}
    .signle-post-content .text-block-inner {
        margin:0 0 20px 0;
    }
}

/* Iframe content */

.my-iframe {
    width: 100%; 
    max-width: 100%;
    height: 700px; 
    margin: 0 auto;
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.2);
  }

.my-iframe iframe {
    width: 100%;
    max-width: 100%;
    height: 700px;
}

@media only screen and (max-width: 768px) {
    .my-iframe,
    .my-iframe iframe {
        height: 400px;
    }
}

/* Gallery Layout */

.gallery img {
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.2);
  transition: transform 0.2s ease-in-out;
}

.gallery img:hover {
  transform: scale(1.05);
  cursor: zoom-in;
}

.lightbox {
  display: none; 
  position: fixed; 
  top: 0;
  left: 0;
  width: 100%; 
  height: 100%; 
  background-color: rgba(0, 0, 0, 0.8); 
  z-index: 1000; 
  justify-content: center; 
  align-items: center;
}

.lightbox-image {
  max-width: 80%; 
  max-height: 80%; 
  object-fit: contain;
  box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.5); 
}

.lightbox .close-btn, 
.lightbox .prev, 
.lightbox .next {
  position: absolute;
  top: 50%;
  border: none;
  font-size: 24px; 
  padding: 10px;
  cursor: pointer;
  transition: transform 0.3s ease-in-out;
  color: white;
  display: flex;
  background: black;
}

.lightbox span {
	font-size: 32px	;
}

.lightbox .close-btn { 
	top: 50px;
	right: 50px;
}

.lightbox .prev { 
  left: 0; 
}

.lightbox .next { 
  right: 0; 
}

.lightbox .close-btn:hover {
	transform: scale(1.2);
}

.lightbox .prev:hover {
  transform: translateX(-10px);
}

.lightbox .next:hover {
  transform: translateX(10px);
}

/* Footer */

.home .main-footer,
.single-post .main-footer  {
	scroll-snap-align: start;
}

.main-footer {
    background: black;
    color: white;
    min-height: 500px;
    padding: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background: black url(img/nav-background.jpg);
    background-size: cover; 
    background-position: 50% 50%; 
    background-repeat: no-repeat;
    background-color: black;
}
.main-footer .contact-details a {
    align-items: flex-start;
}

.main-footer-inner {
    display: flex;
    align-items: center;
    max-width: 1500px;
    width: 100%;
    flex-direction: column;
    justify-content: center;
    gap: 50px;
}

.top-section,
.bottom-section {
    display: flex;
    flex: 1;
    justify-content: space-between;
    width: 100%;
    align-items: center;
    flex-wrap: wrap;
}

.top-section {
    font-size: 1.8rem;
    gap: 30px;
    padding: 40px 0;
}

.top-section .logo {
    max-width: 140px;
}

.top-section .contact-details {
    z-index: auto;
    flex-wrap: wrap;
    justify-content: left;
}

.top-section .contact-details a{
   text-wrap: wrap;
} 

.bottom-section {
    border-top: 1px solid rgb(255 255 255 / 10%);
    color: #7E7E7E;
    padding:40px 0;
    gap: 15px;
}

.bottom-section ul {
    display: flex;
    gap:20px;
}

.bottom-section a {
    color: #7E7E7E;
}

.main-footer a:hover {
    color: #ffffff;
    text-decoration: underline;
}

.copy-right br {
    display: none;
}

@media only screen and (max-width: 768px) {
    .main-footer {
        padding: 15px;
    }
    .home .main-footer,
	.single-post .main-footer  {
    	scroll-snap-align: none;
    }
    .main-footer-inner {
        gap: 10px;
    }
    .top-section {
        padding:20px 0;
    }
    .copy-right br {
        display: block;
    }
}

/* Slider blocks */

.glide__track {
    display: flex;
    flex-direction: column;
    min-height: 350px;
}

.text-block--slider {
    background: #f2f2f2;
    padding: 30px 0;
}

.text-block--slider .text-block-inner {
   max-width: 100%;
   gap: 50px;
}

.text-block--slider .text-block-header, 
.text-block--slider .full-width-buttons {
    margin:0;
}

.project-image {
    position: relative;
    margin:0;
}

.project-image figcaption {
    color:white;
    position: absolute;
    display: flex;
    min-width: 100%;
    height: 100%;
    justify-content: space-between;
    flex-direction: column;
    padding: 20px;
    box-sizing: border-box;
    background: rgb(0 0 0 / 50%);
    transition: background 1s ease-out;  
}

.project-image figcaption:hover {
   background: rgb(0 0 0 / 10%);
}

.project-image.alt {
	overflow: hidden;
}

.project-image.alt figcaption {
	background: rgb(0 0 0 / 10%);
	z-index: 1;
}

.project-image.alt figcaption:hover {
	background: rgb(0 0 0 / 60%);
}

.project-image.alt img {
	transition: transform 0.3s;
}

.project-image.alt:hover img {
	transform: scale(1.05);
}

.project-text h5 {
    color: white;
    font-family: "Inter", serif;
    font-size: 2rem;
    font-weight: 700;
    line-height: 2.6rem;
}

@media only screen and (max-width: 768px) {
    .text-block--slider .text-block-inner {
       gap: 30px;
    }
    .glide {
        max-height: 80vh;
    }
}
