
body {
    margin: 0;
    font-family: Arial, sans-serif;
    background: #f4f4f4;
    overflow-x: hidden;
    width: 100%;
  box-sizing: border-box;
}
.hero {
  position: relative;
  height: 100vh;
  overflow: hidden;
   box-sizing: border-box;
}
.hero2 {
  position: relative;
  height: 30vh;
  overflow: hidden;
   box-sizing: border-box;
}

.hero-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 120%;
  object-fit: cover;
  z-index: 0;
   box-sizing: border-box;
}
.hero-image{
   position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 120%;
  object-fit: cover;
  z-index: 0;
   box-sizing: border-box;
}

.hero::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0);
  opacity: 0.6;
  z-index: 1;
   box-sizing: border-box;
}

.hero2::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0);
  opacity: 0.6;
  z-index: 1;
   box-sizing: border-box;
}

.herotext {
  position: absolute;
  top: 33%;
  width: 100%;
  text-align: center;
  color: white;
  z-index: 2;
  font-family: "Amatic SC";
 font-weight: 100%;
   box-sizing: border-box;
}
.herotext h2{
font-family:"Raleway"!important;
}
.herotext a, .CTA a{
  margin-top: 20px;
padding: 10px 20px;
  font-family: "Raleway";
  color:#644929;
  border: none;
 display: inline-block;
  background-color: antiquewhite;
  transition: all .3s ease;
   box-sizing: border-box;
  text-transform: uppercase;
}
.CTA{
 text-align: center;
 position: relative;
}
.CTA a{
  position: relative;

margin: 0 auto;
 display: inline-block;
text-align: center;
 z-index: 300;
}
.herotext a:hover, .CTA a:hover{
background-color: #644929;
color: antiquewhite;
  cursor: pointer;
  transition: all .3s ease;
}
h1{
font-size: clamp(3.5em, 7vw, 5em);
   box-sizing: border-box;
 padding: 0 20px;
 
}
h2, h3, h4{
font-family: "Amatic SC";
padding: 0 20px;
text-transform:uppercase;
   box-sizing: border-box;
}
h3{
font-size: 1.6em;
}
p{
font-family:"Poppins";
  font-weight: 200;
}
.herotext h2{
 font-weight: 200;
}
.hr{
width: 35%;
display: block;
border-top: 2px rgb(185, 154, 74) solid;
 

}

.content {
width: 100%;
    display: block;
     justify-content: center;
    background: white;
   box-sizing: border-box;
}
main{
width: 100%;
   box-sizing: border-box;
}
/*nav*/
nav{
width: 100%;
z-index: 100;
position: absolute;
display: block;
top: 0;
height: 100px;
font-family: "Raleway";
   box-sizing: border-box;
}
nav .leftmenu{
display: flex;
flex-direction: row;
padding-inline-start: 25px;
   box-sizing: border-box;
 
}
.leftmenu img{
opacity: 0;
   box-sizing: border-box;
 
}
nav .rightmenu{
right: 0;
display: flex;
flex-direction: row;
justify-content: flex-end;
padding-inline-start: 20px;
   box-sizing: border-box;
 
}
.menus li a img{
width: 40px;
}
.menus{
position: absolute;
top: 25px;
margin: 0;
list-style: none;
   box-sizing: border-box;
 
}
.menus li {
align-content: center;
  margin-right: 10px;
}
nav .leftmenu li a, nav .rightmenu li a{
color: white;
font-size: .8em;
	text-decoration: none;
}
.contactmenu-item{
border: 1px white solid;
	width: 150px;
	display: block;
	margin: 0 15px;
}
.contactmenu-item a{
	display: block;
text-align: center;
justify-content: center;
}
.topdeck{
    display: flex;
    flex-flow: row nowrap;
    justify-content: center; /* Centers all items horizontally */

    }
.whitebar{
    flex: 1;
height: 15px;
background-color: white;
z-index: 100;

}
.masksquare{
width: 190px;
height: 170px;
background:none;
border:#ffffff 1px solid;
top: -2px;
position: relative;
align-content: center;
}

.masksquare a img{
object-fit: contain;
width: 70%;
display: block;
margin: 0 auto;
}
.rings{
position: absolute;
bottom: 0;
width: 40px;
margin: 0 auto;
right: 50%;
left: 50%;
transform: translateX(-50%) translateY(50%);
}
@media screen and (max-width: 700px){
 nav .rightmenu{
 flex-direction: column;
align-content: center;
 justify-content: center;
 text-align: right;
 
 }
 nav .leftmenu{
display: flex;
flex-direction: column;
padding-inline-start: 25px;
}
 nav .rightmenu .contactmenu-item{
 padding: 15px 10px;
 }
 .masksquare{
width: 120px;
height: 120px;
background: none;
border:#ffffff 1px solid;
top: -2px;
position: relative;
align-content: center;
}
.masksquare img{
object-fit: contain;
width: 70%;
display: block;
margin: 0 auto;
}
}

.wrapper{
max-width: 800px;
margin: 40px auto;
width: 100%;

}
.widewrapper, .widerwrapper{
margin: 40px auto;
width: 100%;
box-sizing: border-box;
padding: 0 20px;
background-color: #ffffff;
}
.widewrapper{
max-width: 900px;
}
.widerwrapper{
max-width: 1200px;
  
}
.spacer{
  height: 20px;
margin-bottom: 10px;
}
.videoframe {
height: 550px;
width: 100%;
object-fit: cover;
overflow: hidden;
}
.videoframe video{
height: 100%;
object-fit: cover;
}
.widewrapper img{
  margin: 40px 0;
}
.remove-bottom-margin{
margin-bottom: 0!important;
padding-bottom: 0!important;
}
.remove-top-margin{
 margin-top: 0;
padding-top: 0;
}
.add-small-margin{
margin: 10px 0;
}

.dual-column {
  display: flex;
  flex-wrap: wrap;
  gap: 75px;
  justify-content: space-between;
  align-items: center;
	max-width: 900px;
	margin: 70px auto 0;
}
.threecolumn{
  display: flex;
flex-flow: row wrap;
justify-content: center;
gap: 20px;
max-width: 1200px;
padding-bottom: 40px;
}
.threecolumn .grow{
 flex-grow: 1;
}
.threecolumn div img{
width: 100%;
height: 100%;
object-fit: cover;
}
.threecolumn div, .hidecolumn div{
position: relative;
padding: 30px 0;
 box-sizing: border-box;
}
.threecolumn .grow .squish{
padding: 0 40px;
}
.threecolumn div span, .hidecolumn div span{
position: absolute;
display: block;
bottom: 0;
text-align: center;
width: 100%;
}
.hidecolumn{
    display: flex;
  flex-flow: row wrap;
  justify-content: center;
  gap: 20px;
  padding-bottom:0;
  max-height: 0;
  overflow: hidden;
  transition: all .35s ease-in-out;
}
.hidecolumn div{
padding-bottom: 0px;
transition: all .35s ease-in-out;
}
.reveal{
max-height: 1200px;
padding-bottom: 40px;
 overflow: visible;
transition: all .35s ease-in-out;
}
.reveal div{
  padding-bottom: 40px;
  transition: all .35s ease-in-out;
}


.threecolumn h3, .threecolumn p, .threecolumn span, .hidecolumn h3, .hidecolumn p, .hidecolumn span{
text-align: center;
display: block;
line-height: 2em;
}
.threecolumn span, .hidecolumn span{
font-weight: bold;
}
.threecolumn div, .hidecolumn div{
border: 2px white solid;
flex: .5 1 250px; /* grow, shrink, basis */
  min-width: 250px;
}
.column-override{
border: none!important;
background-color: #fff4e1;
  border-radius: 10px;
}
.wedding-swiper-cont{
 display: block;
 position: relative;
margin-bottom: 50px;
 box-sizing: border-box;
 padding: 20px;
}

.wedding-swiper .swiper-wrapper .swiper-slide{
height: 350px;
}
.wedding-swiper .swiper-wrapper .swiper-slide img{
width: 100%;
 height: 100%;
 object-fit: cover;
}
.uppertop-img{
object-position: center -100px;
}
@media screen and (max-width:484px){
 .uppertop-img{
object-position: center top;
}
}
.wholediv{
min-height: 200px;
width: 100%;
display: flex;
position: relative;
flex-direction: column;
}
.wholediv p, .wholediv h2{
max-width: 700px;
margin: 10px auto;
text-align: center;
position: relative;
z-index: 500;
color: white;
}
.vertcenter{
margin-top: 160px;
line-height: 1.8em;
}
.parallax {
  position: relative;
  overflow: hidden;
  width: 100%;
}
.parallax-media {
  position: absolute;
  top: -15%;
  left: 0;
  width: 100%;
  height: 140%; /* IMPORTANT: extra vertical buffer */
  object-fit: cover;
  will-change: transform;
  z-index: 0;
}

.parallax-overlay, .parallax-overlay-darker{
  position: absolute;
  inset: 0;
  z-index: 1;
}
.parallax-overlay{
   background: #644929;
 opacity: .6;
}
.parallax-overlay-darker{
   background: #3f2b13;
 opacity: .7;
}
.parallax .vertcenter {
  position: relative;
  z-index: 2;
  margin-top: 160px;
  text-align: center;
  color: white;
}

.parallax2 { height: 500px; }
.parallax3 { height: 400px; }
.parallax3 {
  position: relative;
  overflow: hidden;

}

.parallax3 iframe{
  position: absolute;
 display: block;
 aspect-ratio: 16 / 9;
 width: 100%;
 height: auto;/* 16:9 based on width */
  pointer-events: none;
  border: none;
 object-fit: cover;
 margin: 0 auto;
}
@media screen and (max-width: 584px){
 .parallax3 iframe{
 height: 140%;
  width: auto;
  left: -80%;
 }
}

.services{
background-color: #eddbc5;
padding: 20px;
text-align: center;
}
.services .center{
margin: 0 auto;
width: 100%;
}
.services .center .hr, .services .center .hr .circle1, .services .center .hr .circle2{
padding: 0;
}
.services .center div{
 box-sizing: border-box;
padding: 20px;
}
.services h2, .pricing h2{
font-size: clamp(1.7em, 3vw, 3em);
 text-align: center;
}
.imglimit{
max-height: 300px;
 width: 100%;
 height: 100%;
overflow: hidden;
border: none;
 object-fit: cover;
 object-position: center;
}
.nopadding{
padding: 0!important;
}
.bigger{
font-size: clamp(2em, 4vw, 3em);
line-height: 1;
}
.lilbigger{
 font-size: clamp(1.4em, 2.5vw, 3em);
}
.nobottom{
padding-bottom: 10px;
margin-bottom: 0;
}
.imglimit img{
width: 100%;
height: 100%;
overflow: hidden;

}
.img-padding{
 box-sizing: border-box;
padding: 20px;
}
.pricing .pricespan{
 font-family: "Raleway"; 
 color: #ddd; text-align: center; 
 margin: 10px 0; 
 width: 100%;
 display: block;
 position: relative;
  box-sizing: border-box;
}

.pricing .hr, .portfolio .hr, .services .center .hr{
margin: 0 auto;
border-top: 1px solid darkgrey;
height: 10px;
cursor: pointer;
}

/*--------------------NEW PRICING -----------------------*/
.new-pricing{
  margin: 0 auto;
  box-sizing: border-box;
}
.pricing-category{
margin: 0 auto;
text-align: center;
font-family:"Poppins";
}
.pricing-category h3{
 font-family:"Poppins";
margin-bottom: 0;
}
.new-pricing .new-pricing-box{
display: flex;
  max-width: 1200px;
  margin: 0 auto;
  justify-content: center;
  flex-direction: row;
  flex-wrap: wrap;
  flex: 1 1 auto;
  gap: 30px;
  padding: 20px 15px;
  margin-bottom: 30px;
}
.p-center{
 text-align: center;
}
.new-pricing .new-pricing-box .card{
padding: 45px;
  flex-basis: 250px;
  flex: 1 0;
border-radius: 15px;
position: relative;
 min-width: 230px;
}
.new-pricing .new-pricing-box .card h4{
font-family: "Poppins";
  margin: 15px 0;
  font-size: larger;
  text-align: center;
  text-transform: uppercase;
  padding: 0;
}
.new-pricing .new-pricing-box .card h4::before, .new-pricing .new-pricing-box .card h4::after{
Content:"   \25CB   ";
  color: rgba(0,0,0,.2);
}

.new-pricing .photo .card{
background-color: #F3F3F3;
}
.new-pricing .video .card{
background-color: #D6D6D6;
}
.new-pricing .new-pricing-box .card span{
text-align: center;
display: inline-block;
width: 100%;
    font-family: "Poppins";
  font-weight: 700;
    box-sizing: border-box;
padding: 10px;
  background-color: #30415e;
  color: white;
  border-radius: 10px;
}
.new-pricing .new-pricing-box .card span::before, .new-pricing .new-pricing-box .card span::after{
  content:" - ";
}
.new-pricing .new-pricing-box .card .card-hr{
width: 50%;
margin: 20px auto;
height: 2px;
border-bottom: 2px solid #707070;
}
.new-pricing .new-pricing-box .card p{
text-align: center;
font-size: smaller;
  font-weight: 300;
margin-bottom: 20%;
}
.new-pricing .new-pricing-box .card a{
text-align: center;
display: block;
width: 50%;
  text-decoration: none;
  font-family: "Poppins";
  font-weight: 700;
  margin: 0 auto;
    box-sizing: border-box;
  font-size: smaller;
padding: 5px;
  background-color: grey;
  color: white;
  border-radius: 15px;  
}
.new-pricing .photo .special-offer{
transform: scale(1.05);
  background-color: #fff4e1;
}
.new-pricing  .video .special-offer{
  transform: scale(1.05);
 background-color: #e4d4b9; 
}
.new-pricing .new-pricing-box .couple-preference{
  position: relative;
  overflow: visible;
    font-family: "Poppins";
  margin-bottom: 20px;
}
.couple-preference .bottomcaption {
  font-size: smaller;
  font-weight: 700;
  position: absolute;
  left: 50%;
  bottom: -20px;
  transform: translateX(-50%);

  width: calc(100% - 40px);
  height: 40px;

  background-color: goldenrod;
  color: white;
  border-radius: 10px;

  display: flex;
  align-items: center;
  justify-content: center;

  z-index: 1; /* stays above background */

}
/*-------------------- BUNDLES -----------------------*/

.bundle-section{
  margin: 0 auto 60px auto;
  padding: 40px 20px 80px;
  box-sizing: border-box;
  text-align: center;
  background-color: #eddbc5;
}
.bundle-section h2{
padding-top: 30px;
}
.bundle-subhead{
  font-family: "Poppins";
  font-size: smaller;
  font-weight: 300;
  margin-bottom: 60px;
}

.bundle-grid{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
}

/* Bundle Card */

.bundle-card{
  background-color: #F3F3F3;
  padding: 45px;
  border-radius: 15px;
  flex: 1 1 280px;
  max-width: 360px;
  position: relative;
  box-sizing: border-box;
}

/* Featured / Best Value */

.bundle-card.featured{
  transform: scale(1.05);
  background-color: #fff4e1;
}

/* Tag (Most Popular / Best Value) */

.bundle-tag{
  position: absolute;
  top: -15px;
  left: 50%;
  transform: translateX(-50%);
  background-color: goldenrod;
  color: white;
  font-family: "Poppins";
  font-size: smaller;
  font-weight: 700;
  padding: 5px 15px;
  border-radius: 15px;
  z-index: 2;
}

/* Headings */

.bundle-card h3{
  font-family: "Poppins";
  margin: 15px 0;
  padding: 0;
  font-size: larger;
  text-transform: uppercase;
}

.bundle-card h3::before,
.bundle-card h3::after{
  content: "   \25CB   ";
  color: rgba(0,0,0,.2);
}

/* Description */

.bundle-desc{
  font-family: "Poppins";
  font-size: smaller;
  font-weight: 300;
  margin-bottom: 20px;
}

/* Includes List */

.bundle-includes{
  list-style: none;
  padding: 0;
  margin: 20px 0;
  font-family: "Poppins";
  font-size: smaller;
  font-weight: 300;
}

.bundle-includes li{
  margin-bottom: 8px;
}

/* Pricing */

.bundle-pricing{
  margin: 25px 0;
}

.original-price{
  display: block;
  font-family: "Poppins";
  font-size: smaller;
  text-decoration: line-through;
  color: rgba(0,0,0,.4);
  margin-bottom: 5px;
}

.bundle-price{
  display: inline-block;
  width: 100%;
  font-family: "Poppins";
  font-weight: 700;
  padding: 10px;
  background-color: #30415e;
  color: white;
  border-radius: 10px;
  box-sizing: border-box;
}

.bundle-price::before,
.bundle-price::after{
  content: " - ";
}

.bundle-savings{
  display: block;
  font-family: "Poppins";
  font-size: smaller;
  font-weight: 700;
  margin-top: 8px;
  color: #30415e;
}

/* CTA */

.bundle-cta{
  display: block;
  width: 60%;
  margin: 0 auto;
  text-align: center;
  text-decoration: none;
  font-family: "Poppins";
  font-weight: 700;
  font-size: smaller;
  padding: 6px;
  background-color: grey;
  color: white;
  border-radius: 15px;
}

.book-option{
background-color: #30415e!important;
 margin: 10px auto!important;
}
/* Mobile tweaks */

@media (max-width: 768px){
  .bundle-card,
  .bundle-card.featured{
    transform: none;
  }
}














.hr .circle1, .hr .circle2{
width: 10px;
height: 10px;
border: 1px solid #948a6d;
border-radius: 10px;
position: absolute;
margin: 0 auto;
left: 50%;
transform: translateX(-50%) translateY(-50%);
}
.hr .circle1{
  transform: translateX(-100%)translateY(-50%); 
}
.affordable .circle1, .affordable .circle2{
border-radius: 12px 7px 0 7px;
  transform:translateX(-50%) translateY(-50%) rotate(45deg);
  background-color: #dbb24b;
  animation: weewoow 10s ease-in-out infinite both;
}
@keyframes weewoow{
  0%{transform:translateX(-50%) translateY(-50%) rotate(45deg) scale(1.5)}
  10%{transform:translateX(-50%) translateY(-50%) rotate(45deg) scale(1)}
  20%{transform:translateX(-50%) translateY(-50%) rotate(45deg) scale(1.5)}
  30%{transform:translateX(-50%) translateY(-50%) rotate(45deg) scale(1.0)}
  40%{transform:translateX(-50%) translateY(-50%) rotate(45deg) scale(1.5)}
  50%{transform:translateX(-50%) translateY(-50%) rotate(45deg) scale(1.0)}
  60%{transform:translateX(-50%) translateY(-50%) rotate(45deg) scale(1.5)}
  70%{transform:translateX(-50%) translateY(-50%) rotate(45deg) scale(1.0)}
  80%{transform:translateX(-50%) translateY(-50%) rotate(45deg) scale(1.5)}
  90%{transform:translateX(-50%) translateY(-50%) rotate(45deg) scale(1.0)}
  100%{transform:translateX(-50%) translateY(-50%) rotate(45deg) scale(1.5)}
}
.portfolio h2{
text-align: center;
}
.p-wrapper{
background-color: #eeeeee;
 box-sizing: border-box;
max-width: 1200px;
margin: 20px auto;
padding: 40px 0;
}
.p-wrapper iframe{
max-width: 900px;
display: block;
margin: 0 auto;
   box-sizing: border-box;
 border: 1px solid white;
background-color: white;
align-self: center;
width: 100%;
  aspect-ratio: 16 / 9;
}
.p-wrapper{}
.even-dual-column{
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 45px;
  }
  .even-dual-column div{
  margin-top: 30px;
  flex: 0.27 1 250px;
  text-align: center;
  border: 1px white solid;
  }
.even-dual-column div img{
width: 100%;
 height: 100%;
object-fit: cover;
}
/* Image stack container */
.even-dual-column.vertical-flex > div:first-child > div {
  position: relative;
  max-width: 100%;
}
.vertical-flex p{
 padding: 0 20px;
}

/* Shared image styles */
.even-dual-column.vertical-flex img {
  display: block;
  box-sizing: border-box;
  width: 90%;
  height: auto;
  object-fit: cover;
}
.even-dual-column.vertical-flex div{
 box-sizing: border-box;
padding: 10px;
}

/* Back image */
.even-dual-column.vertical-flex img:first-child {
  position: relative;
  z-index: 1;
  transform: translate(-10px, 10px);
}

/* Front image */
.even-dual-column.vertical-flex img:last-child {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  transform: translate(20px, -20px);
  box-shadow: 0 20px 45px rgba(0,0,0,0.25);
}


/* Keep paragraph at a consistent width */
.dual-column .paragraph {
  flex: 1 0 60%;
	max-width: 90%;
	line-height: 2em;
	margin: 0 auto;
}
.buttonDivider{
display: flex;
align-items: center;
margin: 25px 0 0 0;
}
.buttonDivider a{
font-family: "Raleway";
  color: #644929;
  border: none;
 text-decoration: none;
 text-align: center;
  background-color: antiquewhite;
  padding: 10px 20px;
 box-shadow: 0 0 15px rgba(0,0,0,.2);
}
.buttonDivider .hr{
  border-color: white;
}
/* Aspect-ratio video container */
.side-wrapper {
  position: relative;
  aspect-ratio: 7 / 8;   /* Lock in consistent shape */
  flex: 1 1 265px;         /* Let it shrink/grow with a base of 300px */
  max-width: 90%;
  overflow: hidden;
  background: #000;       /* Fallback while loading */
margin: 0 auto;
  border-radius: 10px;
}

/* Video styles */
.side-wrapper video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;      /* Crop to fill container */
  display: block;
}

.border{
margin: 0 auto;
max-width: 900px;
  padding: 20px;
  border: 2px solid black;
  text-align: center;
 position: relative;
   box-sizing: border-box;
 
}
.border::child{
text-align: center;
}
.border img{
width: 50px;
position: absolute;
bottom: -25px;
box-sizing: border-box;
margin: 0 auto;
 transform: translateX(-50%);

}
.off-white{
 background-color: #f4ebd9;
 box-sizing: border-box;
}
.underconstruction{
position: fixed;
max-width: 35%;
right: 30px;
 box-sizing: border-box;
padding: 20px;
display: block;
 z-index: 1000;
 background:#eddbc5;
 bottom: 0;
 border-radius: 15px 15px 0 0;
}
.special-quote{
color:#644929;
 font-family: cursive;
font-size: 5em;
line-height: 0;
 padding-bottom: 0;
 margin-bottom: 0;
 margin-top: 0;
 height: 70px;
}
.underconstruction p{
padding: 0 20px 20px;
}
@media screen and (max-width:480px){
 .underconstruction{
 max-width: 100%;
 width: 100%;
  right: 0;
 margin: 0 auto;
 text-align: center;
 }
}
/*Footer Styles*/
footer{
display: block;
background-color:#191818;
    list-style-type: none;
    padding-bottom: 40px;
}
footer ul{
    list-style-type: none;
    padding-inline-start: 0;
    display: flex;
    margin-left: 50px;
}
footer ul li {
margin: 20px 20px 20px 0;
}
footer a{
text-decoration: none;
color: white;
}
footer a img {
width: 40px;
}
footer p{
    font-size: small;
    margin-left: 50px;
    color: #e4dfda;
    margin-right: 30px;
}

/* Contact Page */
.contact-section {
  display: flex;
 box-sizing: border-box;
  margin: 60px auto;
  width: 100%;
  padding: 0 20px;
  justify-content: space-between;
  flex-flow: row wrap;
  gap: 20px;
  max-width: 1200px;
}
.contact h1{
text-align: center;
 font-family: "Raleway";
 font-size: clamp(1.7em, 3vw, 3em);
padding: 40px 20px 0px;
}
.botStop{
display: none;
}

.contactDesc {
  min-width: 250px;
  padding: 0 20px;
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 450px;
}
.contactDesc img{
width: 100%;
height: 400px;
object-fit: cover;
}

.contactDesc p {
  margin-bottom: 20px;
}

.contactDesc h2 {
  text-align: left;
  color: var(--primary-color);
  margin-bottom: 20px;
}

.contact-form {
  padding: 30px;
  max-width: 600px;
  margin: 0 auto;
  flex-grow: 1;
  box-sizing: border-box;
  background-color: #eee;
  animation: pulse 3s ease-in-out infinite alternate;
}

@keyframes pulse {
  from {
    box-shadow: 0 0 25px rgba(169, 130, 41, 0.4);
  }
  to {
    box-shadow: 0 0 5px rgba(255, 211, 138, 0.4);
  }
}

form {
  display: block;
 box-sizing: border-box;
  width: 100%;
  padding: 30px;
  margin: 0 auto;
  background-color: white;
  font-family:"Poppins";
}

input,
textarea {
  border: 1px solid #ddd;
  width: 100%;
  background-color: #efefef;
  padding: 8px 5px;
      font-family:"poppins";

  transition: all .3s ease;
}
textarea{
height: 100px;
    font-family:"poppins";
  padding: 10px;
}
#package{


}

input:hover,
input:active,
textarea:hover,
textarea:active {
  transform: scale(1.05);
}

label {
  font-weight: 500;
  color: var(--text-dark);
  line-height: 2em;
}

form button, .notfound-cont button {
  display: block;
  text-align: var(--center-text);
  margin: 10px auto 0;
  padding: 10px 50px;
  font-weight: bold;
  color: var(--text-light);
  transition: all .3s ease;
 cursor: pointer;
}

form button:hover, .notfound-cont button:hover {
  transform: scale(1.05);
}

.businessInfo {
  display: flex;
  flex-flow: row wrap;
  max-width: 1160px;
  margin: 0 auto;
 gap: 20px;
  justify-content: space-around;
  padding: 100px 20px;
  background-color: #f3f3f3;
}

.businessInfo h2 {
  text-align: left;
}

.businessInfo iframe {
  width: 100%;
  max-width: 600px;
  max-height: 300px;
 border: 0;
  outline: 2px solid #e3e3e3;
  outline-offset: 7px;
}

.info-container p a {
  background-color: gold;
}
@media screen and (max-width: 768px){
  .vertical-flex{
 flex-direction: column!important;
 }
body > main > section > div.CTA > div.even-dual-column.vertical-flex > div:nth-child(2){
 margin-top: 0;
 }
 .threecolumn .grow .squish{
padding: 0 10px;
}
  .rings{
position: absolute;
bottom: 0;
max-width: 30px;
margin: 0 auto;
right: 50%;
left: 50%;
transform: translateX(-50%) translateY(50%);
}
 .threecolumn .grow{
   flex-grow: 1;
  display: flex;
  flex-direction: column; 
 }
}
@media screen and (max-width:480px){
 .contactbutton{
  display: none;
 }
 .herotext{
  width: 100%;
  margin: 0 auto;
  top: 30%;
 }
 .herotext h1{
  width: 90%;
  margin: 0 auto;

 }
 .herotext h2{
  width: 90%;
  margin: 0 auto;
  padding-top: 20px;
 }
  .new-pricing .new-pricing-box .card{
padding: 25px;
border-radius: 15px;
   min-width: 200px;
}

 .vertcenter{
 font-size: .8em;
 }
 .vertcenter h2, .vertcenter p{
 width: 90%;
 }
 .parallax2, parallax3{
 background-size: cover;
  background-position: center;
 }
 .even-dual-column{
 padding: 10px;
  gap: 10px;
 }
 .CTA{
 box-sizing: border-box;
 padding: 20px;
 }

}
@media screen and (max-width:480px) and (max-height:784px){

 .herotext{
 }
 h1{
 font-size: clamp(2.5em, 3vw, 4em);
 }
}
/* ---------------- PORTFOLIO SWIPER ---------------- */

.portfolio-swiper{
  width: 100%;
  max-width: 900px;
  margin: 0 auto 40px auto;
}

.portfolio-swiper .swiper-slide{
  display: flex;
  justify-content: center;
}

/* Keeps YouTube responsive */
.video-wrapper{
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 10px;
  overflow: hidden;
}

.video-wrapper iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

/* Swiper controls styling */

.swiper-button-next,
.swiper-button-prev{
  color: #30415e;
}
body > main > section.content > section.portfolio > div.p-wrapper > div.portfolio-swiper.swiper.swiper-initialized.swiper-horizontal.swiper-backface-hidden > div.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal{
width: 50%;
  display: block;
  position: relative;
  left: 0;
  right: 0;
  bottom: 20px;
  margin: 0 auto;
}

.swiper-pagination-bullet{
  background: #30415e;
  opacity: .4;
}

.swiper-pagination-bullet-active{
  opacity: 1;
}

