html {
	display: table-cell;
	width: 100%;
	height: 100%;
}

body {
	background: #091731 url(../images/bg.jpg) no-repeat center center;
	background-size: cover;
	background-attachment: fixed;
	color: #0f353e;
	font-family: 'Montserrat', sans-serif;
	overscroll-behavior: none;
	height: 100%;
	margin: 0;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Bebas Neue', sans-serif;
	margin-top: 0;
	font-weight: normal;
}

a, 
a:link, 
a:visited {
	color: #18525d;
	text-decoration: none;
	transition: all 300ms ease-in-out;
}

a, 
a:hover, 
a:active {
	color: #ce4534;
}

input {
	color: #18525d;
}

.dialog-off-canvas-main-canvas {
	height: 100%;
}

.layout-container {
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
	padding: 0;
	height: 100%;
}

main {
  border-radius: 10px;
  box-shadow: 0 0 20px rgb(0 0 0 / 35%);
  /*margin: 100px auto 0;*/
	width: 1200px;
	/*min-height: 800px;*/
	box-sizing: border-box;
  display: flex;
	flex-flow: row nowrap;
	margin: 50px 0;
}

aside {
	background: rgba(255,255,255,0.75);
	border-radius: 10px 0 0 10px;
	backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
	box-sizing: border-box;
	width: 300px;
}

.sidebar-inner {
	padding: 0 0 30px;
}

/* aside nav {
	
} */

aside nav ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

aside nav ul li > a {
	display: block;
	margin: 0;
	padding: 10px 20px;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 18px;
	line-height: 18px;
	letter-spacing: 1px;
	text-align: center;
}

aside nav ul li > a:hover {
	background: rgba(255,255,255,0.4);
}

aside .search-block-form {
	margin: 0 20px 20px;
}

aside .search-block-form .form-actions {
	display: none;
}

aside .search-block-form input.button.form-submit {
	width: 0;
	height: 0;
	border: none;
	padding: 0;
	visibility: hidden;
	overflow: hidden;
}

aside .search-block-form input.form-search {
	padding: 0 10px;
	box-sizing: border-box;
	height: 30px;
	line-height: 30px;
	width: 260px;
	border-radius: 15px;
	border: 1px solid #ccc;
	background: rgba(255,255,255,0.75);
	transition: all 300ms ease-in-out;
	outline: none;
	text-align: center;
}

aside .search-block-form input.form-search:focus {
	border: 1px solid #18525d;
	background: rgba(255,255,255,1);
}

a.logo {
	display: block;
	width: 220px;
	height: 130px;
	text-indent: 220px;
	margin: 30px 40px;
	white-space: nowrap;
	overflow: hidden;
	background: url(../images/logo.svg) no-repeat center center;
	background-size: contain;
}

div.layout-content {
	background: #fff;
	border-radius: 0 10px 10px 0;
	/*width: 100%;*/
	flex-grow: 1;
}

.layout-inner {
	/*padding: 30px 40px;*/
	padding: 0 0 30px;
	position: relative;
}

/* .layout-inner article {
	
} */

.layout-inner #block-ammon-primary-local-tasks {
	display: none;
}

.description {
	padding: 20px 30px 30px;
}

.details {
	padding: 20px 30px;
  margin: 0 30px 30px;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-around;
  align-items: flex-start;
  background: #efefef;
  text-align: center;
}

.details p {
	margin: 0;
}

.details > div {
	margin: 0;
}

.details .field__label, 
.field-title {
	font-size: 14px;
	line-height: 14px;
	text-transform: uppercase;
	font-weight: bold;
}

.recipe-split {
	display: flex;
  flex-flow: row nowrap;
  justify-content: flex-start;
  align-items: stretch;
  padding: 0 30px;
  margin: 0 0 30px;
}

.ingredients {
	margin: 0 30px 0 0;
}

.ingredients > div > div {
	white-space: nowrap;
}

.ingredients > div > div > div {
	margin: 0 0 10px;
}

.instructions .field-title, 
.ingredients .field-title {
	margin: 0 0 10px;
}

.instructions p, 
.ingredients p {
	margin: 0 0 10px;
}

.instructions {
	padding: 0 0 0 30px;
  border-left: 1px solid #ddd;
}

.instructions ol {
	padding-left: 20px;
	margin: 10px 0 30px;
	line-height: 24px;
}

.instructions ol li {
	margin: 0 0 10px;
}

.description p {
	margin: 0 0 20px;
	font-size: 16px;
	line-height: 22px;
}

.description p:last-of-type {
	margin-bottom: 0;
}

.layout-inner header {
	padding: 0;
	position: absolute;
	width: 100%;
	height: 200px;
	z-index: 1;
}

.layout-inner header .contextual-region {
	height: 200px;
}

.layout-inner header h1 {
	padding: 20px 30px 15px;
  margin: 0;
  position: absolute;
  left: 0;
  bottom: 0;
  font-size: 32px;
  line-height: 28px;
  background: rgba(255,255,255,0.7);
  width: 100%;
  box-sizing: border-box;
  backdrop-filter: blur(4px);
}

.header-image {
	border-radius: 0 10px 0 0;
	overflow: hidden;
}

main.front .layout-inner header {
  display: none;
}

@media screen and (max-width: 800px) {
  .layout-container {
    justify-content: flex-start;
    align-items: center;
  }

  aside {
    width: 100vw;
    border-radius: 0;
  }

  aside .search-block-form input.form-search {
    width: 100%;
  }

  a.logo {
    width: 100%;
    margin: 30px 0;
    text-indent: 100%;
  }

  main, 
  .recipe-split, 
  .details {
    width: 100vw;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: flex-start;
    box-sizing: border-box;
  }

  main {
    margin: 0;
  }

  div.layout-content {
    border-radius: 0;
  }

  .ingredients > div > div {
    white-space: wrap;
  }

  .details {
    margin: 0 0 30px;
    gap: 10px;
  }

  .ingredients, 
  .instructions {
    margin: 0 0 30px;
    border-left: none;
    padding: 0;
  }

  .description {
    box-sizing: border-box;
    width: 100vw;
  }

  .layout-inner header {
    width: 100vw;
    overflow-x: hidden;
  }

  .header-image {
    width: 100vw;
    overflow-x: hidden;
  }

  .header-image img {
    width: auto;
    height: 100%;
  }
}