/** OVERRIDE GLOBAL STYLES *******************************************************************************************/
.contentpage-top {
	margin-top: 0;
}

main {
	background-image: url('/media/9217/board-1-image.jpg');
	background-size: contain;
	background-repeat: no-repeat;
	background-color: #ececf4;
}

/* hide page title banner */
.page-header {
	display: none;
}

.large-content-block {
	padding: 15px 0 100px 0;
}

hr {
    margin-top: 20px;
    border: 0;
    height: 1px;
    background: #D98E04;
    background-image: linear-gradient(to right, #ededed, #D98E04, #ededed);
}

/** TYPOGRAPHY *********************************************************************************************************/
.rich-text h1 {
	font-size: 36px; 
	text-align: left;
	margin: 0 0 20px 0;
}

.rich-text h3 {
	margin: 0 0 10px 0;
}

.rich-text ol {
	list-style: decimal;
	padding-left: 40px;
}

.rich-text ol li {
	padding-left: 10px;
}
.rich-text ul li:before {
	top: 10px;
}

.rich-text a.btn {
	border: none;
}

blockquote {
	border-top: 2px solid #D98E04;
	border-bottom: 2px solid #D98E04;
	font-style: italic;
	font-weight: normal;
	text-align: center;
	margin: 60px 40px;
}

.panel-text p, .box p, .img-text-block p {
	margin: 0;
}

.panel-text h2 {
	margin-top: 0;
}

/** UTILITIES *************************************************************************************************************/
.mt-small { margin-top: 20px; }
.mt-large { margin-top: 40px; }
.mx-big { margin-left: 120px; margin-right: 120px; }

.mb-large { margin-bottom: 40px; }

.pb-small { padding-bottom: 20px; }
.pb-large { padding-bottom: 50px; }
.p-medium { padding: 30px; }
.p-small { padding: 30px 20px; }

.border-rounded { border-radius: 20px; }

/** COLOURS ***************************************************************************************************************/
.bg-blue { background-color: #3A468C; }
.bg-pale-blue { background-color: rgb(244, 249, 253); }

/** SHAPES ****************************************************************************************************************/
.down-arrow {
	position: relative;
	bottom: -2rem;
	left: 50%;
	margin-left: -20px;
	width: 50px;
	height: 50px;
	background: url('/media/9250/down-arrow.png') no-repeat;
	background-size: contain;
}

/** ANIMATIONS ************************************************************************************************************/
.bounce {
	animation: bounce 2s infinite;
}
@keyframes bounce {
	0%, 20%, 50%, 80%, 100%  {
		transform: translateY(0);
	}
	
	40% {
		transform: translateY(-30px);
	}
	
	60% {
		transform: translateY(-15px);
	}
}

/** IMAGES *****************************************************************************************************************/
.logo {
	width: 60%;
	margin: auto;
	padding-top: 20px;
}
.picture {
    float: right; 
    width: 500px; 
    padding: 0 0 0 20px;
}

/** SECTIONS AND SPACING *****************************************************************************************************/
.header {
	margin: 0 80px 30px 80px;
}

/* menu and intro section */
section:nth-child(2) {
	padding: 20px 80px 70px 80px;
}

/* remaining sections */
section:nth-child(n+3) {
   padding: 40px 80px;
   font-size: 1.1em;
}

/* apply sectional background colours */
section:nth-child(3), section:nth-child(5), section:nth-child(6)  {
	background-color: rgba(236, 236, 244, 0.5);
}

section:nth-child(7)  {
	background-color: rgba(252, 247, 228, 0.4);
}

/** INTRO *****************************************************************************************************************/
/* used on the menu and intro section */ 
.intro-container {
	display: grid;
	grid-gap: 30px;
   	grid-template-columns: 1fr 2fr;
}

/** introductory text and video at the top of the page */
.intro {
	height: auto;
}

/** PANELS *****************************************************************************************************************/
 /* text boxes with gold borders */
.panel {
	display: grid;
}

.panel-text, .box {
	display: flex;
	justify-content: center;
	padding: 30px;
	border-radius: 20px;
}

.panel-text {
	border: 2px solid #D98E04;
}

/** MAIN MENU, INTRO TEXT AND VIDEO ******************************************************************************************/
/* main menu boxes */
.box {
	border-radius: 10px;
	border: 2px solid #D98E04;
	font-size: 0.95em;
	height: 110px;
	padding: 10px 20px;
}

.box h3 {
	font-size: 1em;
    margin-bottom: 0;
}

.box a {
	border-bottom: 1px solid #3A468C;
	font-weight: 600;
}

.box:not(:last-child) {
	margin-bottom: 10px;
}

.fl-col {
	flex-direction: column;
}

.col-2 {
	grid-gap: 20px;
}

.intro p {
	font-size: 1.14em;
}

.video-clip {
	height: 342px;
}
.main-menu-mobile { 
    display: none;
}

/** CARDS *****************************************************************************************************************/
/* used at the bottom of the page */
.card {
	padding: 50px 30px;
	border-radius: 20px;
}
.card-2-col {
	height: 355px;
}
.card-3-col {
	height: 455px;
}

/** MEDIA QUERIES ********************************************************************************************************/

@media (max-width: 1400px) {
	.grid-container {
		grid-template-columns: 30% 68%;
	}
	.intro p {
		font-size: 1.1em;
	}
}
@media (max-width: 1200px) {
	section:nth-child(4) {
		padding: 40px;
	}
	/* coastwise cafe events */
	section:nth-child(4) .grid-wrapper
	{
		grid-template-columns: repeat(2, 1fr);
	}
	section:nth-child(n+2) {
		padding: 40px 20px;
	}
	.header {
		margin: 0 20px;
	}
	.rich-text h1 {
		font-size: 32px;
	}

}
@media (max-width: 1000px) {
	.intro p {
		font-size: 1em;
	}
}
@media (max-width: 990px) {
	section:nth-child(2) {
		padding-top: 10px;
		padding-bottom: 60px;
	}
	.col {
		grid-template-columns: 1fr;
		grid-gap: 20px;
	}
	.main-menu {
		display: none;
	}
	.main-menu-mobile {
		display: block;
	}
	.intro p {
		font-size: 1.2em;
	}
	.panel img {
		width: 100%;
	}
	.rich-text h2 {
		margin: 30px 0 20px 0;
	}
}
@media (max-width: 768px) {
	.logo {
		width: 100%;
	}
	.intro p {
		font-size: 1.1em;
	}
	
}
@media (max-width: 650px) {
	/*.intro {
		height: 290px;
	}*/
	.rich-text h1 {
		font-size: 30px;
	}
	/* coastwise cafe events */
	section:nth-child(4) .grid-wrapper
	{
		grid-template-columns: repeat(1, 1fr);
	}
}
@media (max-width: 600px) {
	/*.intro {
		height: 300px;
	}*/
}
 