/*
Theme Name: IconaWeddings
Theme URI: 
Author: Wayne Goodman
Author URI: 
Description: A custom block theme for Icona Weddings
Requires at least: 6.9
Tested up to: 6.9
Requires PHP: 5.7
Version: 0.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: iconaweddings
Tags: 
*/


/*  move to theme.json  */

/* content width */
.wp-site-blocks > :not(.alignleft):not(.alignright):not(.alignfull) {
    /* max-width: 1080px; */
	max-width:1180px;
    margin-left: auto !important;
    margin-right: auto !important;
}

footer, 
.wp-block-template-part-footer {
    width: 100%;
    max-width: none !important;
    margin-left: 0;
    margin-right: 0;
    /* If it's still stuck inside a container: */
    grid-column: 1 / -1; 
}

html, body {margin:0 !important; padding:0 !important;    }
body {font-family:'ivyepic-variable', sans-serif; font-size:.98rem; font-weight:300;  font-weight:300; line-height:1.8;
 text-size-adjust: none;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
}


h1 {font-size: clamp(40px, 5vw, 54px) !important;}
h2 {font-size: clamp(30px, 5vw, 36px) !important;}
h3 { font-size: clamp(22px, 5vw, 24px) !important; }


* { box-sizing: border-box; }
.hero-mobile, .hero-desktop {max-width:100%; height:auto; }
.hero-mobile {
    display: none;
}

@media (max-width: 768px) and (orientation: portrait) {
    .hero-desktop { display: none; }
    .hero-mobile  { display: block; }
}


strong, b {font-variation-settings: "wght" 500}
.caps {text-transform:uppercase}

h1, h2, h3, h4, h5, h6 {font-family: "ivyora-display", serif;font-style: normal; }
h3, h4, h5, h6 {font-family: "ivyepic-variable", sans-serif;font-style: normal; }
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { color:var(--wp--preset--color--custom-dark-blue) !important;}
h4, h5, h6 {font-weight:400}

.main p, .main img, .main ul {z-index:1}

a:where(:not(.wp-element-button)) {font-family:inherit}
a[href^="tel:"] { text-decoration:none}

.wp-block-navigation ul {gap:0; margin: 2.75rem auto .5rem;}
.wp-block-navigation a {padding:0.125rem 2vw;}

.wp-block-separator {
  border: none;
  border-top: 1px solid var(--wp--preset--color--custom-gold);
  width: 80%;
  margin: 1.5rem auto;
}

:root :where(.wp-element-button, .wp-block-button__link)  {background:none;}
:root :where(.wp-element-button, .wp-block-button__link):hover  {background:rgba(255, 255, 255, 0.8) }

a.wp-block-button__link.has-white-color:hover {color:#333 !important}

body {
  text-size-adjust: none;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
  overflow-y: scroll;
}

/*
wp-block-group.alignfull,
.alignfull,
.wp-block-image.alignfull {
    width: 100vw;
    max-width: 100vw;
    margin-left  : calc( -100vw / 2 + 100% / 2 );
    margin-right : calc( -100vw / 2 + 100% / 2 );

}
*/

.has-global-padding > .alignfull {
  margin-right: calc(var(--wp--style--root--padding-right) * -1);
  margin-left: calc(var(--wp--style--root--padding-left) * -1);
  max-width: unset;
  width: unset;
}

.main {padding:200px 0  3rem;}
.has-hero-image .main {padding:0px 0px 3rem; }

/*
:root :where(.is-layout-flow) > * {
  margin-block-start: 0;
  margin-block-end: 0;
}

:where(.wp-site-blocks) > * {
    margin-block-start: 0 !important;
    margin-block-end: 0;
}
*/



/*
.wp-block-group.alignfull,
.alignfull {
    width: 100vw;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}
*/

  .hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;}

.is-style-eyebrow, .is-style-lowbrow {letter-spacing: .3em; text-transform:uppercase;}
.is-style-eyebrow { margin: 52px auto -4px; }
.is-style-lowbrow { margin: 32px auto; }
.three-venues .is-style-lowbrow { margin: 16px auto -6px!important; }
p.is-style-shortparagraph {max-width: 44rem; /* margin-left: auto; margin-right: auto; */}

p.has-text-align-center.is-style-shortparagraph, p.has-text-align-center.is-style-veryshortparagraph {margin-left:auto; margin-right:auto; text-align:center}

p.is-style-veryshortparagraph {max-width: 31rem;}

@media only screen and (min-width: 1920px) {
	p.is-style-shortparagraph {max-width: 46.5rem;}
}



.is-style-lettercasenormal { text-transform: none; letter-spacing:.01em}

header {position:absolute; z-index:11}

body.no-scroll { overflow: hidden; }


.wp-site-blocks { width: 100%; position: relative; margin: 0 0; }
.iconaBlue { color: #003461; }
.iconaGold { color: #ba9c59; }

/* to reset figure  */
.wp-block-image figure,
.your-specific-class figure {
  margin: 0;
  padding: 0;
}

.socialM { fill: #0b3673; width: 40px; height: 40px; }
.socialM:hover { fill: #9e8142; }
.socialNav { padding-top: 5vh; text-align: right !important; padding-right: 10%; }
.socialNav a { margin-right: 8px; }

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

.logo1 { max-width: 196px; padding: 1vh 0 0 1%; left: 7%; width: 36vw; position: fixed; z-index: 22; }

.sticky2.logo1 {
  width: 142px;
  top: 0;
  padding-top: 3px;
  -webkit-transition: all .4s ease-in-out;
  -moz-transition: all .4s ease-in-out;
  -o-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out;
}

@media only screen and (min-width: 640px) {
  .sticky2.logo1 { width: 198px; padding-top: 5px; }
  /*.navPage {
    background: linear-gradient(to right, rgba(255,255,255,1) 1%, rgba(248,245,237,1) 100%),
      url("/iconaweddings.com/wp-content/themes/iconaweddings/assets/images/flower.png") no-repeat bottom left;
    background-blend-mode: multiply;
  } */
  .logo1 { display: block; }
}

.navBox ul, .navBoxSm ul { list-style: none; text-align: right; }
.navBox li { border-bottom: 1px solid #e1d4b8; padding-right: 11%; }
.navBox li:last-child { border-bottom: none; }


@media only screen and (min-width: 840px) {
  .logo1 { padding: 7vh 0 0 2%; }
  .navBox li { padding-right: 11vw; }
  .socialNav { padding-right: 15%; }
  body input#burger ~ nav .sub-menu li { padding-right: 2vw; }
}

.menu-item-has-children > a:after {
  content: '';
  display: inline-block;
  margin-left: 10px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 0 7px 7px;
  border-color: transparent transparent transparent #999;
}

.sticky .logo1 { max-width: 60%; width: 280px; display: none; }

.menuBtnWhite { fill: #fff; }
.menuTypeX { opacity: 0; fill: #1f355d; }
.menuBtnType { opacity: 1; }

input#burger + label { top: 1.5rem; right: 4%; position: fixed; height: 64px; width: 64px; z-index: 5; }
.sticky2 input#burger + label, input.sticky #burger + label { top: 6px; }
input#burger + label span { position: absolute; width: 100%; height: 0.11em; top: 0; margin-top: -1px; left: 0; display: block; transition: 0.2s; }
input#burger:hover { cursor: pointer; }
body input#burger:checked + label span { opacity: 1; }
body input#burger:checked + label span .menuTypeX { opacity: 1; }
body input#burger:checked + label span .menuBtnType { opacity: 0; }

body input#burger ~ nav {
  position: fixed; top: 0px; bottom: 0px; left: -100%; width: 100%; height: 100vh;
  z-index: 3; transition: .5s; transition-delay: 0.2s; overflow-y: scroll;
}

body input#burger ~ nav > ul { text-align: center; position: relative; top: 35%; left: -100%; right: 20%; }

.blueLogo.hamburgerBG { opacity: 0; }
.blueLogo .hamburger { fill: #1f355d; }
.whiteLogo .hamburger { fill: #fff; }
.whiteLogo .sticky2 .blueLogo .hamburger { fill: #1f355d !important; }
.blueLogo input#burger + label:hover .hamburgerBG { opacity: 0; }
.blueLogo input#burger + label:hover .hamburger,
.blueLogo input#burger + label:hover .menuTypeX { fill: #c1a15c; }
.whiteLogo .blueLogo input#burger + label:hover .hamburgerBG { opacity: 0; }
.whiteLogo .blueLogo input#burger + label:hover .hamburger { fill: #c1a15c; }
.whiteLogo .sticky2 .blueLogo input#burger + label:hover .hamburgerBG { opacity: 0; }
.whiteLogo .sticky2 .blueLogo input#burger + label:hover .hamburger { fill: #c1a15c !important; }
.whiteLogo .blueLogo .sticky2.logo1 { fill: #003461; }

.whiteLogo .sticky2 .hamburger {fill: #1f355d !important; }
.whiteLogo .sticky2:hover .hamburger, .whiteLogo input#burger + label:hover .hamburger {fill: #c1a15c !important;}

.hide { display: none; }
.flower-art { position: absolute; bottom: 0; left: 0; z-index: 1; }
.flower-center { position: absolute; bottom: 0; left: 0; right:0; margin:auto; z-index: 1; width:100%}

@media only screen and (max-width: 1180px) {
.hide-flower-mobile {display:none !important}
}

body input#burger:checked ~ nav {
  height: 100vh; width: 100%; transition-delay: 0s; top: 0; contain: content; right: 0; left: 0;
}

@media screen and (orientation: landscape) and (max-height: 480px) {
  body input#burger:checked ~ nav { overflow-y: scroll; }
  .navBox li, .socialNav { margin-right: 6% !important; }
}


	.navPage {
  background-repeat: no-repeat;
  background-position: left bottom;
  top: 0; contain: content; right: 0; left: 0;
  background: linear-gradient(to right, rgba(255,255,255,1) 1%, rgba(248,245,237,1) 100%),
    url("/wp-content/themes/iconaweddings/assets/images/flower_m.png") no-repeat bottom left;
  background-blend-mode: multiply;
}

		@media only screen and (min-width: 940px) {
			.navPage { background: linear-gradient(to right, rgba(255,255,255,1) 1%, rgba(248,245,237,1) 100%),
    url("/wp-content/themes/iconaweddings/assets/images/flower.png") no-repeat bottom left;}
	}

body input#burger:checked ~ nav > .navBox > ul > li { opacity: .3; transition-delay: 0.5s; }
body input#burger ~ nav > .navBox li a { opacity: .5; transition-delay: 0.5s; }
body input#burger:checked ~ nav > .navBox li a { opacity: 1; transition-delay: 0.5s; }

.transition {
  -webkit-transition: all 1s ease-in-out;
  -moz-transition: all 1s ease-in-out;
  -o-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
}
.transitionY { transform: translateY(0); }

body input#burger:checked ~ .headerBar { opacity: 1; transition-delay: 0 !important; }
body input#burger:not(:checked) ~ .headerBar { opacity: 0; transition-delay: .1s; }

.headerBar1 { width: 100%; height: 112px; }

/* Merged .navBox rules */
.navBox {
  width: 100%;
  align-items: center;
  justify-content: center;
  font-family: 'ivyora-display', serif;
  font-weight: 100;
  font-style: normal;
  height: 100%;
  z-index: 1;
  display: flex;
  flex-direction: column;
} 

.leftNavCol { width: 90%; }
.iconaNavColumn { width: 90%; position: relative; }



.navContain { height: 100%; }


.navBox li a {
  font-size: clamp(1.3rem, 3.1vw, 42px);
  padding: 2vh 0;
  text-decoration: none;
  color: #0b3673;
  -webkit-marquee-increment: 0vw;
  display: block;
  text-transform: uppercase;
  letter-spacing: .04em;
  font-family: "ivyora-display", serif;
  font-weight: 200;
  font-style: normal;
}
.navBox li a:hover { color: #9e8142; }

.smallHeadding { font-size: .95rem; text-transform: uppercase; }
#burger { display: none; }
a.navBox { display: none !important; }


body input#burger:checked ~ .sticky2.logo1 {
  opacity: 1;
  -webkit-transition: all 1s ease-in-out;
  -moz-transition: all 1s ease-in-out;
  -o-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
}


.headerBar1.sticky { width: 100%; height: 80px; background: #fff; position: fixed; top:0}

@media only screen and (max-height: 480px) {
  body input#burger:checked ~ .logo1 { display: none; }
}

@media only screen and (min-width: 740px) {
  /* Removed first input#burger + label rule here as it was immediately overridden */
  input#burger + label { /*top: 5vh; */ top:2vh; right: 7%; position: fixed; height: 82px; width: 82px; z-index: 5; }
  input#burger.sticky + label {
    top: 20px !important;
    height: 74px;
    width: 74px;
    -webkit-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    -o-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
  }

  .navBox, .navBoxSm { display: flex; }
  .iconaNavColumn { width: 70%; margin-left: 30vw; }
  .logo1 { position: fixed; left: 4%; }
  .headerBar1.sticky { width: 100%; height: 112px; background: #fff; position: fixed; top:0; }
  a.navBox { display: block; }
}

@media only screen and (min-width: 840px) {
  input#burger + label { top: 7.8vh; }
}

@media only screen and (min-height: 840px) {
  .iconaNavColumn { padding-top: 14vh; }
}

body input#burger ~ nav .sub-menu {
  top: 22px; position: absolute; z-index: 999999; transition: 1.2s; transition-delay: 0.5s;
  right: 20% !important; left: inherit !important; background: rgba(248,245,237,1);
  width: 100% !important; display: none;
  box-shadow: 3px 3px 5px -2px rgba(0,0,0,0.33);
  -webkit-box-shadow: 3px 3px 5px -2px rgba(0,0,0,0.33);
  -moz-box-shadow: 3px 3px 5px -2px rgba(0,0,0,0.33);
}

/* Removed duplicate sub-menu font-size:20px !important — overridden by the rule below */
body input#burger ~ nav .sub-menu a { font-size: clamp(1.6rem, 4vw, 2.5rem); padding-left: 6%; }

body input#burger:checked ~ nav .sub-menu.active {
  right: 0%;
  transition: 1.2s;
  transition-delay: 0.5s;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

@media only screen and (max-height: 720px) {
  input#burger + label { top: 1.8vh; right: 6%; position: fixed; height: 72px; width: 72px; }
}




/* SVG classes */
.logoGold { fill: #ba9c59;}
.logoBlue2 { fill: #003461;}
body.whiteLogo.logoBlue {fill:#ffffff}
.whiteLogo .logoBlue{ fill: #ffffff; transition-delay: 150ms; transition: all; transition-duration: 1s; }
body.whiteLogo .logo1.sticky2 .logoBlue { fill: #003461; transition-delay: 150ms; transition: all; transition-duration: 1s; }
.whiteLogo.no-scroll .logoBlue { fill: #003461 !important; transition-delay: 150ms; transition: all; transition-duration: 1s; }
.logoGold { fill: #ba9c59;}

/* Homepage video option */
/*
.topHImage iframe {
  position: absolute; top: 50%; left: 50%; z-index: -100;
  min-width: 100%; min-height: 100%; width: auto; height: auto;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.whiteLogo .topHImage:before {
  content: ''; z-index: 2; position: absolute; top: 0; right: 0; bottom: 0; left: 0;
  background: linear-gradient(to bottom, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0.05) 37%, rgba(0,0,0,0) 100%);
}
*/



  ul#main-menu > li.has-children > a::after {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: rotate(45deg) translateY(-2px);
    transition: transform 0.25s ease;
    opacity: 0.6;
	  position: absolute;
top: 33px;
right: -16px;
  }
	@media only screen and (min-width: 940px) {
		ul#main-menu > li.has-children > a::after { top: 46px;}
	}

	@media only screen and (max-height: 600px) {
	 .navBox {padding-top:14% } 
	}
	
	
	
  ul#main-menu > li.has-children.open > a::after {
    transform: rotate(-135deg) translateY(-2px);
    opacity: 1;
  }

  ul#main-menu > li.has-children > ul {
    display: none;
    list-style: none;
    padding: 8px 0 8px 16px;
  }

	.navBox li.has-children > a  {padding-bottom:8px !important; margin-bottom:1.2rem !important }
	
	.navBox li.has-children.open  a {  margin-bottom:0 !important}

	.has-children  ul li { border-bottom:0; margin-bottom:11px; margin-right:0 !important; padding-right:4px !important }
	
	ul#main-menu > li.has-children > a {position:relative; }
	
	.has-children  ul {margin-top:-8px !important ; margin-bottom:6px !important }
	
	.has-children  ul  a { font-size: clamp(.95rem, 5vw, 1.1rem) !important; padding-top:3px; padding-bottom:3px; font-family: 'ivyepic-variable', sans-serif;font-variation-settings: "wght" 350;}
	

		h1.venueName {
position: absolute;
bottom: 12vh;
left: 0;
right: 0;
margin: 0 auto;
color: #fff;
text-align: center;
text-transform: uppercase;
z-index:1;
}		
		
	h1.venueName {
line-height: 1.15;
padding: 0 3%;
}


	
	body input#burger:checked ~ nav {
height: 100%;
margin-bottom: 0;
overflow:auto;
}

/* over-rides */

@media (min-width: 640px) {

.wp-block-cover, .wp-block-cover-image {min-height: 480px;}
}


.coverCustom .wp-block-button:hover { background:none; }

 .coverCustom  .wp-block-button__link:hover { background:rgba(0, 0, 0, 0.15); }


.wp-block-cover .wp-block-cover__image-background, .wp-block-cover video.wp-block-cover__video-background, .wp-block-cover-image .wp-block-cover__image-background, .wp-block-cover-image video.wp-block-cover__video-background {z-index:0}


.footerGroup h3.wp-block-heading  {margin-bottom:10px !important}


.wp-block-group.group3photos2 .containGallery2 {max-width:90% !important; margin-left:auto; margin-right:auto}
@media (max-width: 640px) {
	.wp-block-group.group3photos2 .containGallery2 {max-width:100% !important;	}
}

@media (max-width: 1440px) {
	.icon-two-col p.has-text-align-center.is-style-veryshortparagraph {max-width:23rem !important}
}

.venuespaces-contain {}


/*
.has-global-padding > .alignfull {
  margin-right: calc(var(--wp--style--root--padding-left) * -1);
  margin-left: calc(var(--wp--style--root--padding-right) * -1);
}
*/

.has-global-padding > .alignfull {
  margin-right: calc(var(--wp--style--root--padding-right) * -1);
  margin-left: calc(var(--wp--style--root--padding-left) * -1);
  max-width: unset;
  width: unset;
}


/* Force columns to stay side-by-side ABOVE your breakpoint */
@media (min-width: 1021px) {
  .wp-block-columns {
    flex-wrap: nowrap;
  }
}

/*
@media (min-width: 1800px) {
	.three-venues img {max-width:680px}
}
*/

.three-venues  .is-style-veryshortparagraph {margin-left:0 !important; } 

.three-venues .wp-block-columns.first-row {margin-top:32px !important}

@media (min-width: 1180px) {
.three-venues .wp-block-columns {  margin-block-start: 0 !important;
    margin-block-end: 0 !important; margin-bottom:26px !important; margin-top:-40px !important}
}

.three-venues_flower1, .three-venues_flower2 {position:absolute; /*width:11vw;*/ z-index:0}
.three-venues_flower1  { top:13%; left:0;}
.three-venues_flower2 { bottom:10%; right:0; text-align:right}

@media (max-width: 1020px) {
	.three-venues .middleContent {padding-left:0 !important}
	.three-venues .wp-block-columns {  margin-block-start: 0 !important;
    margin-block-end: 0 !important; margin-bottom:inherit !important; margin-top:inherit !important}
	
	.wp-block-columns.middleRow {flex-direction:column-reverse !important}
	.three-venues  .is-style-veryshortparagraph.has-text-align-left {margin:auto !important; text-align:center !important } 
		/* p.is-style-veryshortparagraph {margin:auto !important} */
	.venue2ndRowLeft {padding-left:0}
.centerAndReduce_m {text-align:center; padding-right: 0 !important; padding-left:0 !important;}
.centerAndReduce_m img {max-width:320px; }
	

	.three-venues .wp-block-column { text-align:center; padding-right: 0 !important; padding-left:0 !important;}
	 .three-venues  .is-style-veryshortparagraph {margin:0 auto !important; } 
	.three-venues .is-style-lowbrow { margin: 11px auto 1.1rem; }
	.three-venues .centerAndReduce_m  img  {max-width:440px; margin-bottom:.9rem}
}
@media (max-width: 500px) {
	.three-venues .centerAndReduce_m  img  {max-width:80%;}
}

/* Force columns to stack BELOW your breakpoint */
@media (max-width: 1020px) {
  .wp-block-columns {
    flex-wrap: wrap !important;
  }
  .wp-block-column {
    flex-basis: 100% !important;
    min-width: 100% !important;
  }
}
	@media (max-width: 1021px) {
	.hideformobile {display:none}
		.center-mobile {text-align:center !important; justify-content: center !important;}
	}


/* ===== MICROMODAL ===== */
.modal { display: none; }

.micromodal-slide[aria-hidden="false"] { display: block; }
.micromodal-slide[aria-hidden="true"] { display: none !important; }

.modal__overlay {
    position: fixed; top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,0.75);
    display: flex; justify-content: center; align-items: center;
    z-index: 999999;
}
.modal__container {
    position: relative;
    background: #fff;
    max-width: 80%;
    max-height: 90vh;
    overflow: visible;
    border-radius: 4px;
}
.modal__close {
    position: absolute; top: -16px; right: -16px;
    width: 36px; height: 36px;
    background: #fff; border: 1px solid #ccc; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    cursor: pointer; font-size: 20px; z-index: 10;
    line-height: 1;
}
.modal__image { width: 100%; display: block; max-height: 70vh; object-fit: cover; }

.micromodal-slide[aria-hidden="false"] .modal__overlay {
    animation: mmfadeIn .3s cubic-bezier(0,0,.2,1);
}
.micromodal-slide[aria-hidden="false"] .modal__container {
    animation: mmslideIn .3s cubic-bezier(0,0,.2,1);
}
@keyframes mmfadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes mmfadeOut { from { opacity: 1; } to { opacity: 0; } }
@keyframes mmslideIn { from { transform: translateY(15%); } to { transform: translateY(0); } }
@keyframes mmslideOut { from { transform: translateY(0); } to { transform: translateY(-10%); } }

body.no-scroll { overflow: hidden; }


.footerGroup h2.wp-block-heading  {font-size:2rem }
.footerGroup h3.wp-block-heading  {font-size:1.3rem }


.footerGroup .wp-block-button .wp-block-button__link {
    
    padding-top: .7rem;
    padding-right: 2.2rem;
    padding-bottom: .7rem;
    padding-left: 2.2rem;

}


.is-style-halfbackground {
  background-image: linear-gradient(
    to top,
    var(--wp--preset--color--custom-background-cream-color) 65%,
    transparent 65%
  );
}

.is-style-butttop {margin-top:-24px;}


/*Forms Styling*/

#tripleseat_embed_form {margin:22px auto; max-width:920px }
#tripleseat_embed_form tr, #tripleseat_embed_form table {width:100%}


#tripleseat_embed_form table tbody > tr:nth-child(odd) > td, table tbody > tr:nth-child(odd) > th {
    background-color: #fff !important;
}

#tripleseat_embed_form table td, table th {
    border-width: 0 !important;
}

#tripleseat_embed_form input, #tripleseat_embed_form select, #tripleseat_embed_form textarea {
    padding: /*12px !important;*/ 12px 12px 12px 33px !important;
    margin-bottom: 16px !important;
    border: 2px solid #ddd !important;
    border-radius: 3px !important;
    font-size: 15px;
    transition: border-color 0.3s ease;
	width:100%;
	font-weight:300;
	color:#333;
}

#tripleseat_embed_form .row_booking_events_needed label {line-height:1}
.row_booking_events_needed {padding-bottom:32px; border-bottom:1px solid #333; }

#tripleseat_embed_form input:focus {
    border-color: #007bff !important;
    outline: none !important;
}

#tripleseat_embed_form label {
    display: block;
    margin-bottom: 8px !important;

}

#tripleseat_embed_form table tbody tr:hover > td, table tbody tr:hover > th {
    background-color: hsl(0deg 0% 100% / 10.2%);
}

#tripleseat_embed_form .button {
   background-color: #003461;
    color: #fff !important;
    border: none !important;
    padding: 12px 20px !important;
    border-radius: 3px !important;
    font-size: 16px !important;
    cursor: pointer !important;
    transition: background-color 0.3s ease !important;
    width: 100%;
	display:block; 
}
#tripleseat_embed_form #lead_form_submit a {display:block; float:none !important; text-align:center; margin-top:32px  }

#tripleseat_embed_form .button:hover {
    background-color: #333 !important;
}

#tripleseat_embed_form .checkbox {
    margin-right: 6px;
	width:24px;
}


#dp_lead_booking_end_date, #dp_lead_booking_start_date {
    width: 100% !important;
    padding-left: 30px !important;
}

#lead_phone_number, #lead_phone_number_extension {
    width: 100% !important;
}

#tripleseat_embed_form td h2 {
	font-size: clamp(22px, 3vw, 28px) !important; text-align:center }

}

#tripleseat_embed_form input[type="checkbox"] {border:1px solid #333 !important; width:24px !important; }

#tripleseat_embed_form tbody {border-bottom:22px solid red}


#tripleseat_embed_form .g-recaptcha {
	border-top:1px solid #333;
	padding-top:32px;
    margin-top: 32px;
	width:100%;
}
.row_booking_dates_flexible label, #tripleseat_embed_form .row_booking_events_needed label {line-height:1.2;}

	@media (max-width: 520px) {
		#tripleseat_embed_form table td {display:block;}
}

/* contact pages over-rides and double button */

	.has-custom-background-cream-color-background-color .wp-block-buttons a:hover {background:#fff;}
	.wp-block-buttons a:hover {background:var(--wp--preset--color--custom-background-cream-color) !important;}
	.twoButtons .wp-block-button {min-width:280px;}
	.twoButtons .wp-block-button a { padding:22px 0 !important; line-height:1.55 !important}
	   @media only screen and (max-width: 640px) {
	.twoButtons .wp-block-buttons.is-content-justification-left {justify-content:center !important}
		   .twoButtons .wp-block-buttons.is-content-justification-right {justify-content:center !important}

	}
		   h1#tsLeadSuccessMessage { text-align:center !important; margin-top:32px; font-size: clamp(28px, 4.8vw, 35px) !important;}
		   .page-id-1019 p {text-align:center !important;}


.overflower {position:relative; z-index:1}



/* This forces the menu to hide if the user isn't actively interacting with it, 
   though it depends on your specific CSS structure */
@media (prefers-reduced-motion: no-preference) {
    #burger:checked {
        /* If the page was just loaded, we can try to detect if it was a back-button 
           event via a CSS animation trigger, but JS is much more reliable. */
    }
}

	
	/* venues page */

/*
.venuesPageColumns1.is-layout-flex {gap:0 !important}
	.venuesPageColumnsA,.venuesPageColumnsC {display:none}
	.venuesPageColumnsB {}
	.venuesPageColumnsB img {padding:0 !important; max-width:400px !important;margin:auto; display:block; margin:auto; }
@media (min-width: 1021px) {
.venuesPageColumns1.is-layout-flex {}
	.venuesPageColumnsA,.venuesPageColumnsC {display:block}
	.venuesPageColumnsB {max-width:40%;}
	
	.venuesPageColumnsB img { margin-left:0; max-width:90% !important }

}

*/




.wedding-grid.alignwide {
  display: flex;
  flex-direction: row; /* Ensures items sit side-by-side */
  flex-wrap: wrap;     /* Allows items to move to the next line */
  justify-content: center; 
  gap: 4%;             /* The horizontal and vertical space between cards */
  list-style: none;
  padding: 0;
  margin: 52px auto;
  width: 100%;
}

/* 2. The Items (The Cards) */
.wedding-grid  {
  position: relative;
  display: flex;
  flex-direction: column; /* This stays column so text is UNDER the image */
  
  /* DEFAULT / MOBILE (1 Column) */
  flex: 0 0 100%; 
  margin-bottom: 2.5rem; /* Space between rows on mobile */
	

}

/* TABLET (2 Columns) */
@media (min-width: 600px) {
  .wedding-grid li {
    /* (100% - 1 gap of 4%) / 2 */
    flex: 0 0 calc((100% - 4%) / 2);
  }
}

/* DESKTOP (3 Columns) */
@media (min-width: 1024px) {
  .wedding-grid li {
    /* (100% - 2 gaps of 4%) / 3 */
    flex: 0 0 calc((100% - 8%) / 3);
  }
}
.wedding-grid li a {text-decoration:none}

/* 3. Image Square Logic */
.wedding-grid .image-container {
  width: 100%;
  overflow: hidden;
}

.wedding-grid .image-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
	transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

/* 4. Text & Link Logic */
.wedding-grid .text-container {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  padding: 15px 0 30px;
}

.wedding-grid .text-container h2{ font-size: clamp(18px, 3vw, 22px) !important; margin:0 0; text-transform:none !important }
		.text-container h2 a:hover {text-decoration:underline !important}
.wedding-grid .meta-arrow {
  margin-top: auto; /* Keeps the arrow/read more aligned at the bottom */
}

.stretched-link a::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
}
		
		.no-wrap {
  white-space: nowrap;
}
.wedding-grid	li:hover .image-container img {
  transform: scale(1.05); /* Subtle zoom effect */
}	

.wp-block-query-pagination-previous, .wp-block-query-pagination-next {text-decoration:none; text-transform:uppercase; font-size:.9rem}
/* Target the pagination arrows */
.wp-block-query-pagination-previous::before {
    content: "";
    display: inline-block;
    width: 60px;
    height: 11px;
    background-color: currentColor;
    mask-image: url('assets/icons/arrow-left.svg');
    mask-repeat: no-repeat;
    margin-right: 11px;
}

.wp-block-query-pagination-next::after {
    content: "";
    display: inline-block;
    width: 60px;
    height: 11px;
    background-color: currentColor;
    mask-image: url('assets/icons/arrow-right.svg');
    mask-repeat: no-repeat;
    margin-left: 11px;
}

.wp-block-post-featured-image {margin-bottom:0}

.wedding-grid.blog-layout > :first-child {
    margin-block-start: 25px !important;
    margin-top: 0;
}

.topHImage.blogHome  H2, .topHImage.blogHome p:not(is-style-eyebrow) {text-transform:none }
		.topHImage.blogHome  H2 {margin-top:22px; font-size: clamp(32px, 4vw, 42px) !important;}
		p.is-style-eyebrow {text-transform:uppercase !important}
		.whiteHeadlines .topHImage h2 {color:#fff; } 
		
		.heroHeadings {padding:0 3%}
		
			p.is-style-eyebrow, .topHImage.blogHome p  { margin: 22px auto 8px; max-width:840px; }
		p.is-style-eyebrow {font-size:.85rem}
		
		.whiteHeadlines .topHImage picture:after { position:absolute; top:0; right:0; left:0; bottom:0;  content:'';
		background: linear-gradient(to top, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.06) 37%, rgba(0,0,0,0) 100%);
		
		} 
		
		.blogBtn {border:1px solid #c1a15c; background:none; margin:22px auto }
		.blogBtn a {color:#fff; padding:11px 22px; display:block !important; text-transform:uppercase; text-decoration:none; font-size:1rem;  }
		.blogNav a:hover {text-decoration: underline !important;}
		.blogHome .heroHeadings  {bottom:42px; }


.single-post .topHImage {margin-bottom:60px}
.blogContent p {font-weight:300 !important}
		
		  @media only screen and (min-width: 920px) {
			  
			  	
			  	.blogContent img:not(.topHImage img) {max-width:1060px; width:100%;  padding:1.5% 3%;}
				.blogContent p:not(footer p), .blogContent ul,  .blogContent h2:not(foooter h2), .blogContent h3, .blogContent .rwNav {  text-align:left !important; max-width:1080px; margin-auto; padding-left:3%; padding-right:12%}
			  
			  .blogContent .rwNav {text-align:center !important}
		}
	     @media only screen and (min-width: 1180px) {
			 
			 	.blogContent img:not(.topHImage img) {max-width:1060px; width:100%;  padding:1.5% 8%;}
			 
		}
