:root {
  --brand-grey-light: #d7d7d7;
  --brand-grey-dark: #424242;
  --brand-dark: #dca029;
  --brand-accent: #90A409;
}

/* Sitewide Styles
======================================*/
body {
    font-family: 'Roboto', sans-serif;
}
h1 {
    font-weight: 800;
    margin: 20px 0;
    color: var(--brand-dark);
    font-size: clamp(3rem, 3.5vw, 6rem);
}
h2 {
    font-size: clamp(2rem, 1.5vw, 4rem);
    font-weight: 600;
    margin: 28px 0 5px;
}
h3 {
    font-size: clamp(1.5rem, 1.25vw, 3rem);
    font-weight: 400;
    margin: 20px 0 5px;
}
.bold {
    font-size: clamp(3rem, 4vw, 6rem);
    font-weight: 800;
    margin: 28px 0 5px;
    color: var(--brand-dark);
    line-height: 1;
}
.semibold {
    font-size: clamp(2rem, 2.5vw, 45rem);
    font-weight: 600;
    margin: 28px 0 5px;
    color: var(--brand-dark);
    line-height: 1;
}
a.btn {
    display: inline-block;
    background-color: var(--brand-dark);
    padding: 15px 20px;
    text-decoration: none;
    color: #ffffff;
    border-radius: 5px;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    box-shadow: 2px 2px 5px 2px #0000004f;
    width: max-content;
    margin: 15px 0;
}
a.btn:hover {
  background-color: #282828;
  color: #fff;
}
.imgrt {
    float: right;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    align-items: center;
    margin: 10px;
}
.imglt {
    float: left;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    align-items: center;
    margin: 10px;
}

.content {
    padding: 4vh 0;
}

/* Content Styles
======================================*/
.section {
    padding: 3vh 0;
}

.main-content {
    margin: 2vh 0;
    padding: 18px;
    background-color: #f3e0b969;
    border-radius: 8px;
    line-height: 2.7 !important;
}

.main-content h2, .main-content h3 {
    color: #dca029;
}

.main-content p, .main-content p em {
    font-size: 1.15rem;
    line-height: 1.8;
    margin: 18px 0;
    text-indent: 8ch;
}
/* Top Bar Styles
======================================*/
.topbarwrap {
    background: #000;
}
.topbarlink p {
    margin: 0;
}
.topbarlink {
    color: #fff;
    text-align: right;
    padding: 10px 0;
}
/* Header Styles
======================================*/
.headerwrap {
    padding-top: 32px;
    background: #231752;
    background-image: linear-gradient(to bottom, #231752cc, #231752de),url(/uploads/images/star-bkg.jpg);
}
.tagbox h2 {
    font-size: clamp(1.5rem, 2vw, 3rem);
    font-weight: 600;
}

a.hdrlogo img {
    max-width: 560px;
}
.banner-title.header-text {
    line-height: 1.8;
    text-align: center;
    color: #dca029;
    font-size: 3.2rem;
    font-weight: 400;
}

@media only screen and (max-width: 767px) {
    a.hdrlogo img {
        max-width: 100%;
    }
}

/* Page Banner Styles
======================================*/
.pgbnrtext {
    min-height: 24vh;
}
.pgbnrtext h1 {
    font-size: clamp(3rem, 3vw, 4rem);
    color: #e7e7e7;
    font-weight: 700;
    text-shadow: 3px 3px black;
    padding: 25px 0;
}
/* Nav Styles
======================================*/
.navwrapper {
    background: #dca029;
    z-index: 999999;
    position: sticky;
    top: 0;
    box-shadow: 0px 5px 19px 0px rgba(0,0,0,0.31);
    -webkit-box-shadow: 0px 5px 19px 0px rgba(0,0,0,0.31);
    -moz-box-shadow: 0px 5px 19px 0px rgba(0,0,0,0.31);
}

.parent-link, .sidr-class-parent-link {
  cursor: default;
  pointer-events: none;
}

.cssmenu > ul > li {
    display: inline-block;
    margin: auto 10px;
}

/*Mobile Nav fix*/

.sidr-class-22 {
    padding-left: 20px;
}
/* Box Slider Styles
======================================*/
.bxslide {
    background: #231752;
}
.slideimg {
    height: clamp(250px, 68vw, 600px);
    background-size: cover;
    background-position: center;
}
.btn.bnrbtn {
    margin: 10px 0;
    max-width: 265px;
    text-align: center;
}
.slide {
    padding:0;
}
.bxslidetext {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-content: flex-start;
    padding: 10px;
}
.bxslidetext h2 {
    color: #dca029;
    font-size: clamp(2.5rem, 4.5vw, 6rem);
    line-height: 1;
}
.bxslidetext p {
    font-size: clamp(1rem, 2vw, 3rem);
    color: #f3e0b9;
    line-height: 1.2;
}
@media only screen and (max-width: 767px) {
    .bxslidetext {
        text-align: center;
    }
    .btn.bnrbtn {
    margin: 10px auto;
    }
}
/* Customer Review Styles
==========================*/
h3.slideshow-title {
    text-transform: uppercase;
    font-size: 1.8rem;
    margin-top: 4vh;
    text-align: center;
    font-weight: bold;
    padding: 10px;
    color: #231752;
    border-radius: 8px;
}

.rating-wrapper {
    display: inline-flex;
    gap: 12px;
    align-items: center;
    font-size: 1.2rem;
    color: #dca029;
}

.customer-review-link {
    text-align: center;
    margin-bottom: 15px;
    font-style: italic;
}

a.link-highlight {
    font-weight: bold;
    color: #dca029;
}

span.rating-score {
    font-size: 1.2rem;
    font-weight: bold;
    color: black;
}

.slideshow {
    padding: 10px;
    min-height: 320px;
    margin: auto;
    display: flex;
}
.slideshow ul {
    margin: 10px auto auto;
}
.review-item {
    display: none;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 15px 0;
    transition: background-color 0.6s ease;
}

.cust-review p {
    text-align: center;
    margin: 35px auto;
    font-style: italic;
    font-size: 19px;
}
.cust-name {
    font-weight: bold;
}

li.review-item.fade.active{
    display:flex;
}

.fade {
  animation-name: fade;
  animation-duration: 1.5s;
}

@keyframes fade {
  from {opacity: .4}
  to {opacity: 1}
}



/*review page styles*/

ul.review-display {
    display: flex;
    flex-direction: column;
    gap: 5vh;
    margin: 0;
}

li.review-item-display {
    border-radius: 8px;
    padding: 2rem;
    background: antiquewhite;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}


/* Banner Info Styles
===============================*/
.banner-title {
    font-family: 'Covered By Your Grace', cursive;
}

.banner-info {
    background-color: #f0ecff;
    padding: 18px;
    margin-top: 4vh;
}

.banner-info h3 {
    padding: 15px 0;
    background: #dca029;
    color: #231752;
    margin: 13px 0;
    font-size: clamp(2.5rem,3.6vw,4rem);
    text-align: center;
    background-image: linear-gradient(to bottom, #dca029, #dca029c7),url(/uploads/images/star-bkg.jpg);
}

.banner-info p {
    margin: 15px 0;
    line-height: 1.8;
    text-align: center;
}


p.service-title {
    font-size: 24px;
    font-weight: bold;
    text-align: left;
}

ul.service-list {
    column-count: 3;
    margin:auto;
}

li.service-item {
    text-align: center;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 16px;
    max-height: 140px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
    padding: 14px 5px;
    background: #f3e0b9;
    border: 6px solid #dca029;
    border-radius: 8px;
}

span.service-bold {
    font-weight: bold;
}

@media only screen and (max-width: 768px) {
     ul.service-list {
    column-count: 1;
    }
    li.service-item {
        padding:20px;
    }
}
/* Video Box Styles
======================================*/
.videobox {
    padding: 1vw;
    text-align: center;
    border: solid 1px #d9d9d9;
    margin: 0.5vw;
}
/* Category Box Styles
======================================*/
.catboxwrap {
    justify-content: center;
}
.catbox {
    display: flex;
    max-width: 400px;
    padding: 5px;
    text-align: center;
    border: solid 2px #dca029;
    margin: 6px;
    border-radius: 8px;
    justify-content: space-between;
}

.catimage img {
    border-radius: 6px 6px 0 0;
}
.cattitle {
    min-height: 55px;
    background: #f3e0b9;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 8px;
}
.cattitle h2 {
    color: #231752;
    font-size: 28px;
    font-weight: 600;
    margin: auto;
}

.cat-info p {
    text-align: left;
    padding: 10px;
    font-size: 18px;
}


.catbox:hover {
    border: solid 2px #231752;
}

.catbox:hover .cattitle, .catbox:hover .cattitle h2 {
    background: #231752;
    color: #f3e0b9;
}
/* Left image box Styles
======================================*/
.imagebox {
    padding: 3vh;
}
.imagebox p {
    margin: 35px 0;
    padding: 15px 0;
    border-top: solid 1px #939393;
    border-bottom: solid 1px #939393;
    text-align: justify;
}
/* First Section Styles
======================================*/
.firstSecWrap {
    padding: 10vh 0;
    margin: 8vh 0;
    background: #fff;
}
.firstSecText {
    padding: 2vh 0;
}
.firstSecText p {
    padding: 10px;
}
.firstSecLink {
    text-align: center;
}
/* Second Section Styles
======================================*/
.secondSecWrap {
    background-image: url(/2022/assets/uploads/bold-backgound.jpg);
    height: 65vh;
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}
.secondSecWrap h2 {
    color: #fff;
    text-align: center;
    font-size: clamp(3rem, 3.5vw, 5rem);
    font-weight: 700;
    background: #0000007d;
    padding: 20px;
    line-height: 1.25;
}
/* Third Section Styles
======================================*/
.thirdSecWrap {
    background: #fff;
    margin: 10vh 0;
    padding: 8vw 0;
}
.thirdSecWrap h2 {
    text-align: center;
    font-size: 3rem;
    padding: 20px 0;
    font-weight: 600;
    color: #606060;
}
/* Fourth Section Styles
======================================*/
.fourthSecWrap {
    padding: 35px;
}
.fourthSecWrap h2 {
    font-size: clamp(2rem, 5vw, 5rem);
    font-weight: 600;
    margin-bottom: 20px;
}
section.fourthSecWrap p {
    font-size: clamp(1.25rem, 1.5vw, 3rem);
}
/*
Our work Gallery Styles
======================================*/
.ourwork-img-wrapper {
    border-radius: 8px;
    margin: 5px 0;
    background: #faf2e2;
    padding: 15px;
}

h3.main-title {
    color: #dca029;
    margin-bottom: 3vh;
    font-size: clamp(1.5rem, 2.7vw, 3rem);
    text-align: center;
    font-weight: bold;
    text-transform: uppercase;
}

img.ourwork-img {
    margin: 15px 0;
}

#img01 {
    display: block;
    margin: auto;
    width: max-content;
    height: max-content;
}
    

.modal {
  display: none; 
  position: fixed; 
  z-index: 1; 
  padding-top: 100px;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto; 
  background-color: rgb(0,0,0); 
  background-color: rgba(0,0,0,0.9); 
}


.modal-content {
  margin: auto;
  display: block;
  max-width: 90%;
  max-height: 90%;
}

.close {
    position: absolute;
    top: 75px;
    right: 35px;
    color: #f1f1f1;
    font-size: 40px;
    font-weight: bold;
    transition: 0.3s;
}

.close:hover,
.close:focus {
  color: #bbb;
  text-decoration: none;
  cursor: pointer;
}
    
    
/* GALLERY Styles
======================================*/
.GallerImage {
    min-height: 200px;
    background-position: top center;
    background-size: cover;
    margin: 8px;
    cursor:pointer;
}

/* Modal Styles
===========================================*/

.galimagebox {
    padding: 10px;
}
.modal {
z-index:1;
display:none;
padding-top:10px;
position:fixed;
overflow-y: hide;
left:0;
top:0;
width:100%;
height:100%;
overflow:hidden;
background-color:rgb(0,0,0);
background-color:rgba(0,0,0,0.8)
}


.modal-content-wrapper {
display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    height: 100%;
    width: 100%;
}
.modal-content{
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-content: center;
}

.modal-row {
    align-self: center;
    background-size: cover;
    background-position: center;
    display: flex;
    position: relative;
    justify-content: end;
}


#img01 {
    display: block;
    margin: 0px;
    width: fit-content;
    height: fit-content;
    
}

.modal-hover-opacity {
opacity:1;
filter:alpha(opacity=100);
-webkit-backface-visibility:hidden
}

.modal-hover-opacity:hover {
opacity:0.60;
filter:alpha(opacity=60);
-webkit-backface-visibility:hidden
}
.close {
    display: flex;
    background-color: rgb(255 255 255 / 66%);
    padding: 8px;
    border-radius: 34px;
    line-height: 0.6;
    position: absolute;
    height: fit-content;
    font-size: clamp(2rem, 2vw, 4rem);
    color: black;
    transition: .5s ease;
    margin: 5px;
}
.btn-wrapper {
    margin: auto;
    align-self: center;
    display: flex;
    position: absolute;
    /* height: 100%; */
    width: 100%;
    align-items: center;
    justify-content: space-between;
}

.prev-img, .next-img{
    background-color: rgb(213 201 201 / 26%);
    padding: 8px;
    justify-content: center;
    align-items: center;
    text-align: center;
    line-height: 1.6;
    font-size: clamp(2rem, 5vw, 8rem);
    color: #fffefe;
    transition: .5s ease;
}

.prev-img:hover, .next-img:hover, .close:hover{
        background-color: rgb(2 2 2 / 99%);
    
}

.container1 {
width:200px;
display:inline-block;
}
.modal-content, #caption {   
  
    -webkit-animation-name: zoom;
    -webkit-animation-duration: 0.6s;
    animation-name: zoom;
    animation-duration: 0.6s;
}


@-webkit-keyframes zoom {
    from {-webkit-transform:scale(0)} 
    to {-webkit-transform:scale(1)}
}

@keyframes zoom {
    from {transform:scale(0)} 
    to {transform:scale(1)}
}


/* CTA-Bar Styles
=======================================*/
.button-inline-wrapper {
    gap: 30px;
    justify-content: center;
    align-items: center;
}

.cta-bar {
    background: #25174f;
    text-align: center;
    align-items: center;
    border-radius: 8px;
    padding: 10px;
    margin: 10px 0;
    color: #fff;
}

.cta-bar h3 {
    font-size: clamp(1.5rem, 3vw, 3rem);
    font-weight: bold;
    color: #e5a140;
    margin-bottom: 18px;
}

/* Contact Form Section Styles
======================================*/

.form-row {
    display: flex;
    margin: 25px 0;
    flex-direction: column;
}

.form-row input[type="submit"] {
    max-width: fit-content;
    background-color: #231752;
}


form.contact-form {
    background-image: linear-gradient(to bottom, #f3e0b9eb, #f3e0b9eb),url(/uploads/images/star-bkg.jpg);
    background-color: #f3e0b9;
    padding: 2rem;
    margin: 4vh 0;
    border-radius: 8px;
}
form.contact-form h1 {
    font-weight: 500;
    border-radius: 8px;
    text-align: center;
    letter-spacing: 5px;
    background: #ffffff5e;
}

p.form-content {
    max-width: 80ch;
    text-align: center;
    margin-bottom: 24px;
    line-height: 1.8;
}

.form-row .label {
    font-size: 18px;
    font-weight: 500;
}

textarea#comments {
    height: 24ch;
}

@media all and (max-width: 768px) {
    .contactctatext, .contactctaform {
        max-width: 100%;
    }
}
/* UL LI Column List
============================================*/
ul.listcol2 li, ul.listcol3 li, ul.listcol4 li {
  margin: 0 !important;
  width: 100%;
}
ul.listcol2 {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2
}
ul.listcol3 {
  -webkit-column-count: 3;
  -moz-column-count: 3;
  column-count: 3;
}
ul.listcol4 {
  -webkit-column-count: 4;
  -moz-column-count: 4;
  column-count: 4;
}
/* MOBILEPHONES*/
@media only screen and (max-width: 767px) {
  ul.listcol2, ul.listcol3, ul.listcol4 {
      -webkit-column-count: 1;
      -moz-column-count: 1;
      column-count: 1;
  }
}
/* Jump Boxes Styles
======================================*/
.jumpbox {
    padding: 20px;
}
.jumpbox img {
    width: -webkit-fill-available;
}
/* Footer Styles
======================================*/
.footerwrap {
    background: #231752;
    background-image: linear-gradient(to bottom, #231752c9, #231752f2),url(/uploads/images/star-bkg.jpg);
    background-color: #231752;
    padding: 50px 0;
}

img.footer-logo {
    max-width: 300px;
}

.footer, .footer a, .footer p {
    color: #ddd;
}

.footer-contact-info, .footer-contact-info a {
    color: #dca029;
    display: inline-flex;
    gap: 10px;
    align-items: center;
    font-size: 20px;
    margin: 3px 3px;
    font-weight: bold;
}

p.footer-desc {
    line-height: 1.8;
    margin: auto;
}
a.socmed-icon {
    font-size: 2.2rem;
    text-decoration: none;
}
.footer-icon {
    font-size: 1.5rem;
}

section.footerwrap .cssmenu ul a {
    color: #dca029;
}

.subfooterwrap {
    background-color: #231752;
    text-align: center;
    color: #fff;
}

@media only screen and (max-width: 1024px) {
    .footerwrap {
        text-align:center;
    }
    .footer-contact-info, .footer-contact-info a {
        justify-content:center
    }
}
































