/*
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.3.0/font/bootstrap-icons.css");
*/
html, body {
	font-family: 'Lato', sans-serif;
	background-color: #fff;
}

body {
    min-height: 100vh;
    min-height: 100dvh;
    display: grid;
    grid-template-rows: 1fr auto;
}

.clear {
    clear: both;
}

/*
.float-left {
    float: left !important;
}
*/

.bg-dark {
    background-color: rgb(0 84 167) !important;
}

h2.panel {
    font-size: 25px;
    margin-top: 5px;
}

h2.panel.line {
    border-bottom: 1px solid #0054a7;
    padding-bottom: 15px;
    margin-bottom: 25px;
}

hr.panel-line {
    margin: 20px 0;
}

.btn-primary {
    --bs-btn-bg: rgb(0 84 167);
    --bs-btn-border-color: rgb(0 84 167);
    --bs-btn-hover-bg: #1f72ea;
    --bs-btn-hover-border-color: #1f72ea; 
}

.row.spacering {
    margin: 0 -10px;
}

.row.steps {
   /* border: 1px solid  rgb(0 84 167);
    border-radius: 10px; */
    /*background-color: rgb(0 84 167);*/
    margin-bottom: 15px;
}

.row.header-space {
    padding: 0 10px;
}

p {
    margin-bottom: 0;
}

p.center {
    text-align: center;
}

p.bold {
    font-weight: normal;
    border-radius: 5px;
    padding: 15px;
    margin-bottom: 30px;

    border: 1px solid #0054a7;
    color: #0054a7;
    background-color: #fbf7d8;

     /*
    background-color: #0054a7;
    color: #ffffff;
   
    background-color: #ffc107;
    color: #013262;
    */   
}

p.out-message {
    font-weight: normal;
    padding: 20px 0 35px 0;
    color: #0054a7;
    font-size: 17px;
}

p.error_msg {
    color: red;
    font-size: 17px;
}

p.error_msg_booking {
    color: red;
    margin: 0px 0 1px 0;
    font-size: 20px;
}

p.req {
    /*
    font-weight: bold;
    margin-top: 20px;
    margin-bottom: -10px;
    */
    color: #0054a7;
    font-size: 17px;
}

p.white {
    color: #fff;
}

p span {
    color: red;	
}

.carousel-caption p {
    color: #fff;
}

img.headerlogo {
    height: 34px;
    margin-top: -10px;
}


form {
	margin-bottom: 20px;	
    padding: 0 20px;
}

form .form-label {
    margin-top: 15px;
    margin-bottom: 0px;
}

form .form-label span.req {
	color: red;	
    font-size: 25px;
}

form .form-label span.noreq {
	color: #fff;	
    font-size: 25px;
}

form p {
    text-align: left;	
}

form p.form-headline {
	color: #000;	
}

form p.form-headline span {
	font-weight: bold;	
    font-size: 20px;;
}

form p.form-headline-blue {
	color: #0054a7;	
}

form p.form-headline-red {
	color: red;	
}

form .form-control {
    font-size: 14px;
    line-height: 26px;
}

.form-select {
    font-size: 14px;
    line-height: 26px;
    color: #212529;
    border: 1px solid #a8a8a8;
}

input[type=text] {
    border: 1px solid #a8a8a8;
}

input[type=password] {
    border: 1px solid #a8a8a8;
}

input[type=number] {
    border: 1px solid #a8a8a8;
}

input[type=email] {
    border: 1px solid #a8a8a8;
}

input[type=datetime-local] {
    border: 1px solid #a8a8a8;
    height: 40px;
}

textarea {
    border: 1px solid #a8a8a8 !important;
}

textarea.event-food {
    height: 100px; 
    resize: none;
}

textarea.event-food2 {
    height: 173px;
    resize: none;
}

button, input, optgroup, select, textarea {
    margin: 5px 0;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/*
input[type=number] {
  -moz-appearance: textfield;
}
*/

#navbarNav {
	margin-top: 3px;	
}

h1, h2, h3, h4, h5, h6 {
	color: #0054a7	
}

.carousel-caption h1{
    color: #fff;
}

a {
	color: #0054a7;
    text-decoration: none;	
}

.pt10 {
    padding-top: 10px;	
}

.navbar-brand {
	color: #fff;	
    font-size: 28px;
}

.navbar-brand:hover {
    color: rgb(255 193 7); 	
}

.navbar-toggler:focus {
    box-shadow: 0 0 0 0.1rem;
}

.nav-link {
	color: #fff;
}

.nav-link:focus, .nav-link:hover {
    color: rgb(255 193 7);
}

.navbar-nav .nav-link.active {
	color: rgb(255 193 7);
}

.home-hero {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    background: url('../images/top-slice-5.png') no-repeat;
    background-size: cover;
    background-position: center;
}

.home-hero-front {
    height: 700px;
}

.home-hero-other {
    height: 250px;
}

.featurette {
    margin-top: -20px;
}

.featurette-heading {
    margin: 25px 0;
}

.featurette-divider {
    margin: 3rem 0;
}

.last-front {
    padding-bottom: 50px;
}

.text-center {
    text-align: center !important;
}

.header-text-front h1 {
    color: #fff;
    font-size: 54px;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1.5;
}

.header-text-front p {
    color: #fff;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.5;
    text-transform: uppercase;
}

.marketing {
	margin-top: 70px;	
}

.marketing .col-lg-3 {
    margin-bottom: 1.5rem;
    text-align: center;
}

.main_section {
	/*background-color: #ffffeb;	
    background-color: #faebd74d;*/
    background-color: #fff;
}

.header-text-other {
    background-color: #8d837873;
    /*background-color: #8d8378a8;*/
    border-radius: 10px;
}

.header-text-other h1 {
	color: #fff;
    font-size: 45px;
    line-height: 2.0;
}

.mainbox {
    margin: 30px auto;
    padding-bottom: 100px;
}

.width-40-percent-center {
    width: 30%;
    margin: 30px auto;
}

.width-50-percent-center {
    width: 50%;
    margin: 30px auto;
}

.panel-event {
    border: 1px solid #9f9999;
    padding: 10px 0;
    border-radius: 5px;
    margin: 0 0 10px 0;
    background-color: #fafafa;
}

.panel-event-inner {
    border: 1px solid #9f9999;
    background-color: #fff;
}

.panel-event-bighov:hover {
   background-color: #fff;
}

.panel-event-smhov:hover {
    background-color: #f7f7f7;
}

.carousel-item image {
    opacity: 0.8;
}

.dining {
    display: block;
}

#dining {
    display: block;
}

.show-guest {
    display: none;
}

.show-results span {
    color: red;
}

.show-results span.blue {
    color: #0054a7;
}

#booking-success-result {
    display: none;
    text-align: center;
    margin-top: 20px;
}

#booking-fail-result {
    display: none;
    color: red;
    text-align: center;
    margin-top: 20px;
}

.footer {
    width: 100%;
	padding: 0 10px;	
    margin-top: auto;
 
}

.footer p {   
	color: #fff;
}

.nav-link {
    padding: 0px;
}

.steward-diner-list {
    background-color: #fffefe;
    border: 1px solid #ccc;
    border-radius: 5px;
    padding: 10px;
}

@media (min-width: 1400px) {
    .container, .container-fluid{
        max-width: 1320px;
    }
}

@media (min-width: 1200px) {
    .col-md-6 {
        flex: 0 0 auto;
        width: 50%;
    }
}

@media screen and (min-width: 992px) {
    #navbarNav {
		position: absolute;
    	right: 0;
	}
    
    .cookiebanner {
        left: 25% !important;
        right: 25% !important;
        padding: 35px 40px !important;
    }
}

@media screen and (max-width: 992px) {
    .carousel-item {
        height: 20rem;
    }

    .carousel-caption {
        bottom: 5rem;
    }

    .carousel-indicators {
        margin-bottom: 2rem;
    }

    .featurette-heading {
        font-size: 32px;
    }

    .nav-link.top {
        border-top: 1px solid #0c6bc9;
        height: 42px;
        vertical-align: middle;
        line-height: 38px;
        border-bottom: 1px solid #15304b;
    }

    .nav-link.first {
        border-top: none;
    }

    .nav-link.last {
        border-bottom: none;
    }

    .navbar-nav {
        margin-top: 20px;
        margin-bottom: 5px;
    }

    .header-text-other h1 {
        font-size: 35px;
    }

    .home-hero-other {
        height: 200px;
    }

    h2.panel {
        font-size: 22px;
    }

    .featurette {
        margin-top: -30px;
}
}

@media screen and (min-width: 786px) {
    .float-left {
        float: left !important;
    }
}

@media screen and (min-width: 360px) and (max-width: 1400px){
    
    svg.bd-placeholder-img {
        margin-bottom: 10px;
        text-align: center;
	}
}

@media screen and (max-width: 380px) {

    .featurette {
        margin-top: -100px;
    }
}

