.layout .afikoman {
  text-align: center; }

.layout .gallery {
  display: grid;
  align-items: center;
  grid-template-columns: 1fr 1fr;
  grid-gap: 10px; }
  .layout .gallery img {
    width: 100%;
    height: 550px;
    object-fit: cover; }

.layout .faq h1, .layout .faq h2 {
  text-align: center; }

.layout .faq .q {
  font-size: 1em;
  font-weight: bold;
  font-family: sans-serif; }

.layout .faq .a {
  margin-bottom: 2em; }

.layout .underline {
  border-bottom: 1px #ddd solid;
  padding-bottom: 0.25em; }

.layout .invite-container {
  display: grid;
  grid-template-columns: 1fr 0.1fr 1fr;
  border: 1px solid #666;
  border-radius: 10px;
  margin-top: 10px !important; }
  .layout .invite-container .binding {
    position: relative;
    background-image: url("/static/lines.jpg"); }
    .layout .invite-container .binding .bg {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      overflow: hidden;
      background-image: linear-gradient(to right, rgba(0, 0, 0, 0), #d0d0d0, rgba(0, 0, 0, 0)); }

.layout .invite {
  border: 1px solid #ccc;
  padding: 1em;
  margin: 1em 0; }

.layout .invite-header {
  border-radius: 10px 0 0 10px;
  background-image: url("/static/lines.jpg");
  padding: 10px;
  line-height: 32px; }
  .layout .invite-header h3 {
    margin-bottom: 1.8em; }
  .layout .invite-header p {
    margin-bottom: 31px;
    padding: 0;
    line-height: 31px; }
  .layout .invite-header .event {
    display: inline; }
    .layout .invite-header .event .bp3-button {
      margin-top: -3px;
      margin-left: 4px; }
    .layout .invite-header .event .bp3-menu {
      padding-top: 0;
      padding-bottom: 1px;
      border-radius: 0;
      background-color: #ccc;
      text-align: center; }
    .layout .invite-header .event a {
      margin: 0 16px; }

.layout .invite-form {
  border-radius: 0px 10px 10px 0px;
  background-image: url("/static/lines.jpg");
  margin: 0 auto; }
  .layout .invite-form h3 {
    line-height: 30px;
    margin: 31px 0;
    padding: 0;
    text-align: center; }
  .layout .invite-form h4 {
    padding: 0;
    margin: 0;
    line-height: 29px; }
  .layout .invite-form textarea.bp3-input {
    background-color: rgba(255, 255, 255, 0.25);
    margin-top: 0;
    line-height: 29px;
    padding: 6px 10px 0;
    margin-bottom: 30px; }
  .layout .invite-form.true {
    opacity: 0.7;
    background-color: #ccc; }
  .layout .invite-form h2 {
    text-align: center; }
  .layout .invite-form .bp3-button {
    width: 100%;
    font-weight: bold;
    margin-top: 1px; }
  .layout .invite-form .bp3-label {
    text-align: center; }

.layout .invitees {
  margin-bottom: 32px;
  margin-top: 32px; }
  .layout .invitees .invitee {
    margin-bottom: 31px; }
    .layout .invitees .invitee .bp3-input-group input {
      font-family: 'Walter Turncoat', cursive;
      text-align: center;
      background: none;
      height: 30px;
      margin: 0 0 2px 0;
      padding: 0;
      border: 0; }
    .layout .invitees .invitee .bp3-control.bp3-switch {
      margin: 0;
      height: 31px;
      padding: 6px 0 0 0;
      text-align: center; }
    .layout .invitees .invitee h4 {
      margin-bottom: 0.25em; }
    .layout .invitees .invitee .yes {
      color: green; }
    .layout .invitees .invitee .no-rsvp {
      color: orange;
      font-size: 0.75em; }
    .layout .invitees .invitee .no {
      color: red; }

.layout .background .nav-container {
  display: grid;
  grid-template-columns: 3fr 272px 3fr;
  grid-template-rows: 1fr; }

.layout .background.Home {
  position: relative;
  background-image: url("/static/taj.jpg");
  background-position: top;
  background-size: cover;
  background-attachment: fixed;
  background-repeat: no-repeat;
  min-height: 800px; }
  .layout .background.Home .logo {
    height: fit-content;
    background-color: #fff;
    border-radius: 0 0 1em 1em; }
  .layout .background.Home a.logo-link:after {
    border: 0; }

.layout .nav {
  font-family: 'Walter Turncoat', cursive;
  font-size: 1.1em;
  background-image: url("/static/bg1.jpg");
  background-repeat: repeat;
  height: fit-content;
  padding: 1em 0 1em;
  border-bottom: 1px solid #000; }
  .layout .nav ul {
    list-style: none;
    margin: 0;
    padding: 0; }
    .layout .nav ul li {
      background-color: #fff;
      padding: 0.5em 1em;
      min-width: 100px;
      text-align: center; }
  .layout .nav.left {
    padding-left: 20%; }
    .layout .nav.left li {
      float: right; }
  .layout .nav.right {
    padding-right: 20%; }
    .layout .nav.right li {
      float: left; }

.layout .container {
  max-width: 800px;
  margin: 0 auto;
  background-color: #fff; }

.layout .logo {
  padding: 0.3em 0.25em; }
  .layout .logo h2, .layout .logo h3 {
    font-family: 'Walter Turncoat', cursive; }

.layout .logo a.logo-link {
  display: block;
  color: #182026;
  background-color: white;
  border: 2px solid #000;
  border-radius: 0 0 1em 1em;
  text-align: center;
  width: 100%;
  height: fit-content; }
  .layout .logo a.logo-link h2, .layout .logo a.logo-link h3 {
    border-bottom: 1px solid #000;
    max-width: 90%;
    margin: 0.1em auto 0.4em; }
  .layout .logo a.logo-link:hover {
    color: #555;
    text-decoration: none; }
  .layout .logo a.logo-link:visited {
    color: #182606; }
  .layout .logo a.logo-link:after {
    border-radius: 0 0 1em 1em;
    border-right: 1px solid #eee;
    border-left: 1px solid #eee;
    border-bottom: 1px solid #eee;
    height: 42%;
    width: 100%;
    position: absolute;
    content: '';
    left: 0;
    bottom: 0; }

.layout .logo {
  position: relative; }
  .layout .logo h1, .layout .logo h2, .layout .logo h3 {
    margin: 0; }

.layout .bp3-input-group.bp3-large .bp3-input {
  font-size: 1.2em;
  border: none;
  box-shadow: none;
  padding: 0;
  margin: 1em 0;
  border-bottom: 1px solid #ccc;
  border-radius: 0; }
  .layout .bp3-input-group.bp3-large .bp3-input:hover, .layout .bp3-input-group.bp3-large .bp3-input:focus {
    border: 1px solid #ccc;
    border-radius: 5px;
    padding: 1px; }

.layout .hotel-card {
  overflow: hidden;
  max-width: 600px;
  margin: 1em auto; }
  .layout .hotel-card h4 {
    margin: 0; }
  .layout .hotel-card .hotel-info {
    float: left; }
  .layout .hotel-card .hotel-links {
    clear: both;
    display: block;
    margin-left: 1em; }
    .layout .hotel-card .hotel-links > * {
      margin-right: 0.5em; }

.layout .photo-card {
  float: left;
  max-width: 200px;
  height: auto;
  padding: 0 1em 1em 1em; }

.layout .footer {
  margin: 4em 0 0;
  padding: 1em 0;
  border-top: 1px #eee solid;
  text-align: center; }

@media (max-width: 768px) {
  .layout .container {
    padding: 1em; }
  .layout .nav {
    background-image: none; }
    .layout .nav ul li {
      min-width: 114px; }
    .layout .nav.left {
      padding-left: 3em; }
    .layout .nav.right {
      padding-right: 3em; }
  .layout .background .nav-container {
    background-image: url("/static/bg1.jpg");
    background-size: 500px;
    background-repeat: repeat; }
  .layout .background.Home {
    min-height: 500px;
    background-size: 800px;
    background-position: 50% -42%;
    background-attachment: inherit;
    background-repeat: no-repeat;
    background-color: #c2d0d9; }
    .layout .background.Home .logo {
      border-radius: 0.3em; }
  .layout .logo {
    background-color: #fff;
    margin: 0.75em 0;
    border-radius: 0.3em;
    height: fit-content; }
    .layout .logo a.logo-link {
      border-radius: 0.5em; }
      .layout .logo a.logo-link:after {
        border: 0; } }

@media (max-width: 599px) {
  .layout .gallery {
    display: block; }
    .layout .gallery img {
      width: 100%;
      max-height: 550px; }
  .layout .invite-container {
    display: grid;
    grid-template-columns: 1fr;
    border: 0; }
    .layout .invite-container > * {
      border-radius: 0; }
  .layout .background .nav-container {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    padding: 0.75em 0; }
  .layout .background .nav {
    border: 0;
    background-image: none; }
    .layout .background .nav.left {
      padding-left: 2em; }
    .layout .background .nav.right {
      padding-right: 2em; }
    .layout .background .nav ul li {
      margin: 2px; }
  .layout .background.Home {
    background-size: 600px;
    background-position: 50% -250%;
    background-attachment: inherit;
    background-repeat: no-repeat;
    background-color: #c2d0d9;
    padding: 0; }
    .layout .background.Home .nav-container {
      background-image: none;
      padding: 0; }
    .layout .background.Home .nav {
      height: fit-content;
      background-image: url("/static/bg1.jpg");
      padding-top: 0.5em;
      padding-bottom: 0.5em;
      margin-top: 0; }
      .layout .background.Home .nav.left, .layout .background.Home .nav.right {
        grid-row: 1; }
    .layout .background.Home .logo {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      padding: 0 2em;
      background: transparent;
      border-radius: 1em 1em 0 0; }
      .layout .background.Home .logo a.logo-link {
        border-radius: 1em 1em 0 0; }
  .layout .logo {
    grid-column: 1 / 3;
    grid-row: 1;
    height: fit-content;
    background-color: #fff;
    width: 80%;
    margin: auto;
    border-radius: 0.5em; }
    .layout .logo a.logo-link {
      margin-top: 0;
      border-radius: 0.5em; }
      .layout .logo a.logo-link:after {
        border: 0; }
  .layout .nav {
    height: auto;
    padding: 0.4em 0 0 0; }
  .layout .nav.left > ul > li, .layout .nav.right > ul > li {
    display: block;
    float: none; }
  .layout .nav.left {
    grid-column: 1;
    grid-row: 2; }
  .layout .nav.right {
    grid-column: 2;
    grid-row: 2; } }

