/**********************************************************************************************************************
 ** General
 **********************************************************************************************************************/
@media (max-width: 575px) {}                            /*  [xs] Phones (Portrait)   */
@media (min-width: 576px) and (max-width: 767px) {}     /*  [sm] Phones (Landscape)  */
@media (min-width: 768px) and (max-width: 991px) {}     /*  [md] Tablets (Portrait)  */
@media (min-width: 992px) and (max-width: 1199px) {}    /*  [lg] Tablets (Landscape) */
@media (min-width: 1200px) and (max-width: 1399px) {}   /*  [xl] Desktops / TVs      */
@media (min-width: 1400px) {}                           /* [xxl] Ultra-widescreens   */


body {
    background-image: url('/sites/default/files/header.png');
    background-repeat: repeat-x;
    background-position: top center; /* optional: controls starting point */
    background-size: auto;         /* optional: keeps original image size */
}


/* Anchors */
a:hover { color: var(--bs-secondary); }


/** Borders */
.border-top { border-top: 1px solid var(--bs-headings); }
.border-radius { border-radius: 5px; }
.box-shadow {
    box-shadow:
        -1px 0 1px rgba(0, 0, 0, 0.3),  /* left shadow */
        1px 0 1px rgba(0, 0, 0, 0.3),  /* right shadow */
        0 1px 1px rgba(0, 0, 0, 0.3);  /* bottom shadow */
}

/** Buttons */
.btn-primary:hover, .btn-primary:focus { background-color: var(--bs-secondary); color: #fff; }

/** Cursors */
.cursor-pointer { cursor: pointer; }

/** Display */
.pos-absolute { position: absolute; }
.pos-relative { position: relative; }


/** Fonts */
@font-face {
  font-family: 'PlayedWithLove Icons';
  src:  url('../fonts/pwl-icons/pwl-icons.eot?myzmo8');
  src:  url('../fonts/pwl-icons/pwl-icons.eot?myzmo8#iefix') format('embedded-opentype'),
    url('../fonts/pwl-icons/pwl-icons.ttf?myzmo8') format('truetype'),
    url('../fonts/pwl-icons/pwl-icons.woff?myzmo8') format('woff'),
    url('../fonts/pwl-icons/pwl-icons.svg?myzmo8#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'PlayedWithLove Icons' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-wedding-ring:before { content: "\e901"; }
.icon-wedding-rings:before { content: "\e900"; }


/** Margins / Paddings */
.margin-auto { margin: auto; }
.mx-auto { margin-left: auto; margin-right: auto; }
.no-margin, .margin-none, 
.margin-0  { margin:  0px; } .ml-0  { margin-left:  0px; } .mr-0  { margin-right:  0px; } .mt-0  { margin-top:  0px; } .mb-0  { margin-bottom:  0px; } .mx-0  { margin-left:  0px; margin-right:  0px; } .my-0  { margin-top:  0px; margin-bottom:  0px; }
.margin-1  { margin:  1px; } .ml-1  { margin-left:  1px; } .mr-1  { margin-right:  1px; } .mt-1  { margin-top:  1px; } .mb-1  { margin-bottom:  1px; } .mx-1  { margin-left:  1px; margin-right:  1px; } .my-1  { margin-top:  1px; margin-bottom:  1px; }
.margin-2  { margin:  2px; } .ml-2  { margin-left:  2px; } .mr-2  { margin-right:  2px; } .mt-2  { margin-top:  2px; } .mb-2  { margin-bottom:  2px; } .mx-2  { margin-left:  2px; margin-right:  2px; } .my-2  { margin-top:  2px; margin-bottom:  2px; }
.margin-3  { margin:  3px; } .ml-3  { margin-left:  3px; } .mr-3  { margin-right:  3px; } .mt-3  { margin-top:  3px; } .mb-3  { margin-bottom:  3px; } .mx-3  { margin-left:  3px; margin-right:  3px; } .my-3  { margin-top:  3px; margin-bottom:  3px; }
.margin-4  { margin:  4px; } .ml-4  { margin-left:  4px; } .mr-4  { margin-right:  4px; } .mt-4  { margin-top:  4px; } .mb-4  { margin-bottom:  4px; } .mx-4  { margin-left:  4px; margin-right:  4px; } .my-4  { margin-top:  4px; margin-bottom:  4px; }
.margin-5  { margin:  5px; } .ml-5  { margin-left:  5px; } .mr-5  { margin-right:  5px; } .mt-5  { margin-top:  5px; } .mb-5  { margin-bottom:  5px; } .mx-5  { margin-left:  5px; margin-right:  5px; } .my-5  { margin-top:  5px; margin-bottom:  5px; }
.margin-6  { margin:  6px; } .ml-6  { margin-left:  6px; } .mr-6  { margin-right:  6px; } .mt-6  { margin-top:  6px; } .mb-6  { margin-bottom:  6px; } .mx-6  { margin-left:  6px; margin-right:  6px; } .my-6  { margin-top:  6px; margin-bottom:  6px; }
.margin-7  { margin:  7px; } .ml-7  { margin-left:  7px; } .mr-7  { margin-right:  7px; } .mt-7  { margin-top:  7px; } .mb-7  { margin-bottom:  7px; } .mx-7  { margin-left:  7px; margin-right:  7px; } .my-7  { margin-top:  7px; margin-bottom:  7px; }
.margin-8  { margin:  8px; } .ml-8  { margin-left:  8px; } .mr-8  { margin-right:  8px; } .mt-8  { margin-top:  8px; } .mb-8  { margin-bottom:  8px; } .mx-8  { margin-left:  8px; margin-right:  8px; } .my-8  { margin-top:  8px; margin-bottom:  8px; }
.margin-9  { margin:  9px; } .ml-9  { margin-left:  9px; } .mr-9  { margin-right:  9px; } .mt-9  { margin-top:  9px; } .mb-9  { margin-bottom:  9px; } .mx-9  { margin-left:  9px; margin-right:  9px; } .my-9  { margin-top:  9px; margin-bottom:  9px; }
.margin-10 { margin: 10px; } .ml-10 { margin-left: 10px; } .mr-10 { margin-right: 10px; } .mt-10 { margin-top: 10px; } .mb-10 { margin-bottom: 10px; } .mx-10 { margin-left: 10px; margin-right: 10px; } .my-10 { margin-top: 10px; margin-bottom: 10px; }
.margin-15 { margin: 15px; } .ml-15 { margin-left: 15px; } .mr-15 { margin-right: 15px; } .mt-15 { margin-top: 15px; } .mb-15 { margin-bottom: 15px; } .mx-15 { margin-left: 15px; margin-right: 15px; } .my-15 { margin-top: 15px; margin-bottom: 15px; }
.margin-20 { margin: 20px; } .ml-20 { margin-left: 20px; } .mr-20 { margin-right: 20px; } .mt-20 { margin-top: 20px; } .mb-20 { margin-bottom: 20px; } .mx-20 { margin-left: 20px; margin-right: 20px; } .my-20 { margin-top: 20px; margin-bottom: 20px; }
.margin-25 { margin: 25px; } .ml-25 { margin-left: 25px; } .mr-25 { margin-right: 25px; } .mt-25 { margin-top: 25px; } .mb-25 { margin-bottom: 25px; } .mx-25 { margin-left: 25px; margin-right: 25px; } .my-25 { margin-top: 25px; margin-bottom: 25px; }
.margin-28 { margin: 28px; } .ml-28 { margin-left: 28px; } .mr-28 { margin-right: 28px; } .mt-28 { margin-top: 28px; } .mb-28 { margin-bottom: 28px; } .mx-28 { margin-left: 28px; margin-right: 28px; } .my-28 { margin-top: 28px; margin-bottom: 28px; }
.margin-30 { margin: 30px; } .ml-30 { margin-left: 30px; } .mr-30 { margin-right: 30px; } .mt-30 { margin-top: 30px; } .mb-30 { margin-bottom: 30px; } .mx-30 { margin-left: 30px; margin-right: 30px; } .my-30 { margin-top: 30px; margin-bottom: 30px; }
.margin-32 { margin: 32px; } .ml-32 { margin-left: 32px; } .mr-32 { margin-right: 32px; } .mt-32 { margin-top: 32px; } .mb-32 { margin-bottom: 32px; } .mx-32 { margin-left: 32px; margin-right: 32px; } .my-32 { margin-top: 32px; margin-bottom: 32px; }
.margin-35 { margin: 35px; } .ml-35 { margin-left: 35px; } .mr-35 { margin-right: 35px; } .mt-35 { margin-top: 35px; } .mb-35 { margin-bottom: 35px; } .mx-35 { margin-left: 35px; margin-right: 35px; } .my-35 { margin-top: 35px; margin-bottom: 35px; }
.margin-40 { margin: 40px; } .ml-40 { margin-left: 40px; } .mr-40 { margin-right: 40px; } .mt-40 { margin-top: 40px; } .mb-40 { margin-bottom: 40px; } .mx-40 { margin-left: 40px; margin-right: 40px; } .my-40 { margin-top: 40px; margin-bottom: 40px; }
.margin-45 { margin: 45px; } .ml-45 { margin-left: 45px; } .mr-45 { margin-right: 45px; } .mt-45 { margin-top: 45px; } .mb-45 { margin-bottom: 45px; } .mx-45 { margin-left: 45px; margin-right: 45px; } .my-45 { margin-top: 45px; margin-bottom: 45px; }
.margin-50 { margin: 50px; } .ml-50 { margin-left: 50px; } .mr-50 { margin-right: 50px; } .mt-50 { margin-top: 50px; } .mb-50 { margin-bottom: 50px; } .mx-50 { margin-left: 50px; margin-right: 50px; } .my-50 { margin-top: 50px; margin-bottom: 50px; }
.margin-50 { margin: 50px; } .ml-50 { margin-left: 50px; } .mr-50 { margin-right: 50px; } .mt-50 { margin-top: 50px; } .mb-50 { margin-bottom: 50px; } .mx-50 { margin-left: 50px; margin-right: 50px; } .my-50 { margin-top: 50px; margin-bottom: 50px; }
.margin-100 { margin: 100px; } .ml-100 { margin-left: 100px; } .mr-100 { margin-right: 100px; } .mt-100 { margin-top: 100px; } .mb-100 { margin-bottom: 100px; } .mx-100 { margin-left: 100px; margin-right: 100px; } .my-100 { margin-top: 100px; margin-bottom: 100px; }

.no-padding, .padding-none,
.padding-0  { padding:  0px; } .p-0  { padding:  0px; } .pl-0  { padding-left:  0px; } .pr-0  { padding-right: 0px; }  .pt-0  { padding-top:  0px; } .pb-0  { padding-bottom:  0px; } .px-0  { padding-left:  0px; padding-right:  0px; } .py-0  { padding-top:  0px; padding-bottom:  0px; }
.padding-1  { padding:  1px; } .p-1  { padding:  1px; } .pl-1  { padding-left:  1px; } .pr-1  { padding-right: 1px; }  .pt-1  { padding-top:  1px; } .pb-1  { padding-bottom:  1px; } .px-1  { padding-left:  1px; padding-right:  1px; } .py-1  { padding-top:  1px; padding-bottom:  1px; }
.padding-2  { padding:  2px; } .p-2  { padding:  2px; } .pl-2  { padding-left:  2px; } .pr-2  { padding-right: 2px; }  .pt-2  { padding-top:  2px; } .pb-2  { padding-bottom:  2px; } .px-2  { padding-left:  2px; padding-right:  2px; } .py-2  { padding-top:  2px; padding-bottom:  2px; }
.padding-3  { padding:  3px; } .p-3  { padding:  3px; } .pl-3  { padding-left:  3px; } .pr-3  { padding-right: 3px; }  .pt-3  { padding-top:  3px; } .pb-3  { padding-bottom:  3px; } .px-3  { padding-left:  3px; padding-right:  3px; } .py-3  { padding-top:  3px; padding-bottom:  3px; }
.padding-4  { padding:  4px; } .p-4  { padding:  4px; } .pl-4  { padding-left:  4px; } .pr-4  { padding-right: 4px; }  .pt-4  { padding-top:  4px; } .pb-4  { padding-bottom:  4px; } .px-4  { padding-left:  4px; padding-right:  4px; } .py-4  { padding-top:  4px; padding-bottom:  4px; }
.padding-5  { padding:  5px; } .p-5  { padding:  5px; } .pl-5  { padding-left:  5px; } .pr-5  { padding-right: 5px; }  .pt-5  { padding-top:  5px; } .pb-5  { padding-bottom:  5px; } .px-5  { padding-left:  5px; padding-right:  5px; } .py-5  { padding-top:  5px; padding-bottom:  5px; }
.padding-6  { padding:  6px; } .p-6  { padding:  6px; } .pl-6  { padding-left:  6px; } .pr-6  { padding-right: 6px; }  .pt-6  { padding-top:  6px; } .pb-6  { padding-bottom:  6px; } .px-6  { padding-left:  6px; padding-right:  6px; } .py-6  { padding-top:  6px; padding-bottom:  6px; }
.padding-7  { padding:  7px; } .p-7  { padding:  7px; } .pl-7  { padding-left:  7px; } .pr-7  { padding-right: 7px; }  .pt-7  { padding-top:  7px; } .pb-7  { padding-bottom:  7px; } .px-7  { padding-left:  7px; padding-right:  7px; } .py-7  { padding-top:  7px; padding-bottom:  7px; }
.padding-8  { padding:  8px; } .p-8  { padding:  8px; } .pl-8  { padding-left:  8px; } .pr-8  { padding-right: 8px; }  .pt-8  { padding-top:  8px; } .pb-8  { padding-bottom:  8px; } .px-8  { padding-left:  8px; padding-right:  8px; } .py-8  { padding-top:  8px; padding-bottom:  8px; } 
.padding-9  { padding:  9px; } .p-9  { padding:  9px; } .pl-9  { padding-left:  9px; } .pr-9  { padding-right: 9px; }  .pt-9  { padding-top:  9px; } .pb-9  { padding-bottom:  9px; } .px-9  { padding-left:  9px; padding-right:  9px; } .py-9  { padding-top:  9px; padding-bottom:  9px; }
.padding-10 { padding: 10px; } .p-10 { padding: 10px; } .pl-10 { padding-left: 10px; } .pr-10 { padding-right: 10px; } .pt-10 { padding-top: 10px; } .pb-10 { padding-bottom: 10px; } .px-10 { padding-left: 10px; padding-right: 10px; } .py-10 { padding-top: 10px; padding-bottom: 10px; }
.padding-15 { padding: 15px; } .p-15 { padding: 15px; } .pl-15 { padding-left: 15px; } .pr-15 { padding-right: 15px; } .pt-15 { padding-top: 15px; } .pb-15 { padding-bottom: 15px; } .px-15 { padding-left: 15px; padding-right: 15px; } .py-15 { padding-top: 15px; padding-bottom: 15px; }
.padding-20 { padding: 20px; } .p-20 { padding: 20px; } .pl-20 { padding-left: 20px; } .pr-20 { padding-right: 20px; } .pt-20 { padding-top: 20px; } .pb-20 { padding-bottom: 20px; } .px-20 { padding-left: 20px; padding-right: 20px; } .py-20 { padding-top: 20px; padding-bottom: 20px; }
.padding-25 { padding: 25px; } .p-25 { padding: 25px; } .pl-25 { padding-left: 25px; } .pr-25 { padding-right: 25px; } .pt-25 { padding-top: 25px; } .pb-25 { padding-bottom: 25px; } .px-25 { padding-left: 25px; padding-right: 25px; } .py-25 { padding-top: 25px; padding-bottom: 25px; }
.padding-30 { padding: 30px; } .p-30 { padding: 30px; } .pl-30 { padding-left: 30px; } .pr-30 { padding-right: 30px; } .pt-30 { padding-top: 30px; } .pb-30 { padding-bottom: 30px; } .px-30 { padding-left: 30px; padding-right: 30px; } .py-30 { padding-top: 30px; padding-bottom: 30px; }
.padding-35 { padding: 35px; } .p-35 { padding: 35px; } .pl-35 { padding-left: 35px; } .pr-35 { padding-right: 35px; } .pt-35 { padding-top: 35px; } .pb-35 { padding-bottom: 35px; } .px-35 { padding-left: 35px; padding-right: 35px; } .py-35 { padding-top: 35px; padding-bottom: 35px; }
.padding-40 { padding: 40px; } .p-40 { padding: 40px; } .pl-40 { padding-left: 40px; } .pr-40 { padding-right: 40px; } .pt-40 { padding-top: 40px; } .pb-40 { padding-bottom: 40px; } .px-40 { padding-left: 40px; padding-right: 40px; } .py-40 { padding-top: 40px; padding-bottom: 40px; }
.padding-45 { padding: 45px; } .p-45 { padding: 45px; } .pl-45 { padding-left: 45px; } .pr-45 { padding-right: 45px; } .pt-45 { padding-top: 45px; } .pb-45 { padding-bottom: 45px; } .px-45 { padding-left: 45px; padding-right: 45px; } .py-45 { padding-top: 45px; padding-bottom: 45px; }
.padding-50 { padding: 50px; } .p-50 { padding: 50px; } .pl-50 { padding-left: 50px; } .pr-50 { padding-right: 50px; } .pt-50 { padding-top: 50px; } .pb-50 { padding-bottom: 50px; } .px-50 { padding-left: 50px; padding-right: 50px; } .py-50 { padding-top: 50px; padding-bottom: 50px; }
.padding-70 { padding: 70px; } .p-70 { padding: 70px; } .pl-70 { padding-left: 70px; } .pr-70 { padding-right: 70px; } .pt-70 { padding-top: 70px; } .pb-70 { padding-bottom: 70px; } .px-70 { padding-left: 70px; padding-right: 70px; } .py-70 { padding-top: 70px; padding-bottom: 70px; }
.padding-90 { padding: 90px; } .p-90 { padding: 90px; } .pl-90 { padding-left: 90px; } .pr-90 { padding-right: 90px; } .pt-90 { padding-top: 90px; } .pb-90 { padding-bottom: 90px; } .px-90 { padding-left: 90px; padding-right: 90px; } .py-90 { padding-top: 90px; padding-bottom: 90px; }

/* [xs] Phones (Portrait) */
@media (max-width: 575px) { .p-10-xs { padding: 10px; } }

.padding-header { padding-top: 150px; } /* page top margin to prevent header overlap */


/* Text */
.text-left { text-align: left !important; }
.text-center { text-align: center !important; }
.text-right { text-align: right !important; }
.text-bold { font-weight: bold; }
.text-italic { font-style: italic; }
.text-disabled { color: var(--bs-gray) !important; }

/* Miscellaneous */
.width-max-content { width: max-content; }


/**********************************************************************************************************************
 ** Admin
 **********************************************************************************************************************/
body.toolbar-horizontal #header-1 { display: none; }


/**********************************************************************************************************************
 ** Forms
 **********************************************************************************************************************/
.form-section .container { padding-bottom: 50px; }
.form-section .container .dt_form { padding: 50px 25px; }
.form-section h2 { margin-bottom: 30px; text-align: center; }
form .form-inline > div { display: inline-block; vertical-align: top; }

/* Fields */
.form-style-1 input, .form-style-1 .nice-select, .form-style-1 select { height: 48px; }
.form-style-1 input.form-date, .form-style-1 select { padding: 5px 22px; }
form .checkbox > input,
form .radio > input {
  width: 20px;
  height: 20px;
  padding: 0;
}
form .checkbox > input + label,
form .checkbox > input ~ .description,
form .radio > input + label,
form .radio > input ~ .description { display: block; font-size: 1rem; padding-left: 5px; }
form input.form-date, form input.form-time { line-height: 36px; min-width: 175px; }
form .form-type-textarea.mb-3, form .fieldgroup.webform-checkboxes-other, form .fieldgroup.webform-radios-other { margin-bottom: 20px !important; }
form .webform-radios-other-input { width: 100% !important; }



/* Fieldsets/Legends */
form legend { font-size: 1.071rem; }
form fieldset legend { margin-bottom: 3px; }
form fieldset .field-prefix .description p { font-size: 0.85rem; margin-bottom: 0; }

/* Labels */
label.form-required:after, fieldset.required legend:after {
    color: var(--bs-red);
	content: "*";
	font-size: 20px;
	line-height: 12px;
	margin-left: 3px;
	position: relative;
}

/* Prefixes/Suffixes */
form .input-group-text { height: 48px; }

/* Buttons */
.btn-default { background-color: #fff; border: 2px solid var(--bs-primary); color: var(--bs-headings); }
form button.form-submit { padding: 0 20px; width: max-content; }


/* Custom */
.form-item-custom-seconds { padding-top: 25px; }


/**********************************************************************************************************************
 ** Header
 **********************************************************************************************************************/
.header .navbar-brand > img { max-width: 230px; max-height: 34px; }
.header .block-commerce-cart { margin-left: 50px; padding-top: 10px; }
.header .block-commerce-cart h2 { display: none; }
.header .block-commerce-cart .cart-block--summary a { transition: none; }
.header .block-commerce-cart .cart-block--summary__icon img { width: auto; }

.header .block-commerce-cart .cart-block--summary__count { color: #fff; font-size: 14px; padding-left: 5px; text-shadow: 2px 2px 4px rgba(0, 0, 0, 1); }
.header .block-commerce-cart .cart-block--summary__count:hover { color: var(--bs-primary); }
.header .block-commerce-cart .cart-block--contents { border: 1px solid #dee2e6; width: auto; /* max-width: 400px; */ }
.header .block-commerce-cart .cart-block--contents__links { 
    background-color: var(--bs-primary);
    border: 2px solid var(--bs-primary);
    color: var(--bs-headings);
    padding: 5px;
    text-align: center;
}
.header .block-commerce-cart .cart-block--contents__links:hover {
    background-color: var(--bs-secondary);
    border: 2px solid var(--bs-primary);
    color: #fff;
}
.header .block-commerce-cart .cart-block--contents__links a { display: block; }

@media (max-width: 767px) { .header .block-commerce-cart { position: fixed; top: 5px; right: 50px; } }                      /* [xs|sm] Phones */
@media (min-width: 768px) and (max-width: 991px) { .header .block-commerce-cart { position: fixed; top: 5px; right: 75px; }}  /*  [md] Tablets (Portrait) */
@media (min-width: 992px) { .header .nav-link { text-shadow: 2px 2px 4px rgba(0, 0, 0, 1); } }      /* horizontal navigation menu */


/**********************************************************************************************************************
 ** Song Playlist
 **********************************************************************************************************************/
.discography-details.style-3 .dark-playlist h2 { margin-bottom: 30px; }
.discography-details.style-3 .dark-playlist h2 + p { display: none; }
.discography-details.style-3 .dark-playlist .discography-playlist li { margin-bottom: 20px; }
.discography-details.style-3 .dark-playlist .discography-playlist .simp-source > span { display: block; }
.discography-details.style-3 .dark-playlist .discography-playlist .simp-source > span.song-title { line-height: 20px; }
.discography-details.style-3 .dark-playlist .discography-playlist .simp-source > span.song-artist { color: #ccc; font-size: 13px; }


.dark-playlist .simp-info .simp-title { display: flex; flex-direction: column; }
.dark-playlist .simp-info .simp-title > span.song-title { line-height: 20px; order: 1; }
.dark-playlist .simp-info .simp-title > span.song-artist { color: #ccc; font-size: 13px; order: 2; }


/* [lg-xxl] Tablets (Landscape) and up */
@media (min-width: 992px) {
    .discography-details.style-3 .dark-playlist { padding-top: 30px; }
    .discography-details.style-3 .dark-playlist .simp-info { padding-right: 20px; }
    .discography-details.style-3 .dark-playlist .simp-tracker { bottom: 150px; }
}

/* [xl-xxl] Desktops / TVs / Ultra-widescreens */
@media (min-width: 1200px) { .discography-details.style-3 { padding-top: 150px; } }

/**********************************************************************************************************************
 ** Status Message
 **********************************************************************************************************************/
#main main > .alert-wrapper { margin: 150px auto 20px auto; max-width: 1140px; position: relative; z-index: 0; }
#main main > .alert-wrapper > .alert { position: relative; margin: auto; width: 98%; }
#main main > .alert-wrapper > .alert > svg { height: 25px; }
#main main > .alert-wrapper > .alert h2#message-status-title,
#main main > .alert-wrapper > .alert h2#message-error-title { display: none; }

/**********************************************************************************************************************
 ** Testimonials
 **********************************************************************************************************************/
/* testimonials style 3 */
.slider-template-1 .content p { text-align: left; }
.slider-template-1 .content img { position: static; }
.slider-template-1 .content .name + span { color: #999; font-size: 14px; padding-bottom: 20px; }

/* testimonials style 1 */
.slider-template-2 .content p { font-size: 16px; font-weight: normal; margin-bottom: 20px; }
.slider-template-2 .content div.image i { color: #bbb; }


/**********************************************************************************************************************
 ** Played With Love
 **********************************************************************************************************************/
header .search-btn,
header .social-platform-links { display: none !important; }
section.pt-footer { padding-top: 50px; }
section.pt-footer::before { 
    background-color: var(--bs-headings);
    background-image: none;
}


/* Music Plus Overrides */
.pwl-section { background-repeat: no-repeat; padding-left: 15px; padding-right: 15px; position: relative; }
.pwl-section.dt-section.get-our-album-style-2.dt-section { padding-bottom: 50px; }
.pwl-section.dt-section + .pwl-section.dt-section { padding-top: 50px; }
.pwl-section.get-our-album-style-2 {
    background-attachment: fixed;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}
@supports (-webkit-touch-callout: none) /* Safari */
{
    /* background image fixed/cover fix for iPads */
    .pwl-section.get-our-album-style-2, .dt-section + .pwl-section.get-our-album-style-2.dt-section { background-attachment: scroll !important; }
}

.pwl-section.get-our-album-style-2 .content .title { margin-bottom: auto; }
.pwl-section.pwl-section-light.get-our-album-style-2 .content .singer-name { font-size: 16px; }
.pwl-section.get-our-album-style-2 .content p { margin-bottom: 24px; }
.pwl-section.get-our-album-style-2 .album-image-wrapper { background-color: transparent; }
.pwl-section.get-our-album-style-2 .album-image .image::before { background-color: transparent;}
.pwl-section.get-our-album-style-2 .album-image .image img { object-position: center top; }
.pwl-section.get-our-album-style-2 .album-image-wrapper,
.pwl-section.get-our-album-style-2 .content { padding: 38px; }

/*  [xs] Phones (Portrait)   */
@media (max-width: 575px) {
    .pwl-section.get-our-album-style-2 .content { padding: 15px; }
    .pwl-section.get-our-album-style-2 .album-image-wrapper { padding: 0; }
}

@media (min-width: 992px) {
  .pwl-section.get-our-album-style-2 .col-lg-6:first-of-type,
  .pwl-section.get-our-album-style-2 .col-lg-6:last-of-type {
    width: 50%;
  }
}

/* Light Theme */
.pwl-section.pwl-section-light { background-color: transparent; }
.pwl-section.pwl-section-light.get-our-album-style-2 .content .title,
.pwl-section.pwl-section-light.get-our-album-style-2 .content .singer-name,
.pwl-section.pwl-section-light.get-our-album-style-2 .content p { color: var(--bs-headings); opacity: 1; }
.pwl-section.pwl-section-light.get-our-album-style-2 .album-image { border-color: var(--bs-headings); }
.pwl-section.pwl-section-light.get-our-album-style-2 .album-image::before,
.pwl-section.pwl-section-light.get-our-album-style-2 .album-image::after { background-color: var(--bs-headings); }
/* Dark Theme */
.pwl-section.pwl-section-dark { background-color: #141414; }
.pwl-section.pwl-section-dark.get-our-album-style-2 .content p { opacity: 1; }

/**********************************************************************************************************************
 ** Pages
 **********************************************************************************************************************/

/* Home Page */
img#home-logo { max-width: 350px; }
section#home { background-position: left top; min-height: 100vh; }
section#home p { font-size: 17px; line-height: 26px; }
section.testimonials-home-style-1.dt-section { padding-top: 0; }
section.testimonials-home-style-1.dt-section > .container { border-top: 1px solid #dee2e6; padding-top: 50px; }
/*section.testimonials-home-style-1.dt-section h2 { margin-bottom: 0; }*/

/* About Page */
section#about { background-position: left top; }
section#about.pwl-section-light.get-our-album-style-2 .content
{
    border-radius: 5px;
    box-shadow:
        -1px 0 1px rgba(0, 0, 0, 0.3),  /* left shadow */
         1px 0 1px rgba(0, 0, 0, 0.3),  /* right shadow */
         0 1px 1px rgba(0, 0, 0, 0.3);  /* bottom shadow */
}

/* Contact Page */
section#contact { min-height: 100vh; padding-top: 100px; }
section#inquiry .container { max-width: 1140px; }
section#contact .container { max-width: 800px; } 
section#contact .container .dt-section {
    box-shadow:
        -1px 0 1px rgba(0, 0, 0, 0.3),  /* left shadow */
         1px 0 1px rgba(0, 0, 0, 0.3),  /* right shadow */
         0 1px 1px rgba(0, 0, 0, 0.3);  /* bottom shadow */
}

/* Gallery */
section#gallery h2 { margin-bottom: 0; padding-top: 50px; text-transform: uppercase; }
section#gallery .gallery-tabs { padding-top: 50px; }

/* Products/Catalogue Page */
.view-store { margin: 150px auto; max-width: 1140px; padding-bottom: 100px; }
.view-store h2 { margin-bottom: 50px; text-align: center; }
.view-store button { font-size: 0.9rem; font-weight: 400; margin-left: 5px; min-width: 0; height: 38px; transition: none; }
.view-store #edit-actions button { font-size: 0; }
.view-store #edit-actions button:after { content: "Search"; font-size: 0.9rem; font-weight: 400; }
.view-store table td { vertical-align: middle; }
.view-store img { margin-bottom: 0; width: 56px; height: 56px; }
.view-store select { min-width: 140px; }
.view-store form.commerce-order-item-add-to-cart-form { display: flex; }
.view-store form.commerce-order-item-add-to-cart-form > div,
.view-store form.commerce-order-item-add-to-cart-form > div > div { margin-bottom: 0 !important; }
.view-store form.commerce-order-item-add-to-cart-form label { display: none; }
.view-store .views-exposed-form { margin: 0 10px 20px; }
.view-store .view-empty { margin-top: 50px; }
.view-store .product-thumbnail { position: relative; }
.view-store .field--name-field-variation-image { position: absolute; top: 0; left: 0; }
.view-store form.commerce-order-item-add-to-cart-form .form-type-select + .form-type-select { /* Hide [Download Type] Select List for now */
    height: 0;
    position: absolute;
    left: -99999px;
}


@media (max-width: 575px) { /*  [xs] Phones (Portrait) */

    .view-store .views-exposed-form > div > div { margin-bottom: 10px !important; width: 100%; }
    .view-store .views-exposed-form > div > div button { margin: 0; width: 100%; }
    .view-store table form.commerce-order-item-add-to-cart-form { display: block; }
    .view-store table form button.form-submit { margin: 5px 0 0 0; width: 100%;}
}
@media (min-width: 576px) { /* [md] Tablets (Portrait) */
    .view-store .views-exposed-form .form-type-select { margin-left: 5px; }
    .view-store .views-exposed-form > div > div:last-child { display: flex; align-items: flex-end; }
}     

/* Product Page */
.alert-wrapper + div > div.content > div#product { margin-top: 20px; }
div#product  { margin: 150px auto; max-width: 1140px; padding-bottom: 100px; }
div#product .album-image-wrapper { padding-top: 0; }
div#product .album-image-wrapper img { aspect-ratio: 1 / 1; }
div#product .product-price { font-size: 20px; font-weight: bold; margin-bottom: 20px; }
div#product .field--type-image + img { display: none; }
div#product .field--name-field-variation-description { 
    font-size: 15px;
    line-height: 22px;
    font-weight: 400;
    font-family: var(--bs-secondary-font);
    color: var(--bs-paragraph);
    margin-bottom: 1rem;
}
div#product .field--name-field-variation-description + p { display: none; }
div#product form .form-type-select + .form-type-select { /* Hide [Download Type] Select List for now */
    height: 0;
    position: absolute;
    left: -99999px;
}

/* Testimonials Page */
h2#testimonials { padding-top: 150px; text-align: center; }


/* Shopping Cart */
div.cart-empty-page {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    min-height: 600px;
}
div.content > .cart.cart-form { margin-top: 150px; }
.alert-wrapper + div > div.content > .cart.cart-form { margin-top: 20px; }

.view-commerce-cart-form { margin: auto; max-width: 1140px; padding-bottom: 100px; }
.view-commerce-cart-form #edit-actions { display: flex; flex-direction: column; margin-top: 20px; }
.view-commerce-cart-form #edit-actions button { margin: 10px 10px 0; width: auto;  }
.view-commerce-cart-form #edit-actions button:first-child:not(:hover) { background-color: #fff; color: var(--bs-headings);  }
.view-commerce-cart-form input.quantity-edit-input { width: auto; }
.view-commerce-cart-form td.pwl-icon-remove button.delete-order-item {
    background-color: transparent;
    border: none;
    font-size: 0;
    height: auto;
    min-width: 0;
}
.view-commerce-cart-form td.pwl-icon-remove button.delete-order-item:before {
    content: "\f2ed";
    font-family: 'Font Awesome 5 Free';
    font-size: initial;
    font-weight: normal;
}
.view-commerce-cart-form td.pwl-icon-remove button.delete-order-item:hover { color: var(--bs-danger); }



/* [md] Tablets (Portrait) and larger  */
@media (min-width: 768px)  {
    .view-commerce-cart-form #edit-actions { flex-direction: row; justify-content: flex-end; }
    .view-commerce-cart-form #edit-actions button { margin: 0 10px 0 0; }
}

/* Order Summary (Checkout) */
.alert-wrapper + div > div.content > form.commerce-checkout-flow { margin-top: 50px; }
form.commerce-checkout-flow { margin: 150px auto; max-width: 1140px; padding: 0 15px; }
form.commerce-checkout-flow fieldset { margin-bottom: 2rem !important; }
form.commerce-checkout-flow fieldset legend { border-bottom: 1px solid #dee2e6; margin-bottom: 1rem; padding-bottom: 0.5rem; }
form.commerce-checkout-flow fieldset legend .fieldset-legend { font-size: 18px; font-weight: 600; }

form.commerce-checkout-flow .js-form-item { margin-bottom: 10px !important; }
form.commerce-checkout-flow .checkout-pane-order-summary { background-color: var(--bs-bg); padding: 20px; }
form.commerce-checkout-flow h3 {
    border-bottom: 1px solid #dee2e6;
    font-size: 18px;
    font-family: var(--bs-font-sans-serif);
}
form.commerce-checkout-flow .checkout-review-edit-link { font-size: 1rem; margin-left: 5px; }
form.commerce-checkout-flow .checkout-review-edit-link:before,
form.commerce-checkout-flow .checkout-review-edit-link:before { content: "("; }
form.commerce-checkout-flow .checkout-review-edit-link:after { content: ")"; }
form.commerce-checkout-flow .checkout-review-edit-link a { color: var(--bs-indigo); font-family: "Inter"; font-size: 0.8rem; font-weight: normal; }
form.commerce-checkout-flow .checkout-review-edit-link a:hover { color: var(--bs-blue); }
form.commerce-checkout-flow a.link--previous { color: var(--bs-indigo); display: block; font-family: var(--bs-font-sans-serif); font-size: 14px; margin-top: 20px; }
form.commerce-checkout-flow a.link--previous:hover { color: var(--bs-blue); }
form.commerce-checkout-flow .address-book-edit-button { padding: 5px 10px; }
form.commerce-checkout-flow .address-book-edit-button:before {
    content: "\f044";
    font-family: 'Font Awesome 5 Free';
    font-size: initial;
    font-weight: normal;
 }
form.commerce-checkout-flow .address-book-edit-button:after { content: "Edit"; padding-left: 5px; }
form.commerce-checkout-flow #edit-review-payment-information .fieldset-wrapper { font-size: 0; }

.checkout-pane-order-summary td { vertical-align: middle; }
.checkout-pane-order-summary td.views-field-total-price__number { text-align: right; }
.checkout-pane-order-summary img { width: 56px; height: 56px; }
.checkout-pane-order-summary img + img { display: none; }
.checkout-pane-completion-message p { color: var(--bs-headings); }
.checkout-pane-completion-message a { font-family: var(--bs-font-sans-serif); font-weight: bold; }
.views-field-commerce-file a { color: var(--bs-blue); text-decoration: underline; }

/* Safari */
@supports (-webkit-touch-callout: none) { section#about { background-size: 100% auto; } }

/**********************************************************************************************************************
 ** Responsive
 **********************************************************************************************************************/

/* [xs] Phones (Portrait) */
@media (max-width: 575px)
{
    section#home { background-attachment: scroll; padding-top: 250px; }
    section#about { padding-top: 350px; }
    @supports (-webkit-touch-callout: none) { section#about { background-size: 100% auto; padding-top: 200px; } } /* iPhone (Safari) */
}

/* [sm] Phones (Landscape) */
@media (min-width: 576px) and (max-width: 767px)    
{ 
    section#about { padding-top: 200px; }
}

/* [md] Tablets (Portrait) */
@media (min-width: 768px) and (max-width: 991px)
{
    section#home { padding-top: 250px; }
    section#about { padding-top: 300px; }
}

/* [lg] Tablets (Landscape) */
@media (min-width: 992px) and (max-width: 1199px)
{
}

/* [xl] Desktops / TVs */
@media (min-width: 1200px) and (max-width: 1399px)
{
    section#home { min-height: 100vh; }
    section#home .container .row > .col-12 { background-color: transparent !important; }
}

/* [xxl] Ultra-widescreens   */
@media (min-width: 1400px)
{
    section#home { min-height: 100vh; }
    section#home .container .row > .col-12 { background-color: transparent !important; }
}



/** Footer */
.pt-footer { padding-top: 100px; }
.pt-footer h4 { margin-bottom: 0; }
.pt-footer .social-media-platforms { height: 2px; margin-top: 40px; }
.pt-footer nav.block-content-footer_platform_links ul li.soc-link a { display: inline-flex; }
.pt-footer nav.block-content-footer_platform_links ul li.soc-link a:hover { color: var(--bs-primary); }
.pt-footer nav.block-content-footer_platform_links ul li.soc-link a > * { display: inline-block; }
.pt-footer nav.block-content-footer_platform_links ul li.soc-link a i { margin-right: 10px; }


/** Background Video */
.pwl-background-video {
    object-fit: cover;
    object-position: center center;
    opacity: 1;
    position: absolute;
    width: 100%;
    height: 100%;
}
.pwl-background-video + .pwl-section { background-color: transparent; }
.pwl-section.pwl-section-full-height { height: 100vh; }
.pwl-section.pwl-section-full-height .container { display: flex; align-items: center; height: 100%; }

/* Forms */
form[id*="webform-submission-website-inquiry"] { margin: auto; max-width: 500px; }