/* Page layout */
/* Smartphone stylesheet */
@import url(https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css);
@import url('https://fonts.googleapis.com/css?family=Roboto');
@import url('https://fonts.googleapis.com/css2?family=Libre+Franklin&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Libre+Franklin:wght@200&display=swap');
body
{

	color:#696969;
font-family: 'Libre Franklin';
	padding-left:0px;
	padding-right:0px;
	margin-left:0px;
	margin-right:0px;
	margin-top:0px;
	padding-top:0px;
	 -webkit-text-size-adjust: 100%; /* prevents iphone making text bigger when rotate handset */
background-color:white;
line-height: 25px;
}

.pageTop
{
	display:none;
}
.pageSides
{

}
.header
{
	background-color:#3f5447;
text-align:center;
}



.adminpage .socialLinks, .adminpage #boxes, .adminpage #telephone, .adminpage #location { display:none;}

.header {

height: 43vw;
}

.socialLinks 
{ 
margin: 0px auto;
    position: relative;
top: 33vw;
    height: 0px;
    /* left: 145px; */
    text-align: center;
    /* z-index: 20; */
}
.socialLinks.footer { margin:5px 0 0 0; position:static; top:0px; left:0;}
.socialLinks .fa {  color:#fff; margin:0 5px 0 0;}
.socialLinks .social 
{ 
    color: #77787b;
    display: inline-block;
    padding: 8px 0 8px 6px;
    text-align: center;
    width: 30px;
    font-size: 20px;
    margin: 0 2px 10px 0;
    border-radius: 10px 10px;
}
.socialLinks .social .fa { margin:0 auto;}
.socialLinks .social:hover .fa { color:#77787b;}
.socialLinks.footer .social .fa { color:#77787b;}
.socialLinks.footer .social:hover .fa { color:#77787b;}

#telephone 
{ 
    position: absolute;
top: 35vw;
    left: 13px;
    color: #646464;
    font-size: 11pt;
    /* font-weight: bold; */
    z-index: 20;
}
#location 
{ 
position: absolute;
top: 35vw;
    right: 14px;
    color: #646464;
    font-size: 11pt;
    text-align: right;
    z-index: 20;
}
#telephone .fa,#location .fa { margin-right:3px; color:#646464;}
#telephone a{color:#646464; text-decoration: none;}

/* HOME SLIDES */

.animationPanelHomepage
{
display:none;
}
.animationItem {
    visibility: hidden;
    position: absolute;
    width: 100% !important;
height: auto !important;
}
/*IMPORTANT: Add .animationPanelHomepage {display: unset !important;} to HOMEPAGE SMARTPHONE HTML*/

.homeSlides p
{ 
padding: 0px !important;
}

.homeSlides img
{ 
    height: auto;
    position: relative;
    right: 0px;
width: 100% !important;
height: 100% !important;
}

.homeSlides a .text 
{     
    width: 79% !important;
    /*font-family: 'Cantata One', serif;*/
    position: absolute;
    /* bottom: 84px; */
    left: 11%;
    /* margin-left: 0px; */
    background-color: rgb(134, 187, 163);
    color: #fff;
    padding: 18px 0px;
    text-align: center;
    text-transform: uppercase;
    /* letter-spacing: 2px; */
    font-size: 12pt !important;
    border: solid 2px #fff;
    margin: 0px auto;
    margin-top: 15%;
    line-height: 14px;
}

.homeSlides a .text:hover
{
background-color: #000;

}

p
{
	padding: 0px 5px !important;
}


.footerText .mobileButton {
    background-color: #c1c1c1 !important;
}

.footerSocialLinks .socialLinksLarge {
    padding-top: 5px;
    padding-left: 5px;
    padding-right: 5px;
display:none;
}

.homeBanner {
    height: 170px;
    background-image: url(../Images/homeBanner.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.homeTitle {
    margin-top: 0px;
    padding-top: 0px;
font-size: 7.6vw;
    color: #fff;
    font-weight: 200;
    font-family: 'Libre Franklin', sans-serif;
    letter-spacing: 2px;
    position: relative;
    bottom: 114px;
    font-weight: 200 !important;
    width: 80%;
    margin: 0px auto;
}

.homeTitle a {
    color: #fff;
    padding: 20px;
    border-top: 2px solid #fff;
    border-bottom: 2px solid #fff;
    display: block;
    width: 80%;
    margin: 0px auto;
    text-align: center;
    text-decoration: none;
}

.homeTitle a:hover {
    background-color: rgb(70 76 73 / 58%);
    border: 2px solid #fff;
}

.aboutContainer {
    width: 100%;
    display: inline-block;
margin-top: -50px;
}

.boxLeft {
    width: 100%;

padding: 5px 0px 30px 0px;
}


.boxRight {
    width: 100%;

padding: 20px 0px 30px 0px;
}

.homepageBottomLine {
    width: 50%;
}
.homepageBottomLine p {
    text-align:center;
}

.linkAnchorHomepage {
    background: #636f65;
    color: #fff;
    font-family: "Merriweather Sans",sans-serif;
    font-size: 14px;
    padding: 11px 35px;

    text-transform: uppercase;
    text-decoration: none;


}

.linkAnchorHomepage:hover {
    background: #000!important;
    color: #fff;
    transition: 0.5s;
}
.linkAnchor
{
    background: #636f65;
    color: #fff;
    font-family: "Merriweather Sans",sans-serif;
    font-size: 14px;
    padding: 11px 35px;
    text-transform: uppercase;
    text-decoration: none;
    position: relative;
    top: 17px;
}

.linkAnchor:hover
{
    background: #000!important;
    color: #fff;
    transition: 0.5s;
}
.sympathyContent
{
    width: 100% !important;
    height: auto !important;
    padding: 0px !important;
padding-bottom: 40px !important;
}

.sympathyContent p
{
text-align: center !important;
}

.pageTitle
{
text-align: center;
    /* position: relative;*/
 /*top: unset !important;*/
    /* bottom: 84px;*/
    color: #3f5447;
font-size: 7vw;
padding-top:20px;
}
.aboutBanner
{
height: 141px;
background-image:url(/Websites/1199/Images/upload/image/about-kohana01.jpg);
background-position: 50% 40%; /* Center the image */
  background-repeat: no-repeat; /* Do not repeat the image */
  background-size: cover;
}

.eventsBanner
{
height: 141px;
background-image:url(/Websites/1199/Images/upload/image/eventsBanner.jpg?ver=7524);
background-position: center; /* Center the image */
  background-repeat: no-repeat; /* Do not repeat the image */
  background-size: cover;
}
.shopBanner
{
height: 141px;
background-image:url(../Images/shopBanner.jpg);
background-position: top; /* Center the image */
  background-repeat: no-repeat; /* Do not repeat the image */
  background-size: cover;
}
.weddingBanner
{
height: 141px;
background-image:url(/Websites/1199/Images/upload/image/weddingBannerFinal.jpg?ver=6944);
background-position: center; /* Center the image */
  background-repeat: no-repeat; /* Do not repeat the image */
  background-size: cover;
}
.sympathyBanner
{
height: 141px;
background-image:url(/Websites/1199/Images/upload/image/sympathyBannerNEW.jpg?ver=945);
background-position: center; /* Center the image */
  background-repeat: no-repeat; /* Do not repeat the image */
  background-size: cover;
}
.workshopBanner
{
height: 141px;
    background-image: url(../Images/workshopBanner.jpg);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;

}

.galleryBanner
{
height: 141px;
background-image:url(/Websites/1199/Images/upload/image/galleryBannerNEW.jpg?ver=9539);
background-position: top; /* Center the image */
  background-repeat: no-repeat; /* Do not repeat the image */
  background-size: cover;
}

.contactBanner
{
height: 141px;
background-image:url(../Images/contactBanner.jpg);
background-position: center; /* Center the image */
  background-repeat: no-repeat; /* Do not repeat the image */
  background-size: cover;
}

.deliveryBanner
{
height: 141px;
background-image:url(../Images/contactBanner.jpg);
background-position: center; /* Center the image */
  background-repeat: no-repeat; /* Do not repeat the image */
  background-size: cover;
}

.weddingBannerBespoke
{
height: 141px;
background-image:url(/Websites/1199/Images/upload/image/bespokewedding.jpg);
background-position: center; /* Center the image */
  background-repeat: no-repeat; /* Do not repeat the image */
  background-size: cover;
}

.weddingBannerPackage
{
height: 141px;
background-image:url(/Websites/1199/Images/upload/image/weddingPackage.jpg);
background-position: center; /* Center the image */
  background-repeat: no-repeat; /* Do not repeat the image */
  background-size: cover;
}



.weddingTable
{
Width: 100%;
Height: 350px;
}

.weddingTableTextLeft
{
float: left;

margin-right: 20px;
text-align: right;
}

.weddingTableTextRight
{
float: left;


}


.page
{
	
background-color: white;
        max-width: 600px;
        width: 95%;
        margin: 0px auto;
}

.column1of1
{
	padding-left:5px;
	padding-right:5px;
}

.bannerRight
{
	float:right;
	text-align:right;
	padding-right:10px;
}


.clearBoth
{
	clear:both;
}
.clearLeft
{
	clear:left;
}
.pageBottom
{

	height: 20px;
	clear: both;
	background-color:white; /* Same as body */

}
#google_translate_element
{    
position: absolute;
    top: 0px;
}

.mobileButton
{
	background-image: url(../../_global/Images/smartphoneButton.png);
	background-repeat: no-repeat;
	background-position: right;
	background-color:#8A8A8A;
	margin-bottom: 5px;
	margin-top: 5px;
	color: Black;
	border-bottom:#353535 1px solid;
	border-top: #E9E9E9 1px solid;
}

.mobileButton a
{
	display: block;
	height:30px;
	padding-top:10px;
	padding-left:10px;
color: white !important;
	padding-right:25px;
	text-decoration:none;
}
.mobileButton a:visited
{
	color:black;
}
.mobileButtonHighlight
{
	background-image: url(../../_global/Images/smartphoneButtonHighlight.png);
	background-repeat: no-repeat;
	background-position: right;
	background-color:#007900;
	margin-bottom: 5px;
	margin-top: 5px;
	color: white;
	border-bottom:#353535 1px solid;
	border-top: #E9E9E9 1px solid;
}

.mobileButtonHighlight a
{
	display: block;
	height:30px;
	padding-top:10px;
	padding-left:10px;
	color:white;
	padding-right:25px;
	text-decoration:none;
}
.mobileButtonHighlight a:visited
{
	color:white;
}

.dropDown
{
	font-size:100%;
}




/* Mobile Nav Bar */
.navBarSmartphoneDropMenu {
    margin-bottom: 10px;
}
.navBar
{
    width: 100%;
    /* background-image: url(../Images/smartphoneMenuBack.png); */
    background-repeat: repeat-x;
    height: 38px;
    padding-top: 4px;
    margin-bottom: 0px;
    background-color: #fff;
    /* border-top: 1px solid #000; */
    /* border-bottom: 1px solid #000; */
    text-transform: uppercase;
}
.navBarHome
{
	float:left;
	width:33%;
	padding-top:10px;
	padding-left:5px;
}
.navBarHome a
{
	width:100%;
	height:30px;
	color:#77787b;
	padding-top:10px;
	padding-bottom:10px;
	text-decoration:none;

}
.navBarHome a:visited
{
	color:#77787b;
}
.navBarBasket
{
	float:left;
	width:33%;
	padding-top:10px;
	color:#77787b;
}
.navBarBasket a
{
	color:#77787b;
	text-decoration:none;
}
.navBarBasket a:visited
{
	color:#77787b;
}
.navBarCall
{
	padding-top:10px;
	text-align:right;
	padding-right:5px;
	color:#77787b;
}
.navBarCall a
{
	width:100%;
	height:30px;
	color:#77787b;
	padding-top:10px;
	padding-bottom:10px;
	text-decoration:none;
}
.navBarCall a:visited
{
	color:#77787b;
}




/* Shop Product Page */
.products a
{
	text-decoration:none;
}

.productSummary
{
	width: 100%;
	background-image: url(../../_global/Images/smartphoneProductSumaryBack.png);
	background-repeat: repeat-x;
	background-position:right;
	height: 82px;

}
.productSummaryFeatured
{
	width:100%;
	background-image: url(../../_global/Images/smartphoneProductSumaryBack.png);
	background-repeat:repeat-x;
	background-position:right;
	height: 82px;

}
.productSummaryImage
{
	margin-top:1px;
	float:left;
	margin-right:10px;
	padding-left:0px;
}

.productSummary a
{
	display: block;
}
.productSummary a:visited
{

}
.productSummaryName
{
	padding-top:10px;
	color:black;
	overflow:hidden;
	height:40px;
	line-height:20px;
	margin-right:0px;
	padding-right:20px;
}
.productSummaryName a
{
	padding-top:20px;
}

.productSummaryPrice
{
	padding-top:5px;
	color:#404040;
}

.productSummaryButtons
{
	float:right;
	height:81px;
}
.productSummaryMore
{
}

/* General Style */
a
{
	text-decoration:underline;
	color:black;
}
a:visited
{
	text-decoration:none;

}
.linkButton
{
	text-decoration:underline;
}

p
{
	padding-top:0px;
	margin-top:0px;
}
h1
{
	        margin-top: 0px;
        padding-top: 0px;
        font-size: 20pt;
        color: #696969;
        font-weight: 200;
        font-family: 'Libre Franklin', sans-serif;
        letter-spacing: 2px;
        text-align: center;
        line-height: 1.2em;
}
h2
{
	margin-top:0px;
	padding-top:0px;
	font-size:19pt;
	color:#696969;
font-weight:200;
text-align: center;
letter-spacing:2px;
}
h3
{
	margin-top:0px;
	padding-top:5px;
	padding-bottom:0px;
	margin-bottom:0px;
	color:#000;
	font-size:100%;

}

img
{
	border-top-style: none;
	border-right-style: none;
	border-left-style: none;
	border-bottom-style: none;
}
hr
{
	color:Green;
}
.faint
{
	color:gray;
}
.footerText
{
    background-color: #636f65;
    margin-top: 10px;
    color: #9e9e9e;
    padding-top: 10px;
    padding-left: 5px;
    padding-right: 5px;
    padding-bottom: 20px;
    /* border-top: #000 1px solid; */

}
.footerText a
{
	text-decoration:none;
    color: #9e9e9e;
}
.floristWindowLogo
{
	float:right;
	height:56px;
	padding-bottom:5px;
}


.floatRight
{
	float:right;
}
.floatLeft
{
	float:left;
}

.errorMessage
{
	background-color:#FFFF40;
	display:block;
	margin-top:10px;
	margin-bottom:10px;
	padding-top:5px;
	padding-bottom:5px;
	padding-left:10px;
	padding-right:10px;
	font-weight:bold;
}
.confirmationMessage
{
	background-color:#99E791;
	display:block;
	margin-top:10px;
	margin-bottom:10px;
	padding-top:5px;
	padding-bottom:5px;
	padding-left:10px;
	padding-right:10px;
	font-weight:bold;
}


/* Top Menu */

.mobileMenuHeader
{
	display:block;
	padding-top:10px;
	color:black;
	font-weight:bold;
	padding-bottom:5px;
	padding-left:10px;
	border-bottom: black 1px solid;
}

.menu
{
	width:100%;
text-align:left;
}
.menuDividers
{
    display:none;
}


.menu ul
{
	list-style-type: none;
	margin: 0;
	padding: 0;
	z-index:10;
}
.menu ul li
{
    	width:100%;
	background-image: url(../../_global/Images/smartphoneArrow.png);
	background-repeat: no-repeat;
	background-position: right;
	margin-bottom: 0px;
	margin-top: 0px;
	color: Black;
	border-bottom: black 1px solid;
}
.menu ul li a
{
	padding-top:10px;
	display:block;
	padding-left: 10px;
	color:black;
	text-decoration:none;
	height:30px;
}
.menu ul li a:hover
{
    text-decoration:underline;
}
.menu ul li a:visited
{
	color:black;
	text-decoration:none;
}
.menuSelected
{
	color: black;
	text-decoration:none;
}
.menuDisplayFull
{
	display:block;
	padding-top:5px;
	padding-bottom:15px;
	padding-left:10px;
}





/* Product Menu */

.productMenuTitle
{
	padding-top:10px;
	color:Black;
	font-weight:bold;
	padding-bottom:5px;
	padding-left:10px;
}
.productMenu
{

}
.productMenuTopSection
{
	display:none;
}
.productMenuSearchTitle
{
	display:none;
}
.productMenuSearchBox
{
	display:none;
}
.productMenuSearchButton
{
	display:none;
}
.productMenuSearchDropDown
{
	display:none;

}
.productMenu ul
{
	list-style-type: none;
	width:100%;
	padding-left: 0px;
	margin-left:0px;
	padding-top:0px;
	margin-top:0px;
	padding-bottom:0px;
	margin-bottom:0px;
}

.productMenuCategory
{
	display:block;
	color:black;
	height: 22px;
	font-weight: bold;
	padding-top: 20px;
	margin-left:0px;
	padding-left:10px;
	border-bottom:#333 1px solid;

}
.productMenuSubCategory
{
	width:100%;
	
}

.productMenuSubCategory a
{
	display:block;
	color:black;
	text-decoration:none;
	height:30px;
	padding-left: 10px;
	padding-top:10px;
	background-image: url(../../_global/Images/smartphoneArrow.png);
	background-repeat: no-repeat;
	background-position: right;
	border-bottom: #333 1px solid;
}
.productMenuSubCategory a:hover
{
	text-decoration:none;

}
.productMenuBottom
{
	display:none;
}




/* Product Details Page */

.productDetails
{
}
.productDetailsCol1
{
}
.productDetails h1
{
}

.productDetailsImageWrapper
{
	
}
.productDetailsImage
{
		width:180px;

}

.productDetailsCol2
{
	margin-left:0px;

}

.productDetailsFeatures
{
}
.productDetailsPrices
{
	color:#666666;
}

.productDetailsBuy
{
	margin-top:20px;
}
.productDetailsDescription
{
	clear:left;
}
.productDetailsModifierList
{
	font-size:large;
}
.productDetailsBack
{
	padding-top:15px;
	text-decoration:underline;
}
.productDetailsNote
{
	clear:right;
	margin-top:20px;
}
.productDetailsNote a
{
	color:Gray;
}
.productDetailsProductModifiersTable
{
}
.productDetailsProductModifiersTable td
{
	padding-bottom:10px;
}

.productDetailsLinkedProducts
{
	
}
.productDetailsLinkedProducts h1
{
}

/* checkout page */





/* Checkout Billing */
.checkoutHeader
{
	padding-left:10px;
	padding-top:5px;
	padding-bottom:5px;
	background-color:#E6E4E4;
	color:Black;
}
.checkoutPrompt
{
	width:180px;
	float:left;
	text-align:right;
	padding-right:5px;
}
.checkoutTextBox
{
	width:200px;
}
.checkoutPaymentDropDown
{
		width:171px;
}
.checkoutPaymentTextBox
{
	width:167px;
}
.checkoutPaymentShortTextBox
{
	width:77px;

}
.checkoutPaymentSecurityCodeHelp
{
	margin-left:275px;
}
.checkoutInset
{
	margin-left:180px;
}


/* Contact Form */

.contactFormPrompt
{

}
.contactFormField
{
	width:200px;
}
.contactFormMessageBox
{
	width:200px;
}
.contactFormButton
{
	
}




/* Site Map Page */
.siteMap
{
}
.siteMapPages
{
}

.siteMapProducts
{
	
}
.siteMapProducts ul
{
	text-indent:0px;
	margin-left:0px;
	padding-left:0px;
}
.siteMapCategory
{
	font-size:smaller;

}
.siteMapPage
{
	 text-decoration:none;
}
.siteMapPage a:hover
{
	text-decoration:underline;
}
.siteMapSubCategory
{
	font-size:smaller;
	text-indent: 10px;
	text-decoration: none;
}
.siteMapSubCategory a:hover
{
	text-decoration:underline;
}
.siteMapProduct
{
	 font-size:smaller;
	text-decoration:none;
	text-indent: 20px;
	overflow:hidden;
	display:block;
	height:20px;
}
.siteMapProduct a:hover
{
	text-decoration:underline;
}



/* Captcha */
.captch
{
 vertical-align:top;
 }




 /* Gallery */
 
.gallery
{
	background-color:White;
}
 
.dng_photo1
{
}





/* Website Specific */

.homePageLinks
{
background-image: url(../Images/smartphoneHomePage.jpg);
background-size:100% 100%;
background-repeat:no-repeat;
padding-top:10px;
padding-left:10px;
padding-right:10px;
padding-bottom:5px;
margin-botton:15px;
height: 150px;
}

.homePageLinks a
{
color:white;
font-weight:strong;
font-size:10pt;
text-decoration:none;
background-color:black;
padding-top:5px;
padding-bottom:5px;
padding-left:10px;
padding-right:5px;
display:block;
width:200px;
border-top: black 2px solid;
border-bottom: black 2px solid;
border-left: black 2px solid;
border-right: black 2px solid;
}
.homePageLinks a:visited
{
color:white;
font-weight:strong;
text-decoration:none;
}
.homePageLinks a:hover
{
color:black;
font-weight:strong;
background-color:#fff;
}


/*home page */



.homeBanner {
            width: 100%;
        height: 200px;
        background: #f0f0f0;
        margin-bottom: 20px;
        background-image: url(../Images/homeBanner.jpg);
        background-size: cover;

}

.clearBoth {
    clear: both;
}

.home-container-headline {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

.home-container {
    width: 90%;
    max-width: 1024px;
    margin: 0 auto;
    padding: 20px;
}

.home-container-wide {
    width: 90%;
    max-width: 600px;
    margin: 0 auto;
    padding: 20px;
}

.home-container-wide h2 {
    font-size: 18px;
    line-height: 1.5;
    color: #333;
    font-weight: 400;
    max-width: 1200px;
    margin: 25px auto;
    text-align: center;
}

.content-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 1fr auto 1fr;
    gap: 15px;
    max-width: 1200px;
    margin: 0 auto;
    height: 80vh;
}

.grid-item {
    background: white;
    border-radius: 8px;
    overflow: hidden;
}

/* Row separator line */
.row-separator {
    grid-column: 1 / -1;
    grid-row: 2;
    height: 1px;
    background: linear-gradient(to right, transparent, #ddd 20%, #ddd 80%, transparent);
    margin: 20px 0;
    position: relative;
}

.row-separator::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 40px;
    height: 40px;
    background: white;
    border: 2px solid #ddd;
    border-radius: 50%;
}

.row-separator::after {
    content: '◆';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    color: #999;
    font-size: 12px;
}

/* Top left - spans 2 columns (2fr) */
.text-block.large {
    grid-column: 1 / 3;
    grid-row: 1;
}

/* Top right - 1 column (1fr) */
.image-container:first-of-type {
    grid-column: 3;
    grid-row: 1;
}

/* Bottom left - 1 column (1fr) */
.image-container:last-of-type {
    grid-column: 1;
    grid-row: 3;
}

/* Bottom right - spans 2 columns (2fr) */
.text-block.medium {
    grid-column: 2 / 4;
    grid-row: 3;
}

/* Text block content styling */
.text-block .content {
    padding: 20px;
    font-size: 18px;
    line-height: 1.6;
    color: #333;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

/* Image container styling */
.image-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    background: #f8f8f8;
    color: #999;
    font-size: 16px;
    font-weight: 500;
}

.image-placeholder a {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 8px;
    transition: all 0.3s ease;
}

.image-placeholder a::before {
    content: '';
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    background: #2d5a3d;
    border-radius: 10px;
    z-index: -1;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.image-placeholder a:hover::before {
    opacity: 1;
}

.image-placeholder img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all 0.3s ease;
    border-radius: 8px;
    filter: brightness(0.9);
}

.image-placeholder a:hover img {
    transform: scale(1.05);
    filter: brightness(1.05);
}

/* 3x2 Aspect Images Grid */
.aspect-images-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 40px;
display:none;
}

.aspect-image-item {
    flex: 1 1 calc(25% - 11.25px);
    min-width: 200px;
    aspect-ratio: 4/3;
    background: white;
    border-radius: 8px;
    overflow: hidden;
}

.aspect-placeholder {
    position: relative;
    overflow: hidden;
    height: 100%;
}

.aspect-placeholder img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    padding: 10px;
    box-sizing: border-box;
    transition: transform 0.3s ease;
    border-radius: 8px;
}

.aspect-placeholder:hover img {
    transform: scale(1.1);
    border-color: #4a7c59;
}

.aspect-placeholder a {
    display: block;
    width: 100%;
    height: 100%;
}

/* Text box styling */
.aspect-image-item.text-box {
     background:none;
}

.aspect-text-content {
    /*padding: 20px;*/
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.aspect-text-content h3 {
    font-size: 18px;
    color: #333;
    margin-bottom: 10px;
    font-weight: 600;
}

.aspect-text-content p {
    font-size: 18px;
    color: #666;
    line-height: 1.4;
}

/* Mobile styles - corrected grid layout */
@media (max-width: 600px) {
    .content-grid {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto auto;
        height: auto;
        gap: 20px;
        min-height: auto;
    }

    /* Hide the row separator on mobile */
    .row-separator {
        display: none;
    }

    /* Stack all items vertically */
    .text-block.large {
        grid-column: 1;
        grid-row: 1;
    }

    .image-container:first-of-type {
        grid-column: 1;
        grid-row: 2;
    }

    .image-container:last-of-type {
        grid-column: 1;
        grid-row: 3;
    }

    .text-block.medium {
        grid-column: 1;
        grid-row: 4;
    }

    /* Adjust text content for mobile */
    .text-block .content {
        padding: 20px;
        font-size: 16px;
        min-height: 150px;
        text-align: left;
        align-items: flex-start;
    }

    .image-placeholder img {
        width: 100%;
        height: 200px;
        object-fit: cover;
    }

    /* Mobile aspect grid adjustments */
    .aspect-image-item {
        flex: 1 1 calc(50% - 7.5px);
        min-width: 150px;
    }

    /* Mobile container adjustments */
    .home-container-headline,
    .home-container,
    .home-container-wide {
        padding: 15px;
    }

    .home-container-wide h2 {
        font-size: 16px;
        margin: 20px auto;
        text-align: center;
    }
}

@media (max-width: 480px) {
    .aspect-image-item {
        flex: 1 1 100%;
    }
    
    .image-placeholder img {
        height: 180px;
    }
}

/*wedding main*/
.cta-grid-container {
    width: 100%;
    margin: 40px auto;
    padding: 0px;
}

.cta-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.cta-box {
    height: 350px;
    background-size: cover;
    background-position: center;
    border-radius: 15px;
    overflow: hidden;
    position: relative;
    transition: transform 0.3s ease;
}



.cta-box:hover {
    transform: translateY(-5px);
}

.cta-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(0,0,0,0.2), rgba(0,0,0,0.1));
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 30px;
    color: white;
}

.cta-overlay h3 {
    font-size: 28px;
    margin-bottom: 10px;
    font-weight: 600;
}

.cta-overlay p {
    font-size: 16px;
    margin-bottom: 25px;
    line-height: 1.4;
}

.cta-button {
    background: #3f5447;
    color: white;
    border: none;
    padding: 15px 30px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.cta-button:hover {
    background:#000;
    transform: scale(1.05);
    box-shadow: 0 8px 20px rgba(74, 124, 89, 0.4);
}

@media (max-width: 768px) {
    .cta-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .cta-box {
        height: 300px;
    }
}

.quote-grid-container {
    width: 95%;
    
    margin: 40px auto;
    padding:0px;
}

.quote-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    align-items: center;
}

.quote-section {
    padding: 20px;
}

.wedding-image-none {
    display: block;
    width: 95%;
    border-radius: 12px;
    margin: 0px auto;
}

.quote-box {
    position: relative;
    background: linear-gradient(135deg, #f8f9fa, #ffffff, #f1f3f4);
    border: 2px solid #e9ecef;
    border-radius: 15px;
    padding: 40px 30px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
    margin: 0px auto;
    width: 65%;
}

.quote-text {
    font-size: 16px;
    line-height: 1.6;
    color: #2c3e50;
    font-style: italic;
    margin: 0;
    position: relative;
    z-index: 2;
    text-align: left;
}

.quote-mark {
    font-size: 40px;
    color: #4a7c59;
    font-family: serif;
    position: absolute;
    opacity: 0.3;
}

.quote-mark.opening {
    top: 19px;
    left: 15px;
}

.quote-mark.closing {
    bottom: 10px;
    right: 15px;
}


          .quote-image-section {
    height: 359px;
    width: 90%;
    margin: 0px auto;
}


.quote-image-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    background: white;
    color: #999;
    font-size: 16px;
}

@media (max-width: 768px) {
    .quote-grid {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }
    
    .quote-section {
        order: 2; /* Moves quote box below */
    }
    
    .quote-image-section {
        order: 1; /* Moves image on top */
        height: 300px; /* Give it a height back */
        width: 100%;
    }
}
.kohana-four-box-row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.kohana-box {
    background: #fff;
    padding: 20px;
    text-align: center;
    display: flex;
    flex-direction: column;
}

.kohana-box img {
    width: 100%;
    height: auto;
    max-height: 200px;
    object-fit: cover;
    margin-bottom: 15px;
}

.kohana-box h3 {
    font-size: 1.5rem;
    margin: 10px 0;
    color: #333;
}

.kohana-box p {
    font-size: 1rem;
    color: #666;
    line-height: 1.6;
    margin-bottom: 20px;
    flex-grow: 1;
}

/* 2x2 at 600px */
@media (max-width: 600px) {
    .kohana-four-box-row {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .kohana-container {
        padding: 30px 15px;
    }
}

/* Vertical/1 column at 480px */
@media (max-width: 480px) {
    .kohana-four-box-row {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .kohana-box {
        padding: 15px;
    }
    
    .kohana-box h3 {
        font-size: 1.3rem;
    }
}