:root {

    --cassiopeia-color-primary: #333;
    --cassiopeia-color-link: #bb0000;
    --cassiopeia-color-hover: #ff0000;

    --cassiopeia-font-family-body: "Roboto", sans-serif;
    --cassiopeia-font-family-headings: "Josefin sans", sans-serif;
    --cassiopeia-font-weight-headings: 700;
    --cassiopeia-font-weight-normal: 400;
    
    --blue: #0d6efd;
    --indigo: #6610f2;
    --purple: #6f42c1;
    --pink: #d63384;
    --red: #dc3545;
    --orange: #fd7e14;
    --yellow: #ffc107;
    --green: #198754;
    --teal: #20c997;
    --cyan: #0dcaf0;
    --white: #fff;
    --gray: #6c757d;
    --gray-dark: #343a40;
    --gray-100: #f8f9fa;
    --gray-200: #e9ecef;
    --gray-300: #dee2e6;
    --gray-400: #ced4da;
    --gray-500: #adb5bd;
    --gray-600: #6c757d;
    --gray-700: #495057;
    --gray-800: #343a40;
    --gray-900: #212529;
    --primary: #0d6efd;
    --secondary: #6c757d;
    --success: #198754;
    --info: #0dcaf0;
    --warning: #ffc107;
    --danger: #dc3545;
    --light: #f8f9fa;
    --dark: #212529;
    --primary-rgb: 13, 110, 253;
    --secondary-rgb: 108, 117, 125;
    --success-rgb: 25, 135, 84;
    --info-rgb: 13, 202, 240;
    --warning-rgb: 255, 193, 7;
    --danger-rgb: 220, 53, 69;
    --light-rgb: 248, 249, 250;
    --dark-rgb: 33, 37, 41;
    --white-rgb: 255, 255, 255;
    --black-rgb: 0, 0, 0;
    --body-color-rgb: 33, 37, 41;
    --body-bg-rgb: 255, 255, 255;
    --font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
    --body-font-family: var(--cassiopeia-font-family-body);
    --body-font-size: 2rem;
    --body-font-weight: 400;
    --body-line-height: 1.5;
    --body-color: #383838;
    --body-bg: #efefef;
}

body 
{
  background-repeat:repeat;
  background-attachment:fixed
}

main {
  background-color: white;
  padding-left: 10px;
  padding-right: 10px;
  padding-top: 10px;
  border-radius: .25rem;
}

.item-content .page-header h2 a {
  font-size: 25px !important;
  color: grey !important;
}

.item-content .page-header {
  xfont-family: "Josefin Sans" !important;
  font-size: 25px !important;
  color: grey !important;
  
}

.container-header {
  background-color: #000;
  border-bottom: 2px solid #BB0000;
  padding: 0px 0px 0px 2px;
  background-image: none;
}

/******************************/
/*** Contact form           ***/
/******************************/
.com-contact__form {
  max-width: 600px;
}


/******************************/
/*** Menu                   ***/
/******************************/

.navbar-brand {
  padding-top: 0px;
  padding-bottom: 0px;
}

.mod-menu {
  font-family: "Fjalla one", sans serif;
    font-family: "Josefin sans", sans serif;
}


.container-header .metismenu>li.active>a:after, .container-header .metismenu>li.active>button:before, .container-header .metismenu>li>a:hover:after, .container-header .metismenu>li>button:hover:before  {
  background:  #bb0000;
}

.container-header .metismenu>li.active>a:after, .container-header .metismenu>li.active>button:before, .container-header .metismenu>li>a:hover:after, .container-header .metismenu>li>button:hover:before {
  opacity: .8;
}

.metismenu-item>a {
  color: #bb0000;
}

.mm-collapse.mm-show {
  background-color: #888 !important;
  border-radius: 4px;
}

.btn-secondary{
  border-color: #bb0100;
}

.footer{
   background: url(/images/black_background_weave.jpg); 
}

img.front-piano-small{
  border-radius: 7px;
}

.piano-banner {
  box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
}

/***********************************************************/
.duanecontainer {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-top: 56.25%;
}

.videocontainer{
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-top: 56.25%;
 
}

.responsive-iframe {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

/**********************************************************/
/**     Book layout                                 *******/
/**                                                 *******/
/**********************************************************/
.mybox {
    width: 21rem;
    height: 25rem;
    background-color: #eee;
    box-shadow: 5px 5px 25px #0000005f;
    padding: 10px 30px;
    border-radius: 10px;  
}

.mycontainer {
  xheight: 50vh;
  xheight: 400px;
  display: flex; /* Aligns child divs horizontally */
  flex-direction: row;
  justify-content: center;  
  align-items: center;
  gap: 3em;
  flex-grow: 1;
  padding: 20px 20px;
}

.mycontainer img {
  padding-top: 10px;
  padding-bottom: 10px;
}

@media(max-width:900px) {
  .mycontainer{
    xheight: 1500px;
    flex-direction: column;
  }
  .mybox{
    max-width: 95%;
    padding: 30px;
  }
}




/**********************************************************/
/**     Front Grid                                  *******/
/**          fp = front page                        *******/
/**********************************************************/

.fpcontainer {
  display: grid; /* Aligns child divs horizontally */
  justify-content: center;
  xx align-items: center;
  grid-template-columns: 1fr 1fr 1fr;
  xgrid-template-rows: 460px;
  grid-gap: 3em;
  xxpadding: 0px 20px;
  margin: 0px 20px;
  
}

.fpbox1, .fpbox2, .fpbox3 {
    background-color: #fff;
    box-shadow: 5px 5px 25px #0000005f;
    padding: 20px 20px;
    border-radius: 10px;
    max-width: 500px;
}

.fpimg {
  xwidth: 100%;
  xheight: 100%;
  overflow: hidden;
}

/*************************************************/
div.fpimg img {
  transform: scale(1);
  transition: 400ms;
  overflow:hidden !important;
}
div.fpimg img:hover {
  transform: scale(1.2); 
  transition: 400ms; 
}
/*************************************************/

.fpbutton{
  background-color: #bb0000;
  border: none;
  cursor: pointer;
  padding: 5px 15px;
  border-radius: 4px;
  font-weight: bold;
  color: #fff;
  margin-top: 15px;
  transition: 0.2s
}

@media(max-width:900px){
  .fpcontainer {
    display: grid; /* Aligns child divs horizontally */
    grid-template-columns: 282px;
    grid-gap: 3em;
  }
  
  .fpbox1, .fpbox2, .fpbox3 {
      padding: 30px;
  }
}


/***********************************************************/
/***    CONTACT PAGE                                     ***/
/***********************************************************/
.contact-container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  grid-gap: 4rem; 
}


/**********************************************************/
.small_cover {
  display: block;
  max-width: 25%;
  height: auto;
  float: left;
  margin-bottom: 1px;
}

.large_cover.item-image {
  float: left;
  padding-right: 10px;
  margin-left: 10px;
  max-width: 250px;
}

.book_body {
  padding-left: 8px;
  padding-right: 8px;
  padding-bottom: 8px;
  border: 1px;
  border-style: solid;
  border-color: red;
  border-radius: 6px;
  box-shadow: 4px 4px 2px 2px #888888;
}

.blog-item .item-image {
  margin-right: 10px;
}

.blog-items .fields-container {
  max-width: 75%;
  margin-left: 25%;
  font-weight: bold;
}

ul.fields-container {
  list-style-type: none; /* Remove bullets */
  padding: 0; /* Remove padding */
  margin: 0; /* Remove margins */
}

.book-author {
  font-size: 22px;
}

.book-date {
}

/**********************************************************/
