.catering-intro-text {
              font-size: 1.4rem;
              line-height: 1.7;
              color: #333;
              font-family: 'DM Serif Text', serif;
              font-style: italic;
              margin: 0 70px 0 70px;
            }
 @media (max-width: 768px) {           
              /* Mobile responsive for catering intro text */
              .catering-intro-text {
                margin: 0 0px 0 0px !important;
                
              }
			}

/* Animated orange underline for NEW Fall Menu */
.menu-underline {
	position: relative;
}
.menu-underline::after {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 100%;
	height: 3px;
	background: orange;
	opacity: 0;
	transform: scaleX(0);
	transition: opacity 0.5s, transform 0.7s cubic-bezier(.4,0,.2,1);
}
.menu-underline.underline-animate::after {
	opacity: 1;
	transform: scaleX(1);
}

.hero-banner-link {
	display:inline-block; 
	border-bottom:3px solid #65b1c7ff; 
	padding-bottom:2px; 
	color:inherit; 
	text-decoration:none;
}
.hero-banner-link:hover, .hero-banner-link:focus {
	border-bottom:3px solid #fff6F0; 
	color:inherit; 
}

.white {
	color: #fff !important;
}

/* Go Vegan highlight underline */
.go-vegan-highlight {
		position: relative;
		padding: 0 0.1em;
		color:#08100C;
		z-index: 2;
	}
.highlight {
	background-color: red;
	padding: .25em 0.1em;
	display: inline-block;
	
}
.go-vegan-highlight::after {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	bottom: -0.2em;
	height: 16px;
	background: url('/images/green-underline.png') center bottom/100% 100%;
	background-repeat: no-repeat;
	pointer-events: none;
	z-index: -1;
	clip-path: inset(0 100% 0 0);
	transition: clip-path 1.33s cubic-bezier(0.4, 0, 0.2, 1);
}
.go-vegan-highlight.revealed::after {
		clip-path: inset(0 0 0 0);
		transition-delay: 1s;
}


/* Go Vegan small highlight underline */
.go-vegan-small-highlight {
		position: relative;
		padding: 0 0.1em;
		color:#08100C;
		z-index: 2;
	}

.go-vegan-small-highlight::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: -0.25em; /*this control how high or low the line renders*/
	height: 16px;
	background: url('/images/green-underline.png') center bottom/100% 100%;
	background-repeat: no-repeat;
	pointer-events: none;
	z-index: -1;
	clip-path: inset(0 100% 0 0);
	transition: clip-path 1.33s cubic-bezier(0.4, 0, 0.2, 1);
}
.go-vegan-small-highlight.revealed::after {
		clip-path: inset(0 0 0 0);
		transition-delay: 1s;
}

/* ================ BEGIN Style of ================ */
/* ============= Secondary Page Titles ============ */
/* ================ and Intro Text =============== */

          /* Desktop */
    @media (min-width: 720px) {

            .secondary-page-intro-section {
            padding: 3rem 0 2.2rem 0;
            margin: 0 auto;
          }


            .secondary-page-h1-title {
              font-size: 2rem !important;
            }

            .secondary-page-intro-text p {
              font-size: 1.4rem; 
              line-height: 1.7; 
              color: #333; 
              font-family: 'DM Serif Text', serif; 
              font-style: italic; 
              margin: 0 70px 0 70px;
            }
   
          }


		/* Small Screens */

	@media (max-width: 719px) {

			.go-vegan-small-highlight::after {
			bottom: -0.15em; /*adjust for smaller screens*/
			height: 10px; /*adjust for smaller screens*/
			}

 			.secondary-page-intro-section {
              max-width: 420px;
            padding: 3rem 0 1.5rem 0;
            margin: 0 auto;
          	}

            .secondary-page-h1-title {
              font-size: 1.6rem !important;
            }

            .secondary-page-intro-text p {
              font-size: 95%; 
              line-height: 1.7; 
              color: #333; 
              font-family: 'DM Serif Text', serif; 
              font-style: italic; 
              margin: 0 10px 0 10px;
            }

}






#cv-store-status {
        position: fixed;
        top: -10px;
        left: 0;
        width: 100%;
        height: 53px;
        z-index: 20001;
        background-color: rgba(0, 0, 0, 0.0);
        display: flex;
        align-items: center;
        justify-content: center;
        color: white;
        font-family: Arial, sans-serif;
        font-size: 1.1rem;
        text-transform: uppercase;
        font-weight: bold;
        transition: all 0.3s ease;
        transform: translate3d(0, -100%, 0);
        visibility: hidden;
        opacity: 0;
        padding: 10px 0 0 0;
}

#cv-fullscreen-overlay {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.5);
        z-index: 20000;
        opacity: 1;
        visibility: visible;
        transition: all 0.3s ease;
        pointer-events: none;
}

#cv-store-status.bounce-out {
        animation: subtleInAndOut 3s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}

#cv-fullscreen-overlay.fade-overlay {
        animation: overlayFadeInOut 3s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}



/* Go Vegan pop-up animation */

    .go-vegan-pop {
      display: block;
      opacity: 0;
      transform: translateY(40px) scale(0.98);
      animation: goVeganPopUp 0.7s cubic-bezier(0.4, 0, 0.2, 1) 0.2s forwards;
    }
    @keyframes goVeganPopUp {
      0% {
        opacity: 0;
        transform: translateY(40px) scale(0.98);
      }
      60% {
        opacity: 1;
        transform: translateY(-8px) scale(1.03);
      }
      80% {
        opacity: 1;
        transform: translateY(2px) scale(0.99);
      }
      100% {
        opacity: 1;
        transform: translateY(0) scale(1);
      }
    }

.cta-btn {
	transition: background 0.18s, color 0.18s, box-shadow 0.18s;
}
.cta-btn:hover, .cta-btn:focus {
	background: #5e8c1a !important;
	color: #fff !important;
	box-shadow: 0 2px 12px rgba(126,161,55,0.18), 0 1px 6px rgba(0,0,0,0.10);
	text-decoration: none;
	filter: brightness(1.08);
}
.phone-icon {
	position: relative;
	z-index: 1;
}
.phone-icon:hover::after {
	content: 'Give Us A Call';
	position: absolute;
	left: 50%;
	top: 90%;
	transform: translateX(-50%) rotate(1deg);
	font-family: 'Reenie Beanie', cursive;
	font-size: 1.5rem;
	color: #f0e4db;
	background: none;
	white-space: nowrap;
	pointer-events: none;
	z-index: 10;
	/*text-shadow: 1px 1px 0 #fff6f0, 0 2px 8px #fff6f0;*/
	opacity: 1;
}


/* Slider loading bar */
.slider-loading-bar {
	position: absolute;
	top: 0px;
	left: 0;
	width: 100%;
	height: 4px !important;
	background: rgba(0,0,0,0.08);
	z-index: 10;
	overflow: hidden;
}
.slider-loading-bar-inner {
	height: 100% !important;
	width: 0%;
	background: linear-gradient(90deg, #7ea137 60%, #b6d97a 100%);
	transition: none;
	will-change: width;
}

/* Slider progress animation */
@keyframes sliderProgress {
	0% { width: 0%; }
	100% { width: 100%; }
}

.slider-banner {
	position: relative;
	width: 100vw;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	height: 350px;
	min-height: 360px;
	overflow: hidden;
}
/* Reenie Beanie handwritten font utility class */
.reenie-beanie {
	font-family: 'Reenie Beanie', cursive !important;
}
/* Mission statement paper style and handwritten look */
.mission-paper {
	 background-color: #fff6f0;
	 background-image: url("https://www.transparenttextures.com/patterns/45-degree-fabric-light.png");
	/* border-radius removed for sharp corners */
	box-shadow: 0 2px 45px 0 rgba(0,0,0,0.18);
	padding: 2.1rem 1.5rem 1.5rem 1.5rem;
	border: 1.5px solid #f0eae6cf;
	margin: -30px auto -25px auto;
	max-width: 600px;
	font-size: 0.85em;
	position: relative;
	border-bottom: none;
}
.mission-paper::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 35px;
	pointer-events: none;
	box-shadow: inset 0px -26px 26px -20px rgba(0,0,0,0.18);
	z-index: 2;
}
.mission-paper h2 {
	font-size: 1.785rem !important;
}
.mission-paper .mission-handwritten {
	font-size: 1.9rem !important;
}
.mission-paper .first-line {
	font-size: 2.03rem !important;
}
@media (max-width: 768px) {
  .mission-center {
    min-width: 100%;
  }
  .mission-paper {
    min-width: 80%;
    max-width: 80%;
  }
}

.first-line {
	font-size: 2.15rem;
}

.mission-handwritten {
	font-size: 2rem;
	color: #143a7b;
	line-height: 1.0;
	margin-bottom: 1.1rem;
	background: none;
	box-shadow: none;
}

.mission-section {
	margin: 50px 0 0 0;}

.about-feature-paragraph {
	font-size: 1.25rem;
	line-height: 1.5;
	color: #333;
	font-family: 'DM Serif Text', serif;
	font-style: italic;
}
.alt-written {
    font-size: 1.8rem;
    font-family: 'Reenie Beanie';
	color: #202331;
	text-align: center;
	left: 30px;
}

@media (max-width: 768px) {
   .smoothie-cta-section {
	   flex-direction: column !important;
	   align-items: stretch;
   }
   .smoothie-cta-image, .smoothie-cta-content {
	   width: 100%;
	   max-width: 100%;
   }
}


      @media (min-width: 768px) {
        .navbar-social-mobile { display: none !important; }
      }
      @media (max-width: 768px) {
        .navbar-social-mobile { display: flex !important; flex-direction: column; align-items: center; }
      }



/* Custom Polaroid Gallery Styles (no conflict) */
html { font-size: 18px; }
.custom-polaroid-container {
	min-height: 550px;
	position: relative;
}

.custom-polaroid {
	width: 280px;
	min-width: 280px;
	height: 330px;
	background: #fff;
	position: absolute;
	left: 40%;
	top: -5%;
	background: linear-gradient(120deg, #fff, #ddd 60%);
	box-shadow: 2px -2px 20px 0px rgba(0, 0, 0, 0.6),
		inset 4px 5px 10px 0 rgba(0, 0, 0, 0.1);
	font-family: 'Reenie Beanie', cursive;
}

.custom-photo {
	width: 400px;
	min-width: 400px;
	height: 300px;
	overflow: hidden;
	background: #fff;
	position: absolute;
	left: 40%;
	top: -5%;
	background: linear-gradient(120deg, #fff, #ddd 60%);
	box-shadow: 2px -2px 20px 0px rgba(0, 0, 0, 0.6),
		inset 4px 5px 10px 0 rgba(0, 0, 0, 0.1);
	font-family: 'Reenie Beanie', cursive;
}
.green{color: rgb(49, 65, 143);}


.custom-polaroid:nth-child(1) {
	left: calc(clamp(10%, 20vw, 25%) - 35px);
	transform: rotate(10deg);
}
.custom-polaroid:nth-child(2) {
	left: calc(clamp(35%, 40vw, 45%) + 0px);
	top: 20%;
	transform: rotate(-15deg);
}
.custom-polaroid:nth-child(3) {
	left: calc(clamp(60%, 60vw, 70%) + 35px);
	top: 10%;
	transform: rotate(5deg);
}
@media (min-width: 1400px) {
	.custom-polaroid:nth-child(1) { left: calc(15% - 35px); }
	.custom-polaroid:nth-child(2) { left: calc(45% + 0px); }
	.custom-polaroid:nth-child(3) { left: calc(75% + 35px); }
}
@media (min-width: 1400px) {
	.custom-polaroid:nth-child(1) { left: 15%; }
	.custom-polaroid:nth-child(2) { left: 45%; }
	.custom-polaroid:nth-child(3) { left: 75%; }
}
.custom-polaroid-img {
	position: absolute;
	top: 20px;
	left: 10px;
	width: 260px;
	height: 260px;
	background: #eee;
	overflow: hidden;
}
.custom-polaroid-img img {
	width: 100%;
	z-index: -1;
}
.custom-polaroid-gloss {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10;
}
.custom-polaroid p {
	position: absolute;
	bottom: 0px;
	padding: 10px 20px;
	letter-spacing: 0.024em;
	font-family: 'Reenie Beanie', cursive;
	font-size: 2em;
	background: none;
}

.about-feature-row {
	max-width: 1100px;
	margin: 2.5rem auto;
	padding: 0 2rem;
}
.about-feature-img {
	width: 450px;
	max-width: 450px;
}
@media (max-width: 900px) {
	.about-feature-img {
		width: 350px !important;
		max-width: 350px;
		margin: 0 1.5rem 1rem 0 !important;
	}
}
@media (max-width: 700px) {
	.about-feature-img {
		float: none !important;
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 0 1.5rem 0 !important;
		display: block;
	}
}

.polaroid-stack {
	width: 170px;
	height: 210px;
	max-width: 170px;
	max-height: 210px;
	position: absolute;
	left: 0;
	top: 0;
}
.polaroid-under {
	z-index: 1;
	transform: rotate(-65deg);
}
.polaroid-over {
	z-index: 2;
	transform: rotate(12.5deg);
}
/* Mission section corkboard background */
.mission-corkboard-bg {
	background-image: url('/images/corkboard-texture.jpg');
	background-repeat: repeat;
	background-size: 1200px;
	width: 100vw;
	box-shadow: 0 2px 16px rgba(0,0,0,0.08);
	position: relative;
}
.polaroid-board {
	position: relative;
	width: 370px;
	height: 420px;
}
.polaroid-frame {
	background: #fff;
	padding: 18px 18px 38px 18px;
	border-radius: 0.7rem;
	box-shadow: 0 6px 32px rgba(0,0,0,0.18), 0 1.5px 8px rgba(0,0,0,0.10);
	display: block;
	max-width: 170px;
	position: absolute;
	transition: box-shadow 0.2s;
}
.polaroid-photo {
	width: 100%;
	display: block;
	border-radius: 0.4rem;
	object-fit: cover;
	box-shadow: 0 2px 12px rgba(0,0,0,0.10);
}
/* Polaroid positions and tilt */
.polaroid-1 { left: 0; top: 18px; transform: rotate(-10deg); z-index: 1; }
.polaroid-2 { left: 120px; top: 0; transform: rotate(7deg); z-index: 2; }
.polaroid-3 { left: 60px; top: 120px; transform: rotate(-4deg); z-index: 3; }
.polaroid-4 { left: 180px; top: 110px; transform: rotate(12deg); z-index: 2; }
.polaroid-5 { left: 90px; top: 240px; transform: rotate(-7deg); z-index: 4; }
/* Polaroid frame for mission section photo */
.polaroid-frame {
	background: #fff;
	padding: 18px 18px 38px 18px;
	border-radius: 0.7rem;
	box-shadow: 0 6px 32px rgba(0,0,0,0.18), 0 1.5px 8px rgba(0,0,0,0.10);
	display: inline-block;
	transform: rotate(-6deg);
	max-width: 370px;
}
.polaroid-photo {
	width: 100%;
	display: block;
	border-radius: 0.4rem;
	object-fit: cover;
	box-shadow: 0 2px 12px rgba(0,0,0,0.10);
}
/* Unify font styles and line-heights for all inner footers */
.footer-linktree, .footer-middle, .footer-section.footer-right, .footer-section.footer-left-middle, .footer-section.footer-address {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 1.1rem;
	color: #f0e4db;
	line-height: 1.3;
}
.footer-linktree a, .footer-middle a, .footer-section.footer-right .footer-linktree a, .footer-section.footer-left-middle a, .footer-section.footer-address a {
	color: #c5d89f;
	text-decoration: none;
	font-size: 1.1rem;
	transition: color 0.2s;
}
.footer-linktree a:hover, .footer-middle a:hover, .footer-section.footer-right .footer-linktree a:hover, .footer-section.footer-left-middle a:hover, .footer-section.footer-address a:hover {
	color: #7fbf00;
	text-decoration: underline;
}
/* Match footer-right font and link styles to footer-middle */
.footer-section.footer-right, .footer-section.footer-right .footer-linktree {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 1.1rem;
	color: #3e3e3e;
}
.footer-section.footer-right .footer-linktree a {
	color: #7ea137;
	text-decoration: none;
	font-size: 1.1rem;
	transition: color 0.2s;
}
.footer-section.footer-right .footer-linktree a:hover {
	color: #7fbf00;
	text-decoration: underline;
}
@media (max-width: 640px) {
	.slider-arrow {
		display: none !important;
	}
}
/* Slider caption styles */
.slider-caption {
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	text-align: center;
	z-index: 3;
	pointer-events: none;
}
.slider-caption .slider-buttons, .slider-caption .slider-btn {
  pointer-events: auto;
}

.slider-slide {
  opacity: 0;
  transition: opacity 0.25s;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
}
.slider-slide.active {
  opacity: 1;
  z-index: 1;
  pointer-events: auto;
  position: relative;
}
/* Slider Banner Styles */
.slider-banner {
	position: relative;
	width: 100vw;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	height: 350px;
	min-height: 360px;
	overflow: hidden;}
/* Make slider images full windowscreen width */
.slider-banner img {
	width: 100vw;
	height: 350px;
	object-fit: cover;
	display: block;
}

.slider-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: #184d27;
	border: none;
	border-radius: 50%;
	width: 33.6px;
	height: 33.6px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.08);
	cursor: pointer;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.2s;
	padding: 0;
}
.slider-arrow svg {
	display: block;
	width: 19.6px;
	height: 19.6px;
}
.slider-arrow svg polyline {
	stroke: #7ea137;
}
.slider-arrow:hover {
	background: #184d27;
}
.slider-arrow:hover svg polyline {
	stroke: white;
}
.slider-arrow-left { left: 18px; }
.slider-arrow-right { right: 18px; }

.footer-middle .footer-linktree, .footer-address .footer-linktree a {
	line-height: 1.7rem;
}


.footer-upper .centered-1024 {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap: 2rem;
}

@media (max-width: 768px) {
	.footer-upper .centered-1024 {
		flex-direction: column;
		align-items: stretch;
		gap: 1.5rem;
	}
	.footer-section.footer-middle,
	.footer-section.footer-address {
		box-sizing: border-box;
	}
	.footer-upper .centered-1024 {
		display: flex;
		flex-wrap: wrap;
		flex-direction: row;
		justify-content: center;
		align-items: flex-start;
		gap: 0;
	}
}
@media (max-width: 768px) {
	.slider-arrow {
		display: none !important;
	}
}

.marquee-container {
            width: 100%;
            overflow: hidden;
        }

        .marquee-content-one {
            display: flex;
            flex-direction: row;
            animation: scroll 260s linear infinite; /* Adjust the duration for speed; longer = slower */
        }

		.marquee-content-two {
            display: flex;
            flex-direction: row;
            animation: scroll 240s linear infinite; /* Adjust the duration for speed; longer = slower */
        }

        @keyframes scroll {
            0% {
                transform: translateX(0);
            }
            100% {
                transform: translateX(-50%);
            }
        }
/* Slider caption styles */
.slider-caption {
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	text-align: center;
	z-index: 3;
	pointer-events: none;
}
.slider-caption .slider-buttons, .slider-caption .slider-btn {
  pointer-events: auto;
}
.slider-caption span {
		display: inline-block;
		font-size: 3.2rem;
		font-style: italic;
		font-family: 'DM Serif Text', serif;
		color: #fff;
		text-shadow: 0 2px 12px rgba(0,0,0,0.5);
		font-weight: 400;
		background: rgba(0,0,0,0.60);
		padding: 0.5em 1.5em;
		border-radius: 0.5em;
}
.slider-slide {
  opacity: 0;
  transition: opacity 0.25s;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
}
.slider-slide.active {
  opacity: 1;
  z-index: 1;
  pointer-events: auto;
  position: relative;
}
/* Slider Banner Styles */
.slider-banner {
	position: relative;
	width: 100vw;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	height: 350px;
	min-height: 360px;
	overflow: hidden;}
/* Make slider images full windowscreen width */
.slider-banner img {
	width: 100vw;
	height: 350px;
	object-fit: cover;
	display: block;
}

.slider-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: #184d27;
	border: none;
	border-radius: 50%;
	width: 33.6px;
	height: 33.6px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.08);
	cursor: pointer;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.2s;
	padding: 0;
}
.slider-arrow svg {
	display: block;
	width: 19.6px;
	height: 19.6px;
}
.slider-arrow svg polyline {
	stroke: #7ea137;
}
.slider-arrow:hover {
	background: #184d27;
}
.slider-arrow:hover svg polyline {
	stroke: white;
}
.slider-arrow-left { left: 18px; }
.slider-arrow-right { right: 18px; }
.footer-upper .centered-1024 {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap: 2rem;
}

@media (max-width: 768px) {
	.footer-upper .centered-1024 {
		flex-direction: column;
		align-items: stretch;
		gap: 1.5rem;
	}
	.footer-section.footer-middle,
	.footer-section.footer-address {
		box-sizing: border-box;
	}
	.footer-upper .centered-1024 {
		display: flex;
		flex-wrap: wrap;
		flex-direction: row;
		justify-content: center;
		align-items: flex-start;
		gap: 0;
	}
}
@media (max-width: 768px) {
	.footer-upper .centered-1024 {
		flex-direction: column;
		align-items: stretch;
		gap: 1.5rem;
	}
	.footer-section {
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
		text-align: center;
	}
	.footer-section.footer-right iframe {
		width: 100% !important;
		height: 250px !important;
		max-width: 100%;
		min-width: 0;
	}
	.mission-side-left,
	.mission-side-right {
		display: none !important;
	}
}
footer p {
	padding: 0.5rem;
}
/* Utility class to center content with max-width 1024px */
.centered-1024 {
	max-width: 1024px;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
}
html, body {
	height: 100%;
	overflow-x: hidden;
}
body {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	font-family: Arial, Helvetica, sans-serif;
	color: #3e3e3e;
	background: #fff6f0;
}
main {
	flex: 1 0 auto;
	background: #fff6f0;
}
footer {
	flex-shrink: 0;
}
footer a {color:#5ca082;}
footer {
			background: none;
			display: flex;
			flex-direction: column;
			justify-content: flex-end;
			
		}
		.footer-upper {
			padding: 30px 1.5rem  15px 1.5rem;
			flex: 1 1 auto;
			display: flex;
			align-items: center;
			justify-content: center;
			background: #283d37;
			
		}
		.footer-lower {
				background: #1b2127;
				padding: 11px 1.5rem;
				display: flex;
				justify-content: space-between;
				align-items: center;
				text-align: left;
				font-size: .65rem;
		}
		.footer-copyright {
				color: #666;
				margin: 0;
				text-align: left;
				flex: 1;
		}

.footer-madeby {
	color: #666;
	margin: 0;
	text-align: right;
	flex: 1;
}


/* Navbar Styles */
.navbar {
		width: 100%;
		background: #fff6f0;
		height: 64px;
		border-bottom: 1px solid #eee;
		position: relative;
		z-index: 1000;
		box-sizing: border-box;
}

.navbar-content {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		max-width: 1440px;
		margin: 0 auto;
		padding: 0 24px;
		height: 100%;
		box-sizing: border-box;
}
.navbar-logo {
	font-weight: bold;
	font-size: 1.5rem;
	color: #184d27;
}
.navbar-toggle {
		display: none;
		background: none;
		border: none;
		cursor: pointer;
		width: 40px;
		height: 40px;
		align-items: center;
		justify-content: center;
		position: relative;
		z-index: 1100;
}

.navbar-hamburger {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 26px;
	height: 3px;
	background: #184d27;
	border-radius: 2px;
	transition: all 0.3s cubic-bezier(.4,2,.6,1);
	transform: translate(-50%, -50%);
	display: block;
}
.navbar-hamburger::before,
.navbar-hamburger::after {
	content: '';
	display: block;
	width: 26px;
	height: 3px;
	background: #184d27;
	border-radius: 2px;
	position: absolute;
	left: 50%;
	transition: all 0.3s cubic-bezier(.4,2,.6,1);
}

.navbar-hamburger::before {
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -11px);
}
.navbar-hamburger::after {
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, 8px);
}
.navbar-toggle.open .navbar-hamburger {
		background: transparent;
}
.navbar-toggle.open .navbar-hamburger::before {
		transform: translate(-50%, -50%) rotate(45deg);
}
.navbar-toggle.open .navbar-hamburger::after {
		transform: translate(-50%, -50%) rotate(-45deg);
}
.navbar-menu {
	display: flex;
	align-items: center;
	gap: 32px;
}
.navbar-links {
	display: flex;
	gap: 24px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.navbar-links li a {
	text-decoration: none;
	color: #c5d89f;
	font-size: 1rem;
	font-weight: 500;
	transition: color 0.2s;
}
.navbar-links li a:hover {
	color: #184d27;
}

.navbar-menu .navbar-links li a {
	text-decoration: none;
	color: #fff6f0;
	font-size: 1rem;
	font-weight: 500;
	transition: color 0.2s;
}
.navbar-menu .navbar-links li a:hover {
	color: #184d27;
}

.navbar-buttons {
	display: flex;
	gap: 12px;
}
.nav-btn {
	display: inline-block;
	min-width: 110px;
	padding: 10px 22px;
	text-align: center;
	font-size: 1rem;
	font-weight: 600;
	border-radius: 6px;
	text-decoration: none;
	color: #fff;
	background: #399e3a;
	transition: background 0.2s;
	border: none;
}
.nav-btn-catering,
.nav-btn-ubereats {
	background: #7ea137 !important;
	color: #fff !important;
	border: none;
}
.nav-btn:hover {
	filter: brightness(0.95);
}

	  .navbar-links a {
    color: #184d27 !important;
    transition: color 0.2s;
  }
  .navbar-links a:hover {
    color: black !important;
  }

/* Hide <br> in .contact-title-questionmark for screens 480px and above */
.contact-title-questionmark br {
	display: none;
}


@media (max-width: 830px) {


				.navbar-menu {
					position: fixed;
					top: 0;
					left: 0;
					height: 100vh;
					width: 80vw;
					max-width: 320px;
					background: #283d37;
					flex-direction: column;
					align-items: center;
					justify-content: flex-start;
					transform: translateX(-100%);
					transition: none;
					box-shadow: 2px 0 8px rgba(0,0,0,0.04);
					z-index: 25000 !important;
					padding-top: 0;
					gap: 0;
					opacity: 0;
					pointer-events: none;
				}
				.navbar-menu.open {
					display: flex;
					transform: translateX(0);
					opacity: 1;
					pointer-events: auto;
					transition: transform 0.35s cubic-bezier(.4,1.2,.6,1), opacity 0.2s;
					z-index: 25000 !important;
				}
		.navbar-buttons {
			width: 100%;
			display: flex;
			flex-direction: column;
			gap: 10px;
			padding: 16px 24px 0px 24px;
			order: -1;
		}
		.nav-btn {
			width: 100%;
			max-width: 220px;
			margin-bottom: 2px;
			align-self: center;
		}
	/* Removed duplicate .navbar-menu.open block for clarity */
		.navbar-links {
			flex-direction: column;
			width: 100%;
			gap: 0;
			align-items: center;
		}
		.navbar-links li {
			width: 100%;
			text-align: center;
		}
		.navbar-links li a {
			display: block;
			padding: 16px 24px;
			border-bottom: 1px solid #273733;
			font-size: 1.1rem;
			text-align: center;
		}

		.navbar-menu .navbar-links li a {
	text-decoration: none;
	color: #fff6f0;
	font-size: 1rem;
	font-weight: 500;
	transition: color 0.2s;
}
.navbar-menu .navbar-links li a:hover {
	color: #184d27;
}
		.navbar-buttons {
			flex-direction: column;
			width: 100%;
			gap: 10px;
			padding: 16px 24px 0px 24px;
			align-items: center;
		}
		.nav-btn {
			width: 100%;
			max-width: 220px;
			margin-bottom: 2px;
			text-align: center;
		}
	.navbar-toggle {
		display: flex;
	}

	.navbar-social-mobile { display: none !important; }

	.navbar-social-mobile { display: flex !important; flex-direction: column; align-items: center; }

	.navbar-links a {
		color: #fff6f0 !important;
		font-size: 1.1rem !important;
		font-weight: 500 !important;
		transition: color 0.2s;
	}
	.navbar-links a:hover {
		color: #c5d89f !important;
	}
}


/* CSS Reset (boilerplate) */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
	position: relative;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* All links #7ea137 */
a,
a:visited {
	transition: color 0.2s;
	text-decoration: none;
}
a:hover,
a:focus {
	color: #26896c;
	text-decoration: none;
}


h1 {
	text-align: center; 
	font-family: 'DM Serif Text', serif; 
	font-size: 2.7rem; 
	color: #08100C; 
	font-weight: 400;
}

@media (max-width: 768px) {
	h1 {
		font-size: 2.0rem; /* 30% smaller */
		padding: 0 10px;
	}
}

.bakery-banner {
	width:100vw; 
	max-width:100%; 
	background: url('../images/bakery-banner.jpg') center center/cover no-repeat;
	min-height:240px; 
	object-fit:cover; 
	display:block; 
	margin:0; 
	padding:0;
	position:relative;
}

.white {
	color: #e4e4e4; 
}

/*begin index mission statement and special promo section*/

.index-mission-statement {
  width: 100%;
  margin: 4rem 0;
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
  background: url('/images/mission-statement-bg-image.jpg') no-repeat center center;
  background-size: cover;
  background-attachment: fixed;
  position: relative;
}

.index-mission-contents-container{
max-width: 1024px;
width: 100%;
margin: 0 auto;
padding: 0 1rem;
display: flex;
flex-wrap: wrap;
flex-direction: row;
gap: 0;
box-sizing: border-box;
background: none;
}

.index-mission-statement-frame {
		width: 100%;
		box-sizing: border-box;
		z-index: 1;
		display: flex;
		flex-direction: column;
		position: relative;
		overflow: hidden;
		margin: 6rem 0 0 0;
		border-radius: 12px;
}

@media (max-width: 916px) {
	.index-mission-statement-frame {
		border-radius: 0;
	}
}

.index-mission-text-container h2 {
	font-family: 'DM Serif Text', serif;
	text-align: center;
	margin: 2.5rem 0 1.5rem 0;
	font-size: 2.2rem;
	letter-spacing: .02em;
	color: #184d27;
	font-weight: 100 !important;
}

.index-mission-values h4 {
		font-size: 0.85rem;
		text-transform: uppercase;
		text-align: center;
		font-family: 'Roboto', sans-serif;
		color: rgba(255, 255, 255, 0.7);
		margin-bottom: 2rem;
		font-weight: 400 !important;
		letter-spacing: 0.18em;
}

.values-row {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    gap: 0;
    width: 80%;
    max-width: 350px;
    margin: 0 auto;
}

.index-mission-values {
	    width: 100%;
        padding: 3rem 2rem;
        box-sizing: border-box;
}

.value-integrity,
.value-humor,
.value-compassion {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		text-align: center;
		flex: 1;
		border-right: 1px solid rgba(255, 255, 255, 0.15);
		transition: all 0.3s ease;
		position: relative;
}

.value-compassion {
		border-right: none;
}

.value-icon {
		width: 30px;
		height: 30px;
		margin-bottom: 1.2rem;
		object-fit: contain;
		filter: brightness(0) invert(1);
		opacity: 0.9;
}

.value-text {
		font-family: 'DM Serif Text', serif;
		font-weight: 400;
		text-transform: capitalize;
		font-size: .8rem;
		color: #fff;
		letter-spacing: 0.02em;
}



.index-mission-text-container {
		padding: 0 4rem 2.5rem 4rem;
		z-index: 2;
		box-sizing: border-box;
		background-color: #fff9f5;
		background-image: url('https://www.transparenttextures.com/patterns/concrete-wall.png');
		max-width: 900px;
		margin: 0 auto;
		position: relative;
		border-radius: 0.5rem;
}


.index-mission-text-container .main-text {
		font-size: 1.34rem;
		line-height: 1.65;
		color: #2c2c2c;
		text-align: center;
		font-family: 'Roboto', sans-serif;
		font-weight: 400 !important;
		letter-spacing: 0.01em;
		margin-bottom: 1.5rem;
}

.index-mission-text-container .sub-text{
		font-style: italic; 
		font-size: 1.05rem; 
		line-height: 1.6; 
		color: #3e3e3e; 
		text-align: center; 
		font-family: 'DM Serif Text', serif; 
		font-weight: 400; 
		letter-spacing: 0.01em;
		padding: 1.5rem 0 0 0;
		border-top: 1px solid rgba(126, 161, 55, 0.2);
}

#monthly-specials-images {
	height: 600px;
}



.index-special-promo-container {
		display: none;
}

.index-mission-third-container {
		width: 100%;
		box-sizing: border-box;
		z-index: 1;
}

@media (max-width: 840px) {
		.index-mission-contents-container { 
		flex-direction: column;
		overflow-x: hidden;
        box-sizing: border-box;
        max-width: 100%;
		padding-top: 3rem;
		}
		.index-mission-statement-frame {
			order: 1;
			width: auto;
			margin: 0;

		}
		.index-special-promo-container {
			display: none;
		}
		.index-mission-third-container {
			order: 2;
			width: 100%;
			margin-top: 0rem;
		}

		.index-mission-values {
			max-width: 600px;
			margin: auto;
		}

		.values-row img {
		width: 40%;  /* Won't exceed 50% but can be smaller */
		max-width: 30px;
		height: auto;    /* Maintains aspect ratio */
		}
    



}

@media (max-width: 480px) {
	.index-mission-statement-frame {
		margin: 0;
		}
	.index-mission-text-container{
		padding: 1.6rem;
		padding-top: 2.4rem;
		}
	

	.index-mission-text-container .sub-text{
		font-size: .9rem;
		line-height: 1.4;
		letter-spacing: 0.01em;
		color: #222;
}

.values-row {
        display: flex;
        justify-content: space-evenly;
        align-items: center;
        width: 100%;
        box-sizing: border-box;

}
.values-row .value-text {
		font-size: .8rem;
	}

.values-row img {
	width: 40%;  /* Won't exceed 50% but can be smaller */
  	height: auto;    /* Maintains aspect ratio */
}

#monthly-specials-images {
	max-height: 400px !important;
}

#monthly-specials-images img {
	max-height: 400px !important;
}


}


/*end index mission statement & special promo section*/







/*Begin the Special Promo Section this includes the carousel styling*/



.index-special-promo-container h4 {
	text-align: right !important;
	font-family: 'DM Serif Text', serif;
	font-style: italic;
	font-size: 1.5rem;
	width: auto;
	padding: 0 2.5rem;
	letter-spacing: .05rem;
	color: #222;
	display: block;
	margin-bottom: 1.5rem;
	font-weight: 100 !important;
	box-sizing: border-box;
}

.special-promo-slide {
  text-align: center;
}

.special-promo-slide img {
  display: block;     /* prevents weird gaps */
  width: 100%;        /* fills the slide width */
  height: auto;       /* keeps the natural ratio */

}

.special-promo-slide video {
  width: 100%;
  height: auto;
  aspect-ratio: 23/28; /* or whatever ratio matches your images */
  object-fit: cover;
}

.special-promo-description {
  margin-top: 0.5rem;
  font-size: 0.9rem;
  color: #666;
  padding: 0 0.5rem;
}



@media (max-width: 480px) {
    .index-mission-contents-container {
        overflow-x: hidden;
        box-sizing: border-box;
        width: 100%;
    }
    
    .index-special-promo-container {
        width: 100%;
        box-sizing: border-box;
        overflow-x: hidden;
    }
    
    .specials-carousel {
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
}


/* Masonry Gallery Responsive Columns & Photo Hiding - Seamless from 1400px to 0px */
@media (min-width: 1400px) {
  .masonry-gallery { column-count: 5; }
  .masonry-gallery img { display: block; }
}
@media (min-width: 1100px) and (max-width: 1399px) {
  .masonry-gallery { column-count: 4; }
  .masonry-gallery img:nth-child(n+17) { display: none; }
}
@media (min-width: 800px) and (max-width: 1099px) {
  .masonry-gallery { column-count: 3; }
  .masonry-gallery img:nth-child(n+13) { display: none; }
}
@media (min-width: 500px) and (max-width: 799px) {
  .masonry-gallery { column-count: 2; }
  .masonry-gallery img:nth-child(n+9) { display: none; }
}
@media (max-width: 499px) {
  .masonry-gallery { column-count: 1; }
  .masonry-gallery img:nth-child(n+5) { display: none; }
}

/*End the Special Promo Section*/










/*anything following here was added for the 2nd version of the testimonial carousel*/

.swiper-slide img {
    width: 100%;
    height: auto;          /* let it scale naturally */
    aspect-ratio: 23/28;   /* enforces ratio */
    object-fit: cover;
    display: block;
}

.carousel-container {
    position: relative;
    max-width: 1440px;
    width: 100%;
    margin: 2rem auto;
    padding: 0;
    box-sizing: border-box;
}

.swiper {
    width: 100%;
    max-width: 1024px;
    margin: 0 auto;
}

.swiper-button-next,
.swiper-button-prev {
  color: #fff6f0 !important; /* or your desired color */
}

@media (min-width: 500px) {
    .carousel-container::before,
    .carousel-container::after {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        width: 20px;
        z-index: 2;
        pointer-events: none;
    }
    .carousel-container::before {
        left: 0;
        background: linear-gradient(to right, #fff6F0, transparent);
    }
    .carousel-container::after {
        right: 0;
        background: linear-gradient(to left, #fff6F0, transparent);
    }

    .swiper-slide {
        margin: 0;
        padding: 0;
    }

    .swiper-wrapper {
        padding: 0;
        box-sizing: border-box;
    }
}

/*begin styling for carousel buttons*/

.carousel-category-buttons {
  display: flex;
  justify-content: center;
  gap: 3rem;
  margin: 0 0 1.5rem 0;
}


.carousel-category-buttons button {
	font-size: .95rem;
	font-family: 'Roboto', Arial, sans-serif;
	text-transform: uppercase;
	background: none;
	color: #222;
	padding: 0;
	margin: 0;
	cursor: pointer;
	font-weight: 10;
	border: none;
	outline: none;
	box-shadow: none;
	letter-spacing: 0.12em;
	border-bottom: 2px solid transparent;
	transition: color 0.18s, font-weight 0.18s, border-bottom 0.18s;
}

.carousel-category-buttons button.active,
.carousel-category-buttons button:focus {
	color: #222;
	font-weight: 400;
	border-bottom: 2px solid #222;
	background: none;
}

.carousel-category-buttons button:hover:not(.active) {
	color: #7ea137;
}

@media (max-width: 550px) {
  .carousel-category-buttons {
    gap: 1.5rem; /* or your desired spacing */
  }
  .carousel-category-buttons button {
	font-size: .7rem;
  }
}
/*end v2 testimonial carousel*/





.testimonials-section {
  margin: 3rem 0 2rem 0;
  max-width: none;
  width: 100%;
  background: #fff;
  border-radius: 1.2rem;
  box-shadow: 0 2px 16px 0 rgba(0,0,0,0.07);
  padding: 2rem 0 2.5rem 0;
}
.testimonials-title {
	font-family: 'DM Serif Text', serif;
	text-align: center;
	margin: 0rem 0 1.5rem 0;
	font-size: 2.2rem;
	letter-spacing: .02em;
	color: #184d27;
	font-weight: 100 !important;
}
.testimonials-slider {
  position: relative;
  min-height: 130px;
}
.testimonial-slide {
  display: none;
  text-align: center;
  font-size: 1.38rem;
  color: #222;
  font-family: 'DM Serif Text', serif;
  opacity: 0;
  transition: opacity 1.2s;
  padding: 0 1rem;
  left: 0; right: 0; width: 100%;
}
.testimonial-slide.active {
  display: block;
  opacity: 1;
  z-index: 1;
  margin-bottom: 30px;
}
.testimonial-slide blockquote {
	font-style: italic;
	font-size: 1.05rem;
	margin: 0 0 0.7rem 0;
	line-height: 1.5;
	padding-left: 40px;
	padding-right: 80px;
}
.testimonial-slide cite {
  display: block;
  font-size: 1rem;
  color: #7a7a7a;
  margin-top: 0.2rem;
}
.testimonial-arrow {
  display: none;
}
.testimonial-stars {
  color: #FFD700;
  font-size: 1.25em;
  vertical-align: middle;
  margin-right: 0.3em;
}

@media (max-width: 550px) {

	.testimonials-title {
		font-size: 1.6rem !important;
		font-weight: 100 !important;
	}
}

@media (max-width: 600px) {
  .testimonials-section {
    padding: 1.2rem 0 1.5rem 0;
  }
  .staff-card {
	max-width: 360px;
  }
}
.slider-banner .slider-arrow-left,
.slider-banner .slider-arrow-right {
  display: none !important;
}
@media (max-width: 480px) {
  .slider-caption span {
    font-size: 2.56rem !important;
  }

  /* Insert a <br> between '?' and 'Contact' for mobile */
	.contact-title-questionmark br {
		display:block;
}

.footer-left-middle {
  min-width: 150px;
  line-height: 2.1;
}
.smoothie-cta-section {
	background-color: #d4c3b0;
	background-image: url("https://www.transparenttextures.com/patterns/asfalt-dark.png");
	background-size: 300px 300px;
	background-repeat: repeat;
}
.mission-center {
  min-width: 80%;
}
@media (max-width: 768px) {
  .mission-center {
    min-width: 100%;

}.mission-paper {
	  min-width: 75%;
	  max-width: 75%;
  }
} /*-- added backup here --*/
}
.slider-slide {
  opacity: 0;
  transition: opacity 2.00s;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
}
.slider-slide.active {
  opacity: 1;
  z-index: 1;
  pointer-events: auto;
  position: relative;
} 

.cta-button {
	display: inline-block;
	min-width: 160px;
	padding: 12px 26px;
	text-align: center;
	font-size: 1.1rem;
	font-weight: 600;
	border-radius: 6px;
	text-decoration: none;
	color: #fff;
	background: #399e3a;
	transition: background 0.2s;
	border: none;
}

/* Newsletter Signup Form Styles - Updated Design */
.newsletter-title {
  color: #2c2c2c;
  font-family: 'DM Serif Text', serif;
  font-size: 2rem;
  font-weight: 400;
  font-style: italic;
  margin: 0;
  letter-spacing: 0.02em;
  white-space: nowrap;
  background-color: tan;
}

.cv-newsletter-form {
  display: flex;
  align-items: center;
  gap: 0;
  position: relative;
  max-width: 400px;
}

.input-container {
  position: relative;
  flex: 1;
}

.cv-newsletter-input {
  width: 100%;
  min-width: 220px;
  padding: 16px 0px 16px 20px;
  border: 2px solid #2c2c2c;
  border-right: none;
  background: white;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.5px;
  color: #2c2c2c;
  outline: none;
  font-family: Arial, sans-serif;
}

.cv-newsletter-input::placeholder {
  color: #2c2c2c;
  font-weight: 500;
  letter-spacing: 0.5px;
}

.cv-newsletter-input:focus {
  border-color: #2c2c2c;
}

.cv-newsletter-submit {
  color: #2c2c2c;
  border: 2px solid #2c2c2c;
  border-left: none;
  padding: 14px 18px;
  cursor: pointer;
  transition: all 0.2s ease;
  background: #e9e0d3;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 60px;
  margin: 0 0 0 22px;
}

.cv-newsletter-submit:hover {
  background: #fff6f0;
  border-color: #1a1a1a;
}

.cv-newsletter-submit svg {
  width: 20px;
  height: 20px;
}

/* Responsive Design */
@media (max-width: 768px) {
  .cv-newsletter-flex-row {
    flex-direction: column !important;
    gap: 1.5rem !important;
    padding: 0 1rem;
  }
  
  .newsletter-title {
    font-size: 1.75rem;
    text-align: center;
  }
  
  .cv-newsletter-form {
    width: 100%;
    max-width: 350px;
  }
}

@media (max-width: 480px) {
  .newsletter-title {
    font-size: 1.5rem;
  }
  
  .cv-newsletter-input {
    padding: 14px 16px;
    font-size: 13px;
  }
  
  .cv-newsletter-submit {
    padding: 14px 16px;
    min-width: 55px;
  }
  
  .cv-newsletter-submit svg {
    width: 18px;
    height: 18px;
  }
}

/* Staff Photos */
.staff-photo {
  width: 250px;
  height: 250px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 1em;
  box-shadow: 0 1px 8px rgba(126,161,55,0.10);
  margin: 0 auto 1em auto;
}
.staff-photo-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.50s cubic-bezier(.4,0,.2,1), filter 0.50s cubic-bezier(.4,0,.2,1);
}
.staff-photo-img:hover {
  transform: scale(1.035);
  z-index: 2;
}
.staff-modal-content .staff-bio {
  display: block;
  -webkit-line-clamp: unset;
  line-clamp: unset;
  -webkit-box-orient: unset;
  overflow: visible;
  text-overflow: unset;
  max-height: none;
}
.staff-intro-text {
  font-size: 1.35rem;
  font-style: italic;
  color: #184d27;
  text-align: center;
  margin: 1.2em 2em 1.2em 2em;
  max-width: 700px;
}
.staff-intro-container.testimonials-section {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}
.read-more-link {
  font-size: 0.90em;
  text-decoration: underline;
  cursor: pointer;
  display: block;
  margin-top: 0.7em;
  text-align: right;
}
.corkboard-banner {
  position: relative;
  width: 100%;
  min-height: 420px;
  background: url('images/corkboard-texture.jpg') center center/cover no-repeat fixed;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-bottom: 2.5rem;
}



/* Page Buttons Container Styles */
.page-buttons-container {
  display: flex;
  flex-direction: row;
  margin-top: 2.5rem;
  margin-bottom: 5rem;
  justify-content: center;
  flex-wrap: wrap;
  gap: 2px;
}
.page-buttons-row1,
.page-buttons-row2 {
  display: flex;
  flex-direction: row;
  gap:2px;
}

/* Button Box Styles */
.button-box {
  width: 250px;
  overflow: hidden;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
  box-shadow: 0 2px 16px rgba(0,0,0,0.08);
}

.button-box-img-wrapper {
  width: 100%;
  display: block;
  transition: box-shadow 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  overflow: hidden;
}
.button-box-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  border-radius: 0;
}

.button-box:hover .button-box-img-wrapper {
	box-shadow: 0px 12px 32px rgba(13, 20, 31, 0.44);
}
.button-box:hover .button-box-img {
	transform: scale(1.07);
}
.button-box-text {
		position: absolute;
		top: 18px;
		left: 0;
		right: 0;
		margin: 0 auto;
		letter-spacing: 1.2px;
		font-family:'Roboto', sans-serif;
		font-weight:700; 
		font-size:1.4rem;
		text-shadow:0 2px 8px rgba(0,0,0,0.35); 
		color: #fff;
		text-align: center;
		transition: font-size 0.2s;
		z-index: 10;
}

		.button-box:hover .button-box-text {
			text-shadow: 0 2px 12px rgba(0, 0, 0, 0.45);
		}


@media (max-width: 1100px) {
  .button-box {
	max-width: 200px;
	font-size: .8rem;
  }

}

@media (max-width: 840px) {
  .button-box {
	max-width: 250px;
	font-size: .8rem;
  }

}
@media (max-width: 540px) {
  .button-box {
	max-width: 230px;
	font-size: .8rem;
  }

}


.service-times {
          justify-content: flex-end !important;
          margin: 0 15px 0 0;
		  position: relative !important;
          z-index: 900 !important;
        }


.button-box::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 58px;
	background: rgba(0,0,0,0.15);
	opacity: 0;
	transform: translateY(-30px);
	transition: opacity 0.33s cubic-bezier(0.4, 0, 0.2, 1), transform 0.33s cubic-bezier(0.4, 0, 0.2, 1);
	z-index: 3;
}
.button-box:hover::before {
	opacity: 1;
	transform: translateY(0);
}


@media (max-width: 480px) {

  .page-buttons-row1,
  .page-buttons-row2 {
    flex-direction: column;
    align-items: center;
  }

  .page-buttons-row1{
	margin-bottom: 0;
  }


  .button-box {
	min-width: 420px;
	max-height: 180px;
	font-size: 1.1rem;
  }

  .button-box-img-wrapper {
    max-height: 180px;
  }

  #weddings-button-box, #bakery-button-box {
	margin-right: 0px;
  }

}

/* Store Status Animation - Only Slide Out */
@keyframes subtleInAndOut {
  0% {
    transform: translate3d(0, 0, 0);
    visibility: visible;
    opacity: 1;
  }
  27% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  35% {
    transform: translate3d(0, 3px, 0);
    opacity: 1;
  }
  45% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  100% {
    transform: translate3d(0, -100%, 0);
    opacity: 0;
  }
}

/* Background Overlay Animation */
@keyframes overlayFadeInOut {
  0% {
    opacity: 1;
    visibility: visible;
  }
  27% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}

/*begin wedding page styles*/

.wedding-hero {
  width: 100vw;
  min-width: 100%;
  height: 200px;
  margin-top: 50px;
	background: url('../images/cleveland-vegan-mini-banner.jpg') center center/cover no-repeat;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.wedding-hero h2 {
  color: #fff;
  font-size: 2.1rem;
  font-family: 'DM Serif Text', serif;
  text-shadow: 0 2px 8px rgba(0,0,0,0.25);
  letter-spacing: 0.04em;
  text-align: center;
  margin: 0;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  font-weight: 400 !important;
}

/* Disable text and image selection only for slideshows/carousels */
.testimonials-carousel,
.specials-carousel,
.slider-banner,
.marquee-container,
.swiper,
.swiper-slide {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Disable blue highlight on selection for slideshows */
.testimonials-carousel ::selection,
.specials-carousel ::selection,
.slider-banner ::selection,
.marquee-container ::selection,
.swiper ::selection,
.swiper-slide ::selection {
  background: transparent;
}

/* Hide "Plant Based Since 2012" text on screens below 499px */
@media (max-width: 499px) {
  .plant-based-text {
    display: none !important;
  }
}

.testimonials-carousel ::-moz-selection,
.specials-carousel ::-moz-selection,
.slider-banner ::-moz-selection,
.marquee-container ::-moz-selection,
.swiper ::-moz-selection,
.swiper-slide ::-moz-selection {
  background: transparent;
}

/* Disable image dragging for slideshow images */
.testimonials-carousel img,
.specials-carousel img,
.slider-banner img,
.marquee-container img,
.swiper img,
.swiper-slide img {
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  pointer-events: none;
}