@import url('https://fonts.googleapis.com/css2?family=Geologica:wght@100..900&display=swap');

/* Reset margins and paddings */
html, body {
    margin: 0;
    padding: 0;
    height: 100%; /* Ensure full height for body */
    overflow-x: hidden;
    font-family: "Geologica", sans-serif;
    line-height: 1.2;
}

/* Set box-sizing to border-box for all elements */
* {
    box-sizing: border-box;
}
h1 {
    font-size: 80px;
    font-weight: 100;
    color: #054E6C;
}
.mb-5 h3 {  font-size: 44px;
    color: #054E6C;
}

p {
    color: #054e6c;
}

a:hover {
    color: #03456c;
}

/* Additional styles */
.header {
    text-align: center;
    padding: 60px;
    background-color: #ffffff; /* Light background color */
    position: relative;
}

.logo {
    max-width: 150px; /* Adjust logo size */
    z-index: 4;
    position: relative;
    padding-bottom: 30px;
}

.nav-link {
    margin: 0 15px; /* Space between menu items */
    display: inline;
    color: #05446C;
    font-family: "Geologica", sans-serif;
    font-size: 24px;
}



.btn-appointment {
    margin-top: 30px;
}

.social-icons {
    position: absolute;
    top: 20px;
    right: 20px;
}

.btn-primary {
    color: #6c757d;
    background-color: #ffffff;
    border-radius: 2rem;
    border-color: #edc374;
}

.container-fluid {
    padding: 0;
    margin: 0;
}

.section {
    text-align: center;
    /*padding: 100px 20px; */
    color: #ffffff; /* Text color */
    margin-left: 60px;
    margin-right: 60px;
    justify-content: center;
    text-align: center;
    position: relative;
    display: flex;
}

.banner-section {
    height: 700px;
    padding: 100px 20px;
    color: #ffffff; /* Text color */
    margin-left: 60px;
    margin-right: 60px;
    display: flex;
    justify-content: center;
    text-align: center;
    position: relative;
    z-index: 2;
    background: url('https://www.koyo-html.websters.gr/img/banner-home-koyo.jpg') no-repeat center center; /* Adjust as needed */
    background-size: cover; /* This will make the background cover the entire element */
}

.banner-section h3 {
    font-size: 19.5px;
    font-weight: 400;
    letter-spacing: 1.5px;
    margin-bottom: 10px;
    line-height: 44px;
    filter: drop-shadow(-1px 2px 8px #00000066);
}

.banner-section h2 {
    margin-bottom: 20px;
    font-size:  80px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: -0.5px;
    text-transform: none;
    line-height: 80px;
    word-wrap: break-word;
    filter: drop-shadow(-1px 2px 8px #00000066);
}

.icon-container {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 30px;
}

.icon-container div {
    margin: 0;
    text-align: center;
    align-items: baseline;
}

.divider {
    width: 50px;
    height: 1px;
    background-color: #5e1515; /* Divider color */
    margin: 0 10px;
}
.seperate-line {
    width: 4px;
    height: 50px;
    background-color:#054e6cff;
    margin: 0 auto;
    left: 82px;
    top: -66px;
    position: relative;
}
img.header-icon {
    width: 70px;
}

.banner-text {
    position: absolute; /* Position text absolutely within the banner */
    top: 50%; /* Center vertically */
    left: 50%; /* Center horizontally */
    transform: translate(-50%, -50%); /* Adjust for the text's own dimensions */
    color: white; /* Text color */
    text-align: center; /* Center text */
    width: 80%;
}

.banner-text.post-info {
    transform: translate(-50%, -50%); /* Adjust for the text's own dimensions */
    color: white; /* Text color */
    text-align: center; /* Center text */
    width: 100%;
    top: 70%; /* Center vertically */
    height: auto;
}

.post-info p {
    font-weight: 600;
}
.banner-section.inner-pages {
    height: 425px;
}

.inner-content p {
    font-weight :100;
    font-size: 21px;
    
}

.bio-section {
    display: flex;
    align-items: center;
    padding: 100px 0;
    position: relative;
    margin-left: 60px;
}

.bio-content-wrapper {
    position: relative;
}

.bio-section img {
    max-width: 100%; /* Responsive image */
    height: auto;
}

.bio-text h2 {
    margin-left: 20px; /* Space between image and text */
    padding-top: 30px;
    padding-bottom: 30px;
    max-width: 100%; /* Limit text width */
    color: #054e6c;
    background-color: transparent;
    font-size: 35.5px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: -0.5px;
    text-transform: none;
}

.bio-text h3 {
    margin-bottom: 20px;
    margin-left: 20px; /* Space between image and text */
    color: #444444;
    background-color: transparent;
    font-size: 30px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: -0.5px;
    text-transform: none;
}

.bio-text a {
    display: inline-block;
    margin-left: 20px; /* Space between image and text */
    color: #054e6c;
    text-decoration: underline; /* Underline link */
    font-size: 20.5px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: -0.71px;
    text-decoration: underline;
    text-transform: none;
}
.feather {
    position: relative;
    padding-top: 7px;
}
.feather-image {
    position: absolute; /* Position the feather image absolutely */
    bottom: 0px; /* Distance from the bottom of the container */
    right: 20px; /* Distance from the right of the container */
    width: 100px; /* Adjust the size of the feather image */
    height: auto; /* Maintain aspect ratio */
    z-index: 1; /* Ensure the feather is above other content */
}
img.feather-image {
    width: 150px;
}

.btn-light {
    padding: 20px 25px 20px 25px;
    width: auto;
    height: fit-content;
    z-index: 1;
    border: #edc474ff solid 1px;
    justify-content: center;
    align-items: center;
    gap: normal 10px;
    flex-direction: row;
    background: #f5f5f5;
    border-radius: 50px;
}


.section-title {
    margin: 0 20px; /* Space between title and lines */
    font-family: "Geologica", sans-serif;
    color: #054e6c;
    background-color: transparent;
    font-size: 54.5px;
    font-style: normal;
    font-weight: 100;
    letter-spacing: -0.5px;
    text-transform: none;
    
}



.about {
    background:transparent;
}
.bio-text.col-12.col-md-6.p-0 {
    background: white;
}
/* Box Container */
.box-container {
    display: flex;
    flex-wrap: wrap; /* Allow wrapping of boxes */
    gap: 40px; /* Add gap between boxes */
    justify-content: space-between; /* Distribute the boxes */
}

/* Each Box */
.box {
    flex: 1 1 30%; /* Make each box take 30% of the available width (3 per row) */
    min-width: 250px; /* Ensure boxes don't shrink too small */
    padding: 20px;
    border: 1px solid #ccc;
    box-sizing: border-box;
}



.text-box {
    position: relative;
    z-index: 1; /* Ensure the text box is above the image */
    background-color: white; /* Background color for the text box */
    border: #054e6cff solid 2px;
    padding: 40px 30px 40px 30px;
    width: 1000px;
    height: 320px;
    max-width: 1000px;
    z-index: 2;
    left: 0px;
    top: 40px;
    gap: 10px normal;
    background: #ffffffb3;
}

.box-title {
    font-weight: bold;
    color: #58b0bc;
    background-color: transparent;
    font-size: 45px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: -0.5px;
    text-transform: none;
}
.text-box h2 {
    font-size: 45px;
    font-weight: 300;
}

.text-box h3 {
    color: #054e6c;
    background-color: transparent;
    font-size: 30px;
    font-style: normal;
    font-weight: 300;
    letter-spacing: -0.5px;
    text-transform: none;
}

.box {
    position: relative;
    overflow: hidden;
    background: #f5f5f5;
    padding: 20px;
    text-align: center;
    transition: background 0.3s ease;
}


.box-title {
    transition: opacity 0.3s ease;
}

.box p {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #054E6C;
    background: #f1f1f1;
    padding: 15px;
    border-radius: 8px;
    opacity: 0;
    transition: opacity 0.3s ease;
    width: 80%;
}

.box-title,
.box p {
  transition: opacity 0.3s ease;
  cursor: pointer;
}

.box.active .box-title {
  opacity: 0;
}

.box.active p {
  opacity: 1;
}


.line {
    flex: 1;
    height: 2px;
    background-color: black;
    /*margin: 0 20px; */
    border: 1px solid #57b0bcff;
    width: 100%; /* Full width */
}


ul.page-numbers {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    list-style-type: none;
}

li.page-item {
    background: transparent;
    color: black;
    border: 1px solid gold;
    padding: 10px;
}
ul.page-numbers a {
    color: black;
}

ul.pagination.custom-pagination {
    margin-bottom: 50px;
}

.section {
    position: relative; /* Make the section relative for absolute positioning of the background */
    z-index: 1; /* Ensure it is above the background */
}


.img-fluid {
    max-width: 100%;
    height: 500px;
    object-fit: cover;
}

.loop-article {
    width: 100%;
    object-fit: cover;
}


/* Text box styling */
.text-box {
    position: relative;
    z-index: 1; /* Ensure the text box is above the image */
    background-color: white; /* Background color for the text box */
    border: #054e6cff solid 2px;
    padding: 40px 30px;
    width: calc(100% - 60px); /* Keep text box inside the 60px margin */
    height: auto;
    z-index: 2;
    margin-left: 60px; /* Ensure 60px margin on left */
    margin-right: 60px; /* Ensure 60px margin on right */
    top: 40px;
    background: #ffffffb3;
}
/* Text box for first section (start from 60px margin) */
.text-box-first {
    margin-left: 60px; /* Apply left margin */
    margin-right: 30px; /* Ensure right margin stays */
}

/* Text box for third section (start from 60px margin) */
.text-box-third {
    margin-left: 60px; /* Apply left margin */
    margin-right: 30px; /* Ensure right margin stays */
}

/* Other sections and image column styles remain the same */
.edge-image-section .col-md-5, .edge-image-section .col-md-6 {
    padding: 0; /* Remove padding so images can stretch edge-to-edge */
}

/* Ensure images in this section go from edge to edge */
.edge-image-section .image-edge {
    margin-left: 0px;  /* Keep images flush with the left edge */
    margin-right: 0px; /* Keep images flush with the right edge */
}



.img-fluid {
    max-width: 100%;
    height: 500px;
    object-fit: cover;
}

.text-box.reverse {
    position: relative;
    background-color: #ffffffb3;
    border: #054e6cff solid 2px;
    padding: 40px 30px;
    height: auto;
    z-index: 2;
    top: 40px;
}
.text-box.reverse {
    left: -40%;
}

/* Basic styling for all boxes */
.box {
    background-color: #f1f1f1;
    padding: 20px;
   
    text-align: center;
    border-radius: 8px;
    height: 200px;
    display: flex;            /* Use flexbox */
    flex-direction: column;   /* Stack the content vertically */
    justify-content: center;  /* Center vertically */
    align-items: center;      /* Center horizontally */
    height: 400px;
    min-height: 400px;
   
    padding: 40px 40px 40px 40px;
 
    border-top: #edc474ff solid 2px;
    border-right: #edc474ff solid 2px;
    border-bottom: #edc474ff solid 2px;
    border-left: #edc474ff solid 2px;
    align-items: center;
    justify-content: center;
    box-shadow: 0px 0px 8px #00000040;
}
  
  

 
  
  /* Styling for the last 2 boxes with special layout */
  .last-box {
    position: relative;
  }
  
  /* Optional: Add margin between boxes */
  .mb-4 {
    margin-bottom: 1.5rem;
  }
  
  /* Mobile responsiveness */
  @media (max-width: 768px) {
    .col-md-4, .col-md-6 {
      width: 100%;
    }
    .text-box {
    margin-left: 0;
    top: 20px;
    max-width: 100%;
  }
  }
  

.container-ml-60-mr-60 {
  padding: 0;
  margin-left: 60px; /* Left margin */
  margin-right: 60px; /* Right margin */
}


.section-title-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin: 100px 0;
}


.line {
    flex-grow: 1;
    height: 2px;
    background-color: #58B0BC;
}

/* Bio section styling with side margins */
.bio-section {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-left: 60px;
    margin-right: 60px;
    padding: 100px 0;
    color: #000;
    position: relative;
    z-index: 2;
}

.bio-section h2 {
    font-size: 38px;
    font-weight: 500;
    color: #054e6c;
    margin-bottom: 20px;
}

.feather-image {
    max-width: 150px;
}


.background-container {
    position: absolute;
    top: -40%;
    left: 0;
    width: 100vw;
    height: 983px;
    background-color: #f1f1e4;
    z-index: 0;
    padding: 0;
    margin: 0;
}
.bio-section {
    position: relative;
    margin-left: 60px;
    margin-right: 60px;
    padding: 100px 0;
    z-index: 1;
}


/* Bio section background */
.bio-section {
    position: relative; /* Ensures the background is positioned relative to this section */
    margin-left: 60px;
    margin-right: 60px;
    padding-top: 0; /* We'll manage the top of the background here */
}

/* Background that spans from the middle of the banner to the bottom of the bio section */
.bio-section::before {
    content: "";
    position: absolute;
    top: -18vh; /* Start 30% above the viewport height */
    width: calc(100% + 120px); /* Extend the background edge-to-edge, accounting for the 60px margin */
    height: 100%; /* Stretches from top to bottom of the bio section */
    background-color: #f1f1e4; /* Background color */
    z-index: -1; /* Ensures the background stays behind the content */
}




.bio-section {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-left: 60px;
    margin-right: 60px;
    position: relative;
    padding: 100px 0;
    color: #000000;
}

.bio-section h2 {
    font-size: 38px;
    font-weight: 500;
    color: #054e6c;
    margin-bottom: 20px;
}

.inner-content h2 {
    font-size: 30px;
}

.bio-section .container-fluid {
    z-index: 2;
    position: relative;
    
}

/* Bio section background */
.bio-section-about {
    padding-top: 0; /* We'll manage the top of the background here */
    display: flex;
    flex-direction: column;
    justify-content: center;
   
    position: relative;
}

/* Background that spans from the middle of the banner to the bottom of the bio section */
.bio-section-about::before {
    content: "";
    position: absolute;
    top: -36vh;
    width: calc(100% + 125px);
    height: 105%;
    background-color: #EFF2F3;
    z-index: -1;
    right: -59px;
}

.section-title-wrapper.about {
    padding-top: 100px;
    padding-bottom: 60px;
    margin: 0;
}


    

.bio-section h2 {
    font-size: 38px;
    font-weight: 500;
    color: #054e6c;
    margin-bottom: 20px;
}
img.img-fluid-about.w-100 {
    width: 354px;
    height: auto;
}
.inner-content h2 {
    font-size: 30px;
    color: #054E6C;
}
.inner-content p {
    margin-top: 60px
}


.container-fluid.about {
    background: transparent;
}
.container-fluid.about {
    background: transparent;
    padding-right: 160px;
    padding-left: 160px;
}

.p-160 {
    padding: 0 160px;
}

/* Use this class to enforce left/right padding on your container */
.custom-container {
  padding-left: 160px;
  padding-right: 160px;
}

/* Section overall styling */
.custom-section-part1 {
  position: relative;
  padding-top: 40px;
  padding-bottom: 40px;
}

/* Background image that goes through the left edge */
.bg-left {
  position: absolute;
  top: 0;
  left: 0;
  width: 40%; /* Adjust this as needed */
  height: 100%;
  background: url('img/your-bg-image.jpg') no-repeat center;
  background-size: cover;
  z-index: -1;
}

/* Content container (optional additional styling) */
.content-wrapper {
  position: relative;
  /* This wrapper already has the padding-right inline */
}

/* The Center Text Box */
.center-text-box {
  display: inline-block;
  border: 2px solid #ccc;
  padding: 20px;
  background-color: #fff;
  margin: 40px auto;  /* centers the box and adds vertical spacing */
  max-width: 80%;     /* adjust width as needed */
}

/* The Small Text Area */
.small-text-area {
  margin-top: 20px;
  max-width: 50%;
  margin-left: auto;
  margin-right: auto;
}




.full-bg-section {
  position: relative;
  padding: 80px 0;
  z-index: 1;
  overflow: hidden;
}

.full-bg-section::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: calc(100vw - 160px); /* Go full-width but stop 160px before right edge */
  background: url('https://koyo-html.websters.gr/img/Rectangle%2098.png') no-repeat center center;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  z-index: -1;
}

.full-bg-section  {
  padding-left: 160px;
  padding-right: 160px;
  position: relative;
  z-index: 2;
}
.full-bg-section-right {
  position: relative;
  padding: 80px 0;
  z-index: 1;
  overflow: hidden;
}

/*.full-bg-section-right::before {
  content: '';
  position: absolute;
  top: 60%;
  bottom: 0;
  right: 0; /* Changed from left to right 
  width: 80%;
  background: url('https://koyo-html.websters.gr/img/Rectangle 98 (1).png') no-repeat center center;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  z-index: -1;
}
*/

.about-img-wrapper {
    position: relative;
    top: -80px;
    right: 0;
    width: 50vw;
    height: auto;
    overflow: hidden;
    z-index: -1;
}


.full-bg-section-right {
  padding-left: 160px; /* Keep this to align content visually */
  padding-right: 160px;
  position: relative;
  z-index: 2;
}



/* Box + text */
.text-box-center {
  background-color: #fff;
  padding: 20px 30px;
  border: 2px solid #054E6C;
  
  text-align: center;
  color: #054E6C;
  margin-bottom: 20px;
}

.small-text {
  font-size: 0.95rem;
  text-align: left;
  color: #f8f8f8;
}

/* What we do */
.inner-content-what-we-do {
    margin: 0 auto;
    font-size: 30px;
    background: transparent;
    padding-top: 80px;
    padding-bottom: 59px;
    max-width: 981px;
    width: 100%;
}
  
    .nav-tabs {
      border: none;
      justify-content: center;
      gap: 10px;
      margin-bottom: 59px;
    }
    .nav-tabs .nav-link {
    border-radius: 50px;
    padding: 0.5rem 1rem;
    font-size: 0.9rem;
    background: transparent;
    border: 1px solid #ecc474;
    }
    .nav-tabs .nav-link.active {
      gap:8px;
      border: 1px solid #EEC474;
      color: #444444;
      box-shadow: 2px 2px 25px 2px rgb(0 0 0 / 20%);
      outline: none !important;
    }
    
    .col-md-4.wwd-card {
    padding-bottom: 20px;
}
    .price-card {
      border: 1px solid #AA7455;
      border-radius: 12px;
      padding-left: 25px;
    padding-right: 25px;
    padding-top: 25px;
    padding-bottom: 50px;
      text-align: left;
      height: 100%;
      background: #fff;
    }
    .price-divider {
      margin: 35px 0;
      border-top: 1px solid #ccc;
    }
    
    .price-card h5 {
        color: #58B0BC;
        font-size: 26px;
    }
    
    .text-center.intro-text.title {
        color: #AA7455;
        font-size: 30px;
        margin: 10px;
    }
    
    .intro-text.w-100.mx-auto.text-center {
    max-width: 100%;
    margin: 0 auto;
    overflow-wrap: break-word;
}
    .text-center.description {
    color: #444444;
    font-weight: 100;

}
    span {
    font-size: 24px;
    font-weight: 100;
    color: #444444;
}
    
   
    img.brush-image {
    right: -51px;
    position: absolute;
    top: -94px;
    z-index: 2;
}
    
    /* Bio section background */
.wwd-section {
    position: relative; /* Ensures the background is positioned relative to this section */
    margin-left: 60px;
    margin-right: 60px;
    padding-top: 0; /* We'll manage the top of the background here */
}

/* Background that spans from the middle of the banner to the bottom of the bio section */
.wwd-section::before {
    content: "";
    position: absolute;
    top: -18vh;
    left: -58px;
    width: 100vw;
    height: 600px !important;
    width: calc(100% + 120px);
    height: 100%;
    background-color: #f1f1e4;
    z-index: -1;
}

ul.custom-list {
  padding-left: 0;
  list-style-position: inside;
}
.contact-section{
    padding-right: 160px;
    padding-left: 160px;
    position: relative;
}

.contact-img-wrapper {
  position: relative;
  top: 0;
  right: 0;
  width: 50vw;
  height: 595px;
  overflow: hidden;
  z-index: -1;
}

.contact-img-wrapper img {
  height: 100%;
  object-fit: cover;
}
ul.list-unstyled.mb-5 {
    display: grid;
    padding-top: 30px;
    gap: 30px;
}
h2.contact {
    font-weight: 100;
    color: #054E6C;
    font-size: 50px;
}
p.mb-4 {
    color: #58B0BC;
}
.form-control {
    display: block;
    width: 64%;
}

.wpcf7-text { 
	width: 100% !important; 
}

textarea.wpcf7-form-control.wpcf7-textarea {
    height: 150px;
    width: 100%;
}
label {
    margin-top: .9rem;
    margin-bottom: .9rem;
}
.wpcf7-text {
    width: 100% !important;
    height: 45px;
    margin-top: 10px;
}

ul.list-unstyled.mb-5 a {
    padding-left: 15px;
    font-size: 21px;
    color: #054E6C;
}

img.brush-99.img-fluid {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 3;
    height: 200px;
}
img.brush-100.img-fluid {
    position: absolute;
    left: 0;
    top: -30px;
    width: 600px;
    height: 388px;
    z-index: 2;
}

/* Footer */
.footer {
    padding: 20px 0; /* Vertical padding */
    text-align: center; /* Center text */
    gap:30px;
    display: flex;
    margin: 100px 0;
}

.footer .container {
    display: flex; /* Use flexbox for layout */
    flex-direction: column; /* Stack items vertically */
    align-items: center; /* Center items horizontally */
}

.footer .address a{
    margin-top: 10px;
    color: #054e6c;
    background-color: transparent;
    font-size: 15.5px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: -0.5px;
    text-transform: none;
    text-decoration: none;
}

.footer .social-icons {
    margin-bottom: 10px; /* Space between social icons and logo */
}

.footer .logo img {
    max-width: 150px; /* Adjust logo size as needed */
    height: auto; /* Maintain aspect ratio */
}



/*new menu */
/* === Overlay === */
.menu-overlay {
  position: fixed;
  top: 5%;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: white;
  z-index: 9999;
  display: none;
  opacity: 0;
  transform: translateY(-20px);
  transition: opacity 0.3s ease, transform 0.3s ease;
  justify-content: center;
  z-index: 3;
}

.menu-overlay.show {
  display: flex !important;
  opacity: 1;
  transform: translateY(0);
}

/* Menu content layout */
.menu-content a {
  font-size: 16px;
  margin: 6px 0;
}

/* Hide on desktop */
@media (min-width: 768px) {
  .menu-overlay {
    display: none !important;
  }
 
}

.burger-icon {
  width: 36px;
  height: 24px;
  position: relative;
  cursor: pointer;
  z-index: 1001;
  margin-top: 30px;
}

.burger-icon span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #58B0BC;
  border-radius: 2px;
  transition: all 0.3s ease-in-out;
}

/* Position the lines manually */
.burger-icon span:nth-child(1) {
  top: 0;
}

.burger-icon span:nth-child(2) {
  top: 10px;
}

.burger-icon span:nth-child(3) {
  top: 20px;
}

/* Active state (X) */
.burger-icon.active span:nth-child(1) {
  transform: rotate(45deg);
  top: 10px; /* move to center */
}

.burger-icon.active span:nth-child(2) {
  opacity: 0;
}

.burger-icon.active span:nth-child(3) {
  transform: rotate(-45deg);
  top: 10px; /* move to center */
}


/* Prevent body scroll when menu is open */
body.menu-open {
  overflow: hidden;
}



/* Basic styles for text boxes, sections, and containers */
.banner-section, .bio-section, .section {
    margin-left: 60px;
    margin-right: 60px;
}

.blog-header {
    margin: 0;
    padding: 0;
    min-height: 960px; /* optional if you want a minimum height */
    height: auto; /* let it grow naturally */
}

.post-wrapper {
  max-width: 1080px;
  margin: 0 auto;
  
}
.post-content {
    text-align: left;
}
.post-box {
  text-align: left;
  padding: 0;
  background-color: #fff;
  height: 100%;
  display: flex;
  flex-direction: column;
  border: 1px solid #EEC474;
 
}
img.img-fluid.mb-3 {
    width: 100%;
    height: auto;
}
.post-title {
    font-weight: 300;
    font-size: 30px;
    color: #58B0BC;
    padding: 20px 0;
}
.post-excerpt {
    font-size: 24px;
    color: #444444;
    font-weight: 100;
    padding: 20px 0;
}
.text-muted {
    color: #054E6C !important;
    font-size: 24px;
    font-weight: 100;
    padding: 20px 0;
}

.post-preview-wrapper {
    padding: 25px 35px;
}
.post-tags {
    padding: 20px 0;
}
.my-2 {
    margin: 0;
    border-top: 1px solid #EEC474;
}
.badge {
    display: inline-block;
    padding: .25em .4em;
    font-size: 24px;
    font-weight: 100;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: .25rem;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    background: #EEC474;
}
.post-link {
  margin-top: auto;
  font-weight: 500;
  color: #007bff;
  text-decoration: underline;
  color: #054E6C;
  font-size: 30px
}

.post-link:hover {
  text-decoration: underline;
}
nav.pagination-wrapper.mt-5.d-flex.justify-content-center {
    margin: 0 auto;
}

.page-item.active .page-link {
    z-index: 3;
    color: #000;
    background-color: transparent;
    border-color: #EEC474;
    border-radius: 0 !important;
    margin-right: 20px;
}

.page-link {
    position: relative;
    display: block;
    padding: .5rem .75rem;
    margin-left: -1px;
    line-height: 1.25;
    color: #000;
    background-color: #fff;
    border: 1px solid #EEC474;
    margin-right: 20px;
}
.page-item:last-child .page-link {
    
    border: none;
}

/* Basic styles for text boxes, sections, and containers */
.text-box {
    margin-left: 30%;
    margin-right: 60px;
    color: #054E6C;
    margin-bottom: 100px;
}

/* Media Query for mobile responsiveness */
@media (max-width: 768px) {
    
    .nav-link {
    margin: 0 11px!important; /* Space between menu items */
    }
    
    /* Reduce margins for mobile */
    .text-box, .banner-section, .bio-section, .section {
        margin-left: 20px; /* Reduce left margin */
        margin-right: 20px; /* Reduce right margin */
    }
     .contact-section {
         padding-left: 20px;
         padding-right: 20px;
     }
     
     .contact-img-wrapper {
    top: 50px;
    right: 0;
    width: 100%;
     }
     
     .about-img-wrapper {
         width: 100vw;
     }

    /* Make text smaller on mobile */
     .text-box h2, .text-box h3, .banner-section h2, .banner-section h3, .bio-section h2 {
        font-size: 1.2rem; /* Smaller font for headings */
        margin-bottom: 10px;
        line-height: inherit;
    }

    .bio-text h2 {
        font-size: 30px; /* Adjust for mobile */
         margin: 0 20px;
        text-align: left;
    }

    .bio-text h3, .section-title {
        font-size: 18px; /* Adjust font size for smaller screens */
        margin: 0 20px;
        text-align: left;
    }

    .banner-section h3 {
        font-size: 14px; /* Smaller banner subtitle */
    }

    .text-box {
        margin-left: 0; /* Remove left margin */
        margin-right: 0; /* Remove right margin */
        padding: 20px; /* Reduce padding inside text box */
    }

    .img-fluid {
        height: auto; /* Adjust image height to maintain responsiveness */
    }

    /* Adjust the layout of the bio section */
    .bio-section {
        display: block;
        padding-bottom: 0;
        
    }

    .bio-text {
        margin-left: 0; /* Remove margin */
        text-align: left; /* Center-align text on mobile */
    }
    
    .bio-text a {
        margin-top: 30px; /* Remove margin */
        text-align: left; /* Center-align text on mobile */
    }

    .box-container {
        gap: 20px; /* Reduce gap between boxes */
        flex-direction: column; /* Stack boxes vertically */
    }

    .box {
        min-width: 100%; /* Ensure boxes take full width on mobile */
        padding: 10px; /* Reduce padding inside each box */
    }

    /* Footer adjustments */
    .footer {
        padding: 15px 0;
        gap: 15px; /* Reduced gap between footer items */
    }

    .footer .address, .footer .social-icons {
        font-size: 12px; /* Reduce footer text size */
    }

    .footer .logo img {
        max-width: 100px; /* Reduce footer logo size */
    }
    
    .box-title {
        font-size: 36px;
    }
    .section-title {
        font-size: 40px;
        font-weight: 100;
        padding: 0;
        margin: 0;
    }
    
    

}
   
/* Custom Section */
.custom-banner-section {
  margin: 0;
  padding: 0;
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
  justify-content: center;
  align-items: flex-start; /* Align content from the top */
  width: 100%; /* Full width */
}

/* Container inside the section */
.custom-container {
  width: 100%;
  max-width: 1568px;
  padding: 60px 20px; /* Padding for spacing */
  text-align: center;
}

/* Banner Text */
.custom-banner-text {
  margin-bottom: 30px; /* Adjust margin as needed */
}

.custom-banner-text h3 {
    font-size: 30px;
    color: #054E6C;
    padding-bottom: 50px;
    padding-top: 80px;
}

.custom-banner-text h1 {
    font-size: 80px;
    color: #054E67;
    
}

/* Post Wrapper */
.custom-post-wrapper {
  margin: 0 auto;
  padding: 30px 0;
  text-align: left;
  max-width: 1080px; /* Ensures the content width stays fixed */
}

/* Post Info (Date & Tags) */
.custom-post-info {
  margin-bottom: 20px;
  justify-content: center;
    align-items: center;
    display: grid;
}

.custom-date, .custom-tags {
  font-size: 1rem;
  color: #fff; /* You can change the color if needed */
}

/* Inner Content */
.custom-inner-content p {
    font-size: 30px;
    color: #054e67;
    /* line-height: normal; */
    text-align: center;
}

/* Post Image */
.custom-post-image {
  max-width: 100%;
  height: auto;
  margin-top: 80px;
}

/* Post Content */
.custom-post-content h3 {
    font-size: 24px;
    margin-top: 20px;
    color: #054e67;
}

.custom-post-content p {
  font-size: 16px;
  color: #444444;
  line-height: 1.6;
  font-weight: 100;
}

span.tag-label.me-2.post-date {
    color: #58B0BC;
    font-weight: 400;
    font-size: 30px;
}

span.tag-label.me-2.post-tag {
    color: #58B0BC;
    font-weight: 400;
    font-size: 30px;
}
span.badge.tag.post-date {
    background: transparent;
    font-size: 30px;
    color: #054E67;
    font-weight: 400;
}
span.badge.tag.post-tag {
    color: #054e67;
    
    margin-left: 10px;
}
h3.mb-5.title {
    text-align: center;
    font-size: 44px;
    color: #054e67;
    margin-top: 100px;
    margin-bottom: 80px;
}

.mb-8 {
    margin-bottom: 8rem;
}

/* Mobile */
@media (max-width: 768px) {
    .mt-3, .my-3 {
        display: grid;
        justify-content: center;
    }
    .btn-light {
    max-width: fit-content;
    width: 330px;
    }
    .banner-section h2{
        font-size: 36px;
    }
    .seperate-line {
        left: 80px;
    }
    .icon-container div {
        margin: 0;
    }
   .text-box {
    width: 90%;
    max-width: 400px; /* Optional: limit the width slightly if you want a narrower text box */
    margin: 0 auto;    /* Centers the box horizontally */
    padding: 20px;     /* Optional: add some spacing inside */
    text-align: center;
    }
  .text-box.reverse {
    width: 90%;
    max-width: 400px; /* Optional: limit the width slightly if you want a narrower text box */
    margin: 0 auto;    /* Centers the box horizontally */
    padding: 20px;     /* Optional: add some spacing inside */
    text-align: center;
    left: 0;
  }

  /* Optional: center the headings inside too */
  .text-box h2, 
  .text-box h3 {
    text-align: left;
    color: #054E6C
  }
  .bio-section::before {
    z-index: -1;
    left: -33px;
  }
    .bio-text {
        margin: 0;
  }
    
    .feather-image {
        display: none;
  }
  .social-icons.mobile.mt-3.d-md-none  {
       position: relative!important;
       right: 0;
       top: 0;
   }
   .edge-image-section .image-edge {
    margin-left: 0px;
    margin-right: 0px;
    margin-bottom: -80px;
}

    .edge-image-section:not(:first-of-type) {
        padding-top: 100px;
    }

.hide-on-mobile {
    display: none;
}
.section-title {
    font-size: 40px;
    font-weight: 100;
    padding: 0;
    margin: 0;
}

 .container-fluid.about {
    background: transparent;
    padding-right: 20px;
    padding-left: 20px;
}
  .full-bg-section {
      padding-right: 20px;
    padding-left: 20px;
  }
  .full-bg-section-right {
      padding-right: 20px;
    padding-left: 20px;
  }
  .custom-banner-text h3 {
    font-size: 24px;
    }
    .custom-banner-text h1 {
    font-size: 70px;
    color: #054E67;
}
span.tag-label.me-2.post-date {
    font-size: 21px;
}
span.badge.tag.post-date { 
     font-size: 21px;
}
.custom-inner-content p {
    font-size: 21px;
  }
  h3.mb-5.title {
       font-size: 36px;
  }
  .text-muted {
    font-size: 16px;
  }
  .post-title {
       font-size: 24px;
  }
  span {
      font-size: 16px;
  }
  .post-excerpt {
      font-size: 16px;
  
}
.post-link {
     font-size: 21px;
}

    .nav-link {
        font-size: 16px;
  }
}
.price-card .price-divider:last-of-type {
  display: none;
}
.btn-primary:hover {
    color: #ffffff;
    background-color: #01516f;
    border-color: #edc374;
}
.badge {
    display: inline-block;
    padding: .25em .4em;
    font-size: 24px;
    font-weight: 100;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: .25rem;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    background: #EEC474;
    color: #054e67;
}
.inside-tag {
    text-align: center;
    color: #054e67;
    padding: 0;
    margin-bottom: 55px;
}