@import url('https://fonts.googleapis.com/css2?family=Lora:wght@400;700&family=Roboto:wght@400;700&display=swap');

:root {
  --primary: #f5dbcd;
  --secondary: #f1c1e7;
  --tertiary: #141414;
  --quarternary: #3b3b3b;
  --pastel-green: #66bb66;
  --dark-red: #b70000;
  --ff-primary:  'Lato', sans-serif;
  --ff-secondary: "Roboto", sans-serif;
  --section-divider-height: 60;
  --section-divider-width: 1920;
  --section-divider-ratio: calc(
    100% * var(--section-divider-height) / var(--section-divider-width)
  );
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--ff-primary);
}

p,
a,
span,
li,
div {
  font-family: var(--ff-secondary);
}

a {
  text-decoration: none;
  color: #000000;
  opacity: 1;
  transition: all 0.356s;
}
a:hover {
  opacity: 0.65;
  transition: all 0.356s;
}

html,
body {
  overflow-x: hidden;
}

.z-0 {
  z-index: 0;
}
.z-1 {
  z-index: 10;
}
.z-2 {
  z-index: 20;
}
.z-9 {
  z-index: 999999;
}

.invert {
  filter: invert(100%) !important;
}

.mirror {
  transform: scaleX(-1) !important;
}

.min-h-inherit {
  min-height: inherit;
}

.o-cover {
  object-fit: cover;
}

.w-short {
  width: 75%;
}

@media (max-width: 991px) {
  .w-short {
    width: 100%;
  }
}

.img-cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
  -o-object-fit: cover;
  position: absolute;
  left: 0;
  top: 0;
}

@media (min-width: 1200px) {
  .col-xl-5th {
    flex: 0 0 20%;
    max-width: 20%;
  }
}

.lined-up-btns {
  position: absolute;
  bottom: 5%;
  transform: translateX(-50%);
}

.rotate-45 {
  rotate: 45deg;
}

/********************/
/*PARALLAX */
/********************/
.parallax {
  min-height: 500px;
  background-attachment: fixed;
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: cover;
  -moz-box-shadow: inset 0 0 20px #00000068;
  -webkit-box-shadow: inset 0 0 20px #00000068;
  box-shadow: inset 0 0 20px #00000068;
}

@supports (-webkit-touch-callout: none) {
  /* CSS specific to iOS devices */
  .parallax {
    background-attachment: scroll;
  }
}
/****************************
*************BG**************
****************************/
.bg-primary {
  background-color: var(--primary) !important;
}
.bg-secondary {
  background-color: var(--secondary) !important;
}
.bg-tertiary {
  background-color: var(--tertiary) !important;
}
.bg-quarternary {
  background-color: var(--quarternary) !important;
}
.text-red {
  color: var(--dark-red)
}
.text-pastel-green {
  color: var(--pastel-green)
}
.bg-gradient {
  background: var(--primary);
  background: -moz-linear-gradient(
    266deg,
    var(--primary) 0%,
    var(--secondary)82%
  );
  background: -webkit-linear-gradient(
    266deg,
    var(--primary) 0%,
    var(--secondary) 82%
  );
  background: linear-gradient(
    266deg,
    var(--primary) 0%,
    var(--secondary) 82%
  );
}

/****************************
*************BORDER**************
****************************/
.border-primary {
  border-color: var(--primary) !important;
}
.border-secondary {
  border-color: var(--secondary) !important;
}
.border-tertiary {
  border-color: var(--tertiary) !important;
}
.border-quarternary {
  border-color: var(--quarternary) !important;
}

/****************************
************FONT*************
****************************/
.font-primary {
  font-family: var(--ff-primary) !important;
}

.font-secondary {
  font-family: var(--ff-secondary) !important;
}


/****************************
************TEXT*************
****************************/
.text-primary {
  color: var(--primary) !important;
}
.text-secondary {
  color: var(--secondary) !important;
}
.text-tertiary {
  color: var(--tertiary) !important;
}
.text-quarternary {
  color: var(--quarternary) !important;
}

/****************************
**********DIVIDER************
****************************/
.has-divider {
  position: relative;
  padding-bottom: var(--section-divider-ratio);
}
.section-divider {
  display: block;
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 100%;
  height: auto;
}

/****************************
*********NAVIGATION**********
****************************/
/* .navbar-nav {
  flex: 1;
}

.navbar-collapse {
  justify-content: center;
}

.navbar-phone-desktop {
  margin-left: auto;
} */
a.nav-link.active {
  /* background: linear-gradient(to right, rgb(0, 123, 255) 0%, rgb(0, 198, 255) 100%) !important; */
  /* border-radius: 30px; */
}



header {
  background-color: #232323;
  color: #ffffff;
  position: relative;
  z-index: 1000;
}

header .logo img {
  height: 78px; /* Adjust the height as needed */
  position: relative;
  /* box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); */
  margin-top: -5px; /* Adjust the margin to make the logo extend below the header */
  top: 24px;
}
.menu-icon .btn {
  display: flex;
  align-items: center;
}

.menu-icon .bi-list {
  margin-right: 5px; /* Adjust this value as needed */
}

/* Change the text color to white */
.navbar .navbar-nav .nav-link,
.navbar .navbar-brand,
.navbar .navbar-phone a {
    color: white;
}

/* Ensure the mobile phone number is visible */
.navbar-phone a {
    color: white !important;
    /* font-size: larger; */
}

/* Ensure the mobile menu icon is visible */
.navbar-toggler {
    border-color: rgb(255 255 255);
    border: 2px white solid;
}

.navbar-toggler-icon {
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg viewBox="0 0 30 30" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath stroke="rgba(255, 255, 255, 1)" stroke-width="2" stroke-linecap="round" stroke-miterlimit="10" d="M4 7h22M4 15h22M4 23h22"/%3E%3C/svg%3E');
}





/* Specific styles for mobile devices */
@media (max-width: 992px) {
  .ofc-logo {
      display: block !important;
      margin-left: auto;
  }

  .navbar-brand {
      width: 100%;
      display: flex;
      justify-content: space-between;
      align-items: center;
  }

  .main-logo {
      height: 65px; /* Adjust as necessary */
  }

  .ofc-logo {
      height: 75px; /* Adjust as necessary */
  }
  img.logo-img.ofc-logo.d-none.d-lg-block {
    margin-right: -1em;
}
}



/* MODAL VIDEO */

#hero .btn {
  background: #ffffff; /* Light background for visibility */
  color: #000000; /* Dark text for contrast */
  /* border: none; */ /* No borders */
  border: solid 2px #0000fe;
  box-shadow: 0 4px 6px rgba(0,0,0,0.1); /* Subtle shadow for depth */
  transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out; /* Smooth transform on hover */
}

#hero .btn:hover, #hero .btn:focus {
  transform: scale(1.05); /* Slightly larger on hover/focus for interaction */
  box-shadow: 0 6px 12px rgba(0,0,0,0.15); /* Increased shadow on hover/focus */
}

#hero .btn-group {
  display: inline-flex; /* Align buttons in a row */
  flex-wrap: wrap; /* Allows wrapping on smaller screens */
  justify-content: center; /* Center align the buttons */
  gap: 10px; /* Space between buttons */
}

#hero .btn-group .btn {
  flex-grow: 1; /* Buttons grow to fill space */
  min-width: 150px; /* Minimum width for buttons */
}

/* Ensuring modal covers and is above everything else */
.modal {
  z-index: 1055; /* Higher than usual to be above any fixed headers or other elements */
}
body {
  margin: 0;
  font-family: Arial, sans-serif;
}

#hero {
  position: relative;
  overflow: hidden;
  min-height: 90vh;
}

#hero .img-cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
}

#hero .img-slider .slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

#hero .img-slider .slide.active {
  opacity: 1;
}

#hero .bg-dark {
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1;
}

#hero .container {
  position: relative;
  z-index: 2;
  min-height: inherit;
}

#hero .typewrite-container .title {
  font-size: 2.5rem;
  font-weight: 700;
}

#hero .btn-group .btn {
  margin-top: 1rem;
  border-radius: 50px;
}

#hero .btn-group .btn-md {
  padding: 0.5rem 1.5rem;
}

#hero .modal .modal-dialog .modal-content .modal-header {
  border-bottom: none;
}

#hero .modal .modal-dialog .modal-content .modal-body {
  padding: 0;
}

#hero .modal .modal-dialog .modal-content .modal-body iframe {
  width: 100%;
  height: 400px;
}


/****************************
***********HERO-SLIDER************
****************************/
.img-slider {
  position: absolute;
  width: 100%;
  height: 90vh;  /* Ensures the slider covers the hero section height */
  top: 0;
  left: 0;
  overflow: hidden;
}

.img-slider .slide {
  position: absolute;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 2s ease-in-out;  /* Smooth transition for fading */
  animation: slide-animation 18s infinite;  /* Total animation time should accommodate all slides */
}

/* Animation keyframes for fading in and out */
@keyframes slide-animation {
  0%, 100% { opacity: 0; }
  5%, 20% { opacity: 1; }  /* Adjust the timing to ensure each slide is visible */
  25%, 45% { opacity: 0; }
  50%, 65% { opacity: 1; }
  70%, 90% { opacity: 0; }
}

.img-slider .slide:nth-child(1) {
  animation-delay: 0s;  /* First slide, no delay */
}

.img-slider .slide:nth-child(2) {
  animation-delay: 4s;  /* Delay it so it shows after the first */
}

.img-slider .slide:nth-child(3) {
  animation-delay: 8s;  /* Shows after the second */
}




/****************************
***********INTRO HEADING TEXT************
****************************/
@media (max-width: 768px) {
  .intro-heading, .intro-text {
    max-width: 100% !important; /* Adjust this value as needed */
    margin-left: auto;
    margin-right: auto;
  }
}

.intro-heading, .intro-text {
  max-width: 70%; /* Adjust this value as needed */
  margin-left: auto;
  margin-right: auto;
}
/****************************
***********THREE TAB SECTION************
****************************/



.tab-pane {
  padding: 20px; /* Padding inside each tab pane for spacing around content */
}


.service-22 {
  background: linear-gradient(135deg, #6a11cb 0%, #2575fc 100%);
  color: #000;
}
.nav-pills .nav-link {
  border-radius: 50px;
  background: rgba(255, 255, 255, 0.1);
  color: #000;
  transition: background 0.3s, color 0.3s;
}
.nav-pills .nav-link.active {
  background: #fff;
  color: #420683;
}
.nav-pills .nav-link:hover {
  background: rgba(255, 255, 255, 0.3);
}
.text-box h4 {
  /* font-family: 'Roboto', sans-serif; */
  font-size: 2em;
}



/* New Button Styles */
.btn-primary-gradient {
  background: #0000fe; /* Blue */
  background: -webkit-linear-gradient(to right, #0000fe 0%, #00c6ff 100%) !important; /* For Chrome 10-25, Safari 5.1-6 */
  background: linear-gradient(to right, #0000fe 0%, #5353ff 100%) !important; /* Standard syntax */
  color: #fff !important; /* Ensuring text color is readable */
  padding: 15px 45px; /* Consistent padding */
  font-size: 16px; /* Standard font size */
  border: solid 2px #0000fe;
  /* border: none; */ /* No border */
}

.btn-primary-gradient:hover {
  background: #fff; /* Light blue */
  background: -webkit-linear-gradient(to right, #ffffff 0%, #0000fea8 100%) !important; /* For Chrome 10-25, Safari 5.1-6 */
  background: linear-gradient(to right, #ffffff 0%, #acacffa8 100%) !important; /* Standard syntax */
  border: 2px solid blue !important;
  color: black !important;
}

.btn-primary {
  background: #ffffff; /* Blue */
  background: -webkit-linear-gradient(to right, #007bff 0%, #00c6ff 100%) !important; /* For Chrome 10-25, Safari 5.1-6 */
  /* background: linear-gradient(to right, #007bff 0%, #00c6ff 100%) !important; */ /* Standard syntax */
  color: #fff; /* Ensuring text color is readable */
  padding: 15px 28px; /* Consistent padding */
  font-size: 16px; /* Standard font size */
  border: solid 2px blue; /* No border */
}

.btn-primary:hover {
      background: #fff;
    background: -webkit-linear-gradient(to right, #ffffff 0%, #0000fea8 100%) !important;
    background: linear-gradient(to right, #ffffff 0%, #acacffa8 100%) !important;
    border: 2px solid blue !important;
    color: black !important;
}


/* Ensuring modal covers and is above everything else */
.modal {
  z-index: 1055; /* Higher than usual to be above any fixed headers or other elements */
}



/****************************
***********PRICING************
****************************/


/* Ensure cards have the same height */
.d-flex {
  display: flex;
  height: 100%;
}

/* Responsive behavior */
@media (max-width: 767px) {
  .d-flex {
      /* flex-direction: column; */
      align-items: center;
  }
}

.bsb-pricing-1 {
  background-color: #f8f9fa;
  padding: 3rem 0;
}
.bsb-btn-xl {
  padding: 0.75rem 1.5rem;
  /* font-size: 1.25rem; */
  margin-top: .5em;
}
.text-dark {
  color: #333;
}
.text-muted {
  color: #6c757d;
}
.border-secondary {
  border-color: #6c757d !important;
}
.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}
.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175);
}
.card-body p {
  margin-bottom: 0.5rem;
}

.card {
  transition: transform 0.3s, box-shadow 0.3s;
}
.card:hover {
  transform: translateY(-5px);
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}
.icon-spacing {
  width: 30px;
  height: 60px;
}
.text-dark {
  color: #333 !important;
}
.text-muted {
  color: #6c757d !important;
}
.font-weight-medium {
  font-weight: 500;
}
.card-body p {
  margin-bottom: 0;
}
.text-decoration-none {
  text-decoration: none;
}






/****************************
***********FOOTER************
****************************/

footer {
  background-color: #232323;
  color: #ffffff;
}

footer h5 {
  color: #0000fe;
}

footer a {
  color: #0000fe;
  text-decoration: none;
}

footer a:hover {
  text-decoration: underline;
}

footer .bi {
  font-size: 1.5rem;
}

footer .bi-facebook:hover {
  color: #3b5998;
}

footer .bi-twitter:hover {
  color: #1da1f2;
}

footer .bi-google:hover {
  color: #db4437;
}

@media (max-width: 767px) {
  footer .row {
      text-align: center;
  }
  footer .row .col-md-4 {
      margin-bottom: 1.5rem;
  }
}

/*****************************************************
******************************************************
****************** /* Comparison cards*************** */



.card-header {
  font-weight: 500;
}

.card-body h5 {
  color: #333;
}

.btn-success {
  background-color: #4CAF50; /* Adjust color to match your site's theme */
  border-color: #4CAF50;
}

@media (max-width: 768px) {.card-title {
    min-height: 3em; /* Adjust this value to ensure all titles take up the same height */
}
  .card {
      margin-bottom: 20px;
  }
}



.custom-shape-divider-bottom-1715385252 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
  transform: rotate(180deg);
}

.custom-shape-divider-bottom-1715385252 svg {
  position: relative;
  display: block;
  width: calc(139% + 1.3px);
  height: 70px;
}

.custom-shape-divider-bottom-1715385252 .shape-fill {
  fill: #ffffff;
}

#hero .divider {
  z-index: 9;
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
  transform: rotate(180deg);
}

#hero .divider svg {
  position: relative;
  display: block;
  width: calc(160% + 1.3px);
  height: 150px;
}

#hero .divider .shape-fill {
  fill: #f8f9fa;
}
@media only screen and (max-width: 768px) {
  #hero .divider svg {
    position: relative;
    display: block;
    width: calc(160% + 1.3px);
    height: 75px;
  }
}


.custom-shape-divider-bottom-1715386068 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
  transform: rotate(180deg);
}

.custom-shape-divider-bottom-1715386068 svg {
  position: relative;
  display: block;
  width: calc(153% + 1.3px);
  height: 77px;
}
@media only screen and (max-width: 768px) {
  .custom-shape-divider-bottom-1715386068 svg {
    position: relative;
    display: block;
    width: calc(153% + 1.3px);
    height: 50px;
  }
}
.custom-shape-divider-bottom-1715387558 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
}

.custom-shape-divider-bottom-1715387558 svg {
  position: relative;
  display: block;
  width: calc(190% + 1.3px);
  height: 127px;
}

.custom-shape-divider-bottom-1715387558 .shape-fill {
  fill: #F8F9FA;
}

.custom-shape-divider-bottom-1715386068 .shape-fill {
  fill: #F8F9FA;
}

.card-title {
  min-height: 3em; /* Adjust this value to ensure all titles take up the same height */
}

.icon-spacing {
  margin-right: 10px; /* Adds margin to the right of the icon */
}

.card-body {
  flex-grow: 1; /* Makes sure the card body takes up all available space in the card */
}

.card {
  height: 100%; /* Ensures all cards are the same height */
}
@media (max-width: 767px) {
  .row .col-lg-4 .card-body {
      margin-bottom: 20px; /* Adds space between cards on mobile */
  }
}

h5.card-title {
  font-size: 2em;
}


.text-box p {
  margin-bottom: 1rem;
}
.text-box {
  max-width: 500px;
  margin: auto;
}

.fa-brands, .fab {
  font-weight: 400;
  font-size: 1.5em;
}
.bi-telephone, .bi-geo-alt, .bi-search, .bi-list {
  color: #0b5b9a;
font-size: 1.3em;
font-weight: bold;
}

.bi-list {
  font-size: 1.8em
}
button.btn.btn-dark {
  border: solid 2px #0b5b9a;
}


/* SLIDE CARDS */


.bg-dark {
  /* position: relative; */
  background: linear-gradient(to top, #122a6e, #000000);

}

.bg-dark::before {
  /* content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; */
  background-image: url('images/60-lines.png');
  opacity: 0.9; /* Adjust the opacity as needed */
  z-index: 1;
}




.custom-container {
  max-width: 90%; /* Default for larger screens */
  margin: 0 auto;
}

/* Media query for mobile devices */
@media (max-width: 767px) {
  .custom-container {
      max-width: 100%; /* 100% width on mobile devices */
      padding: 0 1em; /* Optional: Add some padding for better readability */
  }
}




.contact-section {
  background-image: url('images/blue-bg-abstract.jpg');
  background-size: cover;
  background-position: center;
  position: relative;
  z-index: 1;
}

.contact-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: -1;
}

.contact-section .card {
  border-radius: 10px;
}

.contact-section .card-body {
  border-radius: 10px;
}

.contact-info-card {
  background-size: cover;
  background: transparent;
  background-position: center;
  color: white;
}

.contact-info-card .card-body {
  background: rgb(0 0 0);
  box-shadow: 0px 1px 17px -2px;
  background-image: url(images/dr-vinyl-logo-white.png);
  background-repeat: no-repeat;
  background-position-y: bottom;
  background-size: contain;
  height: 390px;
  padding: 1em 1em 1em 1em !important;
}

.contact-section .round-social a {
  margin: 0 5px;
}

.contact-section .card-body.bg-secondary {
  text-align: center;
}

@media (max-width: 992px) {
  .contact-section .card-body.bg-secondary {
    text-align: center;
  }
}









/* 2 column bg img section */
.full-width-section {
  width: 100%;
}

.text-overlay {
  position: relative;
  height: 400px; /* Adjust height as needed */
  background-size: cover;
  background-position: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

.text-overlay::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5); /* Dark overlay */
  z-index: 1;
}

.overlay-content {
  position: relative;
  z-index: 2;
  color: white;
  text-align: center;
}

.overlay-content h2 {
  font-size: 2rem;
  font-weight: bold;
}

.overlay-content hr {
  width: 50px;
  border: 1px solid white;
  margin: 1rem auto;
}

.overlay-content p {
  font-size: 1rem;
  margin: 0;
}


/* SHAPE DIVIDERS */

#hero {
  position: relative;
  overflow: hidden;
  min-height: 90vh;
}

.dark-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /* background-color: rgba(0, 0, 0, 0.5); */ /* Dark overlay with opacity */
}

.custom-shape-divider-bottom-1716329296 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
  transform: rotate(180deg);
}

.custom-shape-divider-bottom-1716329296 svg {
  position: relative;
  display: block;
  width: calc(100% + 1.3px);
  height: 83px;
  transform: rotateY(180deg);
}

.custom-shape-divider-bottom-1716329296 .shape-fill {
  fill: #FFFFFF;
}


#featured h2 {
  margin-bottom: 3rem; /* Adjusted value to center the heading more */
  font-size: 3em;
}

@media (max-width: 768px) {
  #featured h2 {
      font-size: 2em; /* Adjust font size for mobile devices */
  }
}

@media (min-width: 992px) {
  .rounded-lg-3 { border-radius: .3rem; }
}

.bg-dark-flipped {
  background: linear-gradient(to top, #000000, #122a6e);
}
.bg-blue {
  background: #1aa7ec;
}


.title {
  text-shadow: 1px 1px black;
}

.custom-shape-divider-top-1716329943 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
}

.custom-shape-divider-top-1716329943 svg {
  position: relative;
  display: block;
  width: calc(100% + 1.3px);
  height: 83px;
}

.custom-shape-divider-top-1716329943 .shape-fill {
  fill: #FFFFFF;
}

.custom-shape-divider-top-1716402310 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
}

.custom-shape-divider-top-1716402310 svg {
  position: relative;
  display: block;
  width: calc(100% + 1.3px);
  height: 56px;
}

.custom-shape-divider-top-1716402310 .shape-fill {
  fill: #f8f8f8;
}
.custom-shape-divider-bottom-1716402462 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
  transform: rotate(180deg);
}

.custom-shape-divider-bottom-1716402462 svg {
  position: relative;
  display: block;
  width: calc(100% + 1.3px);
  height: 56px;
}

.custom-shape-divider-bottom-1716402462 .shape-fill {
  fill: #FFFFFF;
}
.custom-shape-divider-bottom-1716402792 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
  transform: rotate(180deg);
}

.custom-shape-divider-bottom-1716402792 svg {
  position: relative;
  display: block;
  width: calc(100% + 1.3px);
  height: 56px;
  transform: rotateY(180deg);
}

.custom-shape-divider-bottom-1716402792 .shape-fill {
  fill: #FFFFFF;
}
.custom-shape-divider-top-1716402972 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
}

.custom-shape-divider-top-1716402972 svg {
  position: relative;
  display: block;
  width: calc(100% + 1.3px);
  height: 56px;
  transform: rotateY(180deg);
}

.custom-shape-divider-top-1716402972 .shape-fill {
  fill: #FFFFFF;
}
.certified h5 {
  line-height: 22px;
  font-size: 18px;
  font-weight: 400;
}

.certified .font-weight-medium {
font-weight: 500;
}

.certified .bg-light {
background-color: #f4f8fa !important;
}

.certified .subtitle {
color: #8d97ad;
line-height: 24px;
}

.certified .testi2 .image-thumb {
background: url(images/greadint-bg.png) no-repeat top center;
text-align: center;
padding: 10% 0;
}

.certified .testi2 .image-thumb img {
width: 400px;
}

.certified .testi2 .owl-dots {
display: inline-block;
position: relative;
top: -100px;
}

.certified .testi2 .owl-dots .owl-dot {
border-radius: 100%;
width: 70px;
height: 70px;
background-size: cover;
margin-right: 10px;
opacity: 0.4;
cursor: pointer;
}

.certified .testi2 .owl-dots .owl-dot span {
display: none;
}

.certified .testi2 .owl-dots .owl-dot.active,
.certified .testi2 .owl-dots .owl-dot:hover {
opacity: 1;
}

@media (max-width: 767px) {
.certified .testi2 .owl-dots {
  top: 0px;
}
}

.certified .btn-md {
  padding: 18px 0px;
  width: 60px;
  height: 60px;
  font-size: 20px;
}

.certified .btn-danger {
  background: #ff4d7e !important;
  border: 1px solid #ff4d7e !important;
}



/* Hide carousel buttons on mobile devices */
@media (max-width: 767.98px) {
  .carousel-control-prev,
  .carousel-control-next {
      display: none;
  }
}


.fixed-size {
  height: 500px; /* Adjust height as needed */
  width: 100%;
  max-width: 600px; /* Adjust width as needed */
  margin: auto;
  overflow: hidden;
  position: relative;
  border-radius: 15px; /* Adding rounded corners */
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Adding subtle shadow */
  background: #fff; /* Adding background color for card */
}

.fixed-size .card-img-top-wrapper {
  position: relative;
  height: 75%; /* Adjust this value to control the image height */
  overflow: hidden;
  border-bottom: 1px solid #ddd; /* Adding a border between image and body */
}

.fixed-size .card-img-top {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.fixed-size .card-body {
  height: 25%; /* Adjust this value to control the body height */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.fixed-size .card-title {
  font-size: 1.5rem; /* Making title larger */
  font-weight: 700; /* Making title bold */
  margin-bottom: 0.5rem; /* Adding some space below the title */
}

.fixed-size .card-text {
  font-size: 1.25rem; /* Making text larger */
  font-weight: 500; /* Making text semi-bold */
  color: #555; /* Adding some color to the text */
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  background-color: #007bff; /* Changing the arrow color */
  border-radius: 50%; /* Making arrows circular */
  padding: 11px; /* Adding some padding */
}

.carousel-control-prev-icon:hover,
.carousel-control-next-icon:hover {
  background-color: #0056b3; /* Changing color on hover */
}






.bg-leather {
  position: relative;
  background-image: url(images/dark-leather.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.bg-leather::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(18, 42, 110, 0.5); /* Blue color with 50% opacity */
  z-index: 1;
}

.bg-leather > * {
  position: relative;
  z-index: 2;
}

@media (min-width: 992px) {
  .logo-img {
      margin-left: 2em;
  }
  li.nav-item {
    margin: 1em;
  }
  ul.navbar-nav.my-2.my-lg-0.text-md-right.text-center.primary-font {
    font-size: 22px;
}

}


.d-none.d-lg-block.navbar-phone-desktop {
  margin-right: 2em;
}

.padding-custom-section {
  padding-top: 4em;
  padding-bottom: 4em;
}

.padding-custom-container {
  padding-top: 2em;
  padding-bottom: 2em;
}
.bg-offwhite {
  background-color: #f8f8f8;
}
.bi-telephone::before {
 
  margin-right: .5em;
}


/* GET A QUOTE */

@media (max-width: 768px) {
  #quote .card {
      width: 100% !important;
      margin: 0 auto;
  }

  #quote .container {
      max-width: 100% !important;
  }
}



/* Add this to your existing CSS */
#quote .form-label {
  color: white;
  font-size: 1.2em;
}

#quote .form-control {
  background-color: #ffffff;
  color: #000;
  border: none;
  border-radius: 5px;
}

#quote .form-control::placeholder {
  color: #000;
}

#quote .btn-primary-gradient {
  background: linear-gradient(to right, #56ccf2, #2f80ed);
  color: black;
}




/* Vinyl Leather plastic page */

/* Add the following to your existing CSS file */

.service-details {
  padding: 3rem 0;
}

.service-details .container {
  max-width: 80%;
}

.service-details img {
  margin-bottom: 2rem;
}

.service-details h2 {
  font-size: 2.5rem;
  font-weight: 700;
}

.service-details .alert {
  font-size: 1.2rem;
}

.service-details ul {
  list-style-type: none;
  padding-left: 0;
}

.service-details ul li {
  margin-bottom: 1rem;
  padding-left: 1.5rem;
  position: relative;
}

.service-details ul li::before {
  content: "\f00c";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  color: #007bff;
}

.blockquote {
  font-size: 1.2rem;
  font-style: italic;
  margin-top: 2rem;
}

.custom-shape-divider-top-1716402972 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
}

.custom-shape-divider-top-1716402972 svg {
  position: relative;
  display: block;
  width: calc(100% + 1.3px);
  height: 56px;
  transform: rotateY(180deg);
}

.custom-shape-divider-top-1716402972 .shape-fill {
  fill: #FFFFFF;
}

.custom-shape-divider-bottom-1716329296 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
  transform: rotate(180deg);
}

.custom-shape-divider-bottom-1716329296 svg {
  position: relative;
  display: block;
  width: calc(100% + 1.3px);
  height: 83px;
  transform: rotateY(180deg);
}

.custom-shape-divider-bottom-1716329296 .shape-fill {
  fill: #FFFFFF;
}

#hero .img-cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  left: 0;
  top: 0;
}

.bg-light {
  background-color: #f8f8f8;
}

.content-section {
  padding: 60px 0;
}

.content-section h2 {
  margin-bottom: 40px;
}

.content-section .content-img {
  margin-bottom: 30px;
}

.content-section .row > .col-md-6 {
  display: flex;
  align-items: center;
}

.before-after-container {
  margin-top: 20px;
}

.before-after-container .col-md-6 {
  margin-bottom: 20px;
}