/**
 * MHS custom CSS
 *
 * A stylesheet to fix styling issues on site
 * until changes are rolled into master CSS
 * Keep organized and well-commented! :)
 */



/**
 * Font-sizes
 *
 * Prevents font-sizes from decreasing on
 * smaller viewports
 */

 body.mhs-jdch-pages,
 body.mhs-jdch-pages .small {
   font-size: 100%;
 }

 body .main-content p,
 body .main-content li {
   font-size: 1em;
   font-weight: normal;
   line-height: 1.5em;
 }

 body .responsive-tabs__panel {
   font-size: 1em;
 }

 body .responsive-tabs__list .responsive-tabs__list__item {
   font-size: 1.15em;
 }

 body .provider-tabs .responsive-tabs__list .responsive-tabs__list__item {
   max-width: 34%;
 }

 body .module-pd-profile .module-pd-profile-top .bottom .module-pd-office-listing .module-pd-office-item {
   font-size: .85em;
 }

 body h3 {
   line-height: 1.2em;
 }

 .callout .image-callout-wrapper > p,
 .callout .image-callout-wrapper > a {
   font-size: .69em;
 }


 @media screen and (max-width: 1400px) {

   body .main-content p,
   body .main-content li,
   body .main-content address {
     font-size: .9em;
     line-height: 1.5em;
   }

   body .callout .call-us .description {
     font-size: .65em;
   }

   body .responsive-tabs__panel {
     font-size: 1em;
   }

   body .responsive-tabs__list .responsive-tabs__list__item {
     font-size: 2vw;
   }

   body .module-pd-profile .module-pd-profile-top .bottom .module-pd-office-listing .module-pd-office-item {
     font-size: .85em;
   }
 }


 @media screen and (max-width: 1093px) {

   body .module-pd-profile .module-pd-profile-top .bottom .module-pd-office-listing .module-pd-office-item {
     font-size: .85em;
   }

 }


 @media screen and (max-width: 1063px) {

   body .main-content p,
   body .main-content li, {
     font-size: .8em;
   }

 }


 @media screen and (max-width: 973px) {

   body .main-content p,
   body .main-content li {
     font-size: .8em;
   }

  body .provider-tabs .responsive-tabs__list .responsive-tabs__list__item {
    max-width: 50%;
  }

 }


 @media screen and (max-width: 767px) {

   body .callout .call-us .description {
     font-size: .75em;
   }

   body .callout .call-us h3 {
     font-size: 1em;
   }

   body .callout .call-us .text-area .description p:last-child {
     margin-bottom: 0;
   }

   body .callout .call-us a {
     font-size: .9em;
   }

   body .responsive-tabs__panel {
     font-size: 1em;
   }

 }

 /* end Font-sizes */





 /**
  * Links
  *
  * Adds style to links to make
  * them more accessibile
  */

 /* .main-content p > a,
 .main-content li > a,
 .main-content table a,
 body.mhs-jdch-pages .prox-nav .nav-item a {
   border-bottom: dotted 2px rgba(0,0,0,0);
 } */

 .main-content p > a,
 .main-content li > a,
 .main-content table a {
   border-bottom-color: inherit;
 }

 .main-content p > a:hover,
 .main-content li > a:hover,
 .main-content table a:hover,
 body.mhs-jdch-pages .main-content a:hover,
 body.mhs-jdch-pages .main-content p > a:focus,
 body.mhs-jdch-pages .main-content li > a:focus,
 body.mhs-jdch-pages .main-content table a:focus,
 body.mhs-jdch-pages .main-content a:focus {
   text-decoration: none !important;
   border-bottom-style: solid;
   border-bottom-color: inherit;
 }

 body.mhs-jdch-pages .prox-nav .nav-item:focus,
 body.mhs-jdch-pages .prox-nav .nav-item:hover {
   /*border-bottom-color: rgba(0,0,0,0);*/
 }
   body.mhs-jdch-pages .prox-nav .nav-item a {
     display: block;
   }
     body.mhs-jdch-pages .prox-nav .nav-item a,
     body.mhs-jdch-pages .prox-nav .nav-item a:hover {
       border-bottom-color: rgba(0,0,0,0);
     }
     body.mhs-jdch-pages .prox-nav .nav-item a.tab-focus,
     body.mhs-jdch-pages .prox-nav .nav-item a.tab-focus:hover {
       border-bottom-color: inherit;
     }
     body.mhs-jdch-pages .prox-nav .nav-item a.tab-focus .proxnav-item-text:hover {
       text-decoration: none;
     }



 body.mhs-jdch-pages #image-feature-placeholder .callout a {
   display: block;
   border-bottom: solid 2px rgba(0,0,0,0);
 }
   body.mhs-jdch-pages #image-feature-placeholder .callout a:hover,
   body.mhs-jdch-pages #image-feature-placeholder .callout a.tab-focus {
     border-bottom-color: inherit;
   }

 body.mhs-jdch-pages #image-feature-placeholder .callout a:first-child {
   border-bottom: none;
 }
   body.mhs-jdch-pages #image-feature-placeholder .callout a:first-child::after {
     display: block;
     position: relative;
     content: "";
     width: 0;
     height: 3px;
     bottom: .5em;
     background-color: #83acec;
     transition: width .1s;
   }
     body.mhs-jdch-pages #image-feature-placeholder .callout a:first-child:hover::after {
       width: 100%;
       transition: width .3s;
     }


 /* end Links */





 /**
  * Tab focus
  *
  * Adds some style for elements when
  * they are made focus with tab
  */

 body.mhs-jdch-pages .tab-focus,
 body.mhs-jdch-pages .small .bottom-nav .navbar-right .menu-button .dropdown-toggle.tab-focus,
 body.mhs-jdch-pages nav .bottom-nav .navbar-right .menu-button .dropdown-toggle.active-nav.tab-focus,
 body.mhs-jdch-pages .responsive-tabs__list .responsive-tabs__list__item.tab-focus {
   background: #ecec99;
 }

 body.mhs-jdch-pages .secondary-nav-buttons a.tab-focus,
 body.mhs-jdch-pages .button.tab-focus,
 body.mhs-jdch-pages .transparent-button.tab-focus,
 body.mhs-jdch-pages footer .copy a.tab-focus {
   color: #595a54 !important;
 }

 body.mhs-jdch-pages #ctl06_pnlstickySocialWrapper a.tab-focus {
   display: block;
   border: solid 10px #ecec99;
 }

 body.mhs-jdch-pages .full-width-strip .cards .card-hover.pseudo-hover {
   background-color: #00529c;
   opacity: .95;
 }

 /* end Tab focus */



 /**
  * Lists
  *
  * Adds some space around lists
  * and list items
  */

  body article p + ul {
    margin-top: 0 !important;
  }

  body .main-content li:not(.responsive-tabs__list__item) {
    margin-bottom: .5em;
  }

  body .main-content li:not(.responsive-tabs__list__item):last-child {
    margin-bottom: 0;
  }

  body .main-content li:not(.responsive-tabs__list__item) > ul {
    padding-top: 1em;
    padding-bottom: 1em;
  }

 /* end Lists */





 /**
  * Columns
  *
  * Adds some space around columns
  * for easier readability?
  */

 .grid .nine.columns {
   padding-right: 3em;
 }

 /* end Columns */





 /**
  * Headings
  *
  * Adds some space around headings
  * for easier readability?
  */

  body h2 + p,
  body h3 + p,
  .smartSnippet + h2 {
    margin-top: 1em;
  }

  body p + h2, body p + h3,
  body ul + h2, body ul + h3,
  body h2 + .prox-nav, body h3 + .prox-nav,
  body h2 + .prox-nav + p, body h3 + .prox-nav + p,
  .two-col-list + h2, .two-col-list + h3 {
    margin-top: 1.5em;
  }

  body.mhs-jdch-pages h1.mobile-padding {
    padding: 1em .5em 0 .5em;
  }


 /* end Headings */





 /**
  * Mobile
  *
  * Classes to add to elements that should
  * not beâ€”or should be onlyâ€”on mobile
  */

  .mobile-only {
    display: none;
  }

  @media screen and (max-width: 767px) {

    .mobile-only {
      display: inherit;
    }

    .no-mobile {
      display: none;
    }

  }





 /**
  * Inline images
  *
  * Prevents inline images from expanding
  * past viewport
  */

 .content-area img {
   max-width: 100%;
 }

 .content-area table img {
   min-width: 125px;
 }

 /* end Inline images */





 /**
  * Image snippets
  *
  * Fixes some styling issues
  * with image snippets
  */

  .image-caption {
    max-width: 475px;
  }

  .image-caption.right {
    margin-left: 2em;
  }

  .image-caption.left {
    margin-right: 2em;
  }

  body .image-caption img {
    width: 100%;
    box-shadow: none;
    outline: none;
  }

  /* end Image snippets */





 /**
  * Buttons
  *
  * Adds a little bit of padding to buttons
  * which makes `em more clickable :)
  */

  body .button {
    display: inline-block;
    padding-bottom: .5em;
    padding-top: .5em;
    border-bottom: none !important;
  }

 body .regular-request-appointment {
   padding-top: 1em;
   padding-bottom: 1em;
 }

 .callout a.callout-button {
   display: table;
   width: initial;
   padding: .3em 1.5em;
   margin-bottom: 1em;
   color: #FFF;
   background-color: #00529c;
   font-size: .77em;
   font-weight: normal;
   transition: background-color ease .3s;
 }
   .callout a.callout-button:hover {
     background-color: #0663B6;
     color: #FFF;
   }

 /* end Buttons */





 /**
  * Disabled schedule button
  *
  * Adds style for disabled schedule button
  * for when we have to disable 'em
  * ... and other buttons too
  */

  .regular-request-appointment.disabled,
  .module-pd-epic-visit-type.disabled,
  .button.disabled {
    background: #CCC !important;
  }
    .regular-request-appointment.disabled:hover,
    .module-pd-epic-visit-type.disabled:hover,
    .button.disabled {
      background: #CCC !important;
      cursor: default !important;
    }

  /* end Disabled schedule button */





 /**
  * Schedule button
  *
  * Adds cursor style to button
  * for mobile js click
  */

  .module-pd-epic-schedule {
    cursor: pointer;
  }

  /* end Schedule button */





 /**
  * Carousel cards
  *
  * Sets 100% width so that we
  * can use retina images
  */

  /* body .carousel .item .image-area img {
    max-width: 100%;
    height: auto;
  } */


  /* end Carousel cards





 /**
  * Callouts
  *
  * Adds style callouts that
  * are in the right rail
  */

 body .callout .generic .text-area {
   width: 70%;
 }

 body.test.mhs-jdch-pages .callout {
     border-top: solid 1px #CCC;
 }

 body.test.mhs-jdch-pages article:first-of-type {
   margin-top: 0 !important;
 }

  /* end Callouts */





 /**
  * FAD
  *
  * Fixes some styling issues with
  * the physician profiles
  */

  body .module-pd-profile .module-pd-profile-top .bottom .physician-details .mobile-open-scheduling {
    min-width: 50%;
  }

  body.mhs-jdch-pages .module-pd-related {
    margin-top: 1.5em;
  }


  /* end FAD





 /**
  * FAD Badges
  *
  * Adds a style for the FAD
  * MPG, MHN, etc badges
  */

  .physician-details .network img.moffitt, .module-pd-listing-info .network img.moffitt,
  .physician-details .network .mhn-logo img, .module-pd-listing-info .network .mhn-logo img,
  .physician-details .network .mpg-logo img, .module-pd-listing-info .network .mpg-logo img {
    max-height: 45px;
    margin: .5em;
  }


  .physician-details .network .mhn-logo img, .module-pd-listing-info .network .mhn-logo img {
    max-height: 41px;
  }

  /* end FAD badges





 /**
  * Hero
  *
  * Keeps hero image beneath navigation
  * so that headroom is consistent
  * also adds color bar for
  * distinquishable
  * servicelines
  */

 .inner-banner {
   position: relative;
   max-width: 100%;
   margin-top: 0;
   overflow: hidden;
 }
   .inner-banner::after {
     position: absolute;
     content: "";
     height: 1.35em;
     width: 100%;
     bottom: 0;
     left: 0;
   }
     /* MCI */
     body.item-url-cancer .inner-banner::after {
       background-color: #663390;
     }
     /* MCVI */
     body.item-url-cardiac-vascular .inner-banner::after {
       background-color: #B51E23;
     }
     /* MNI */
     body.item-url-neurology .inner-banner::after {
       background-color: #4BAECB;
     }
     /* MRI */
     body.item-url-rehabilitation .inner-banner::after {
       background-color: #F57921;
     }
     /* Bariatric */
     body.item-url-bariatric-surgery .inner-banner::after {
       background-color: #96B84A;
     }


 @media screen and (max-width: 1135px) {

   body.mhs-jdch-pages .hero img {
     margin-top: 9vw;
   }
 }


 @media screen and (max-width: 767px) {

   .prox-nav.mobile + .inner-banner {
     position: relative;
     width: 175%;
     /* margin-top: -1em !important; */
     left: 50%;
     transform: translateX(-50%);
     z-index: -1;
   }
     body.mhs-jdch-pages .prox-nav.mobile + .inner-banner {
       /* margin-top: -2em !important; */
     }

   header[role="banner"] + .inner-banner {
     margin-top: 6em !important;
     width: 175%;
   }

   body.mhs-jdch-pages .prox-nav.mobile + .inner-banner img {
     width: 200%;
   }

   body .main-content [id*="pnlCallout"] {
     margin-top: 1.5em !important;
   }

   body nav .bottom-nav,
   body.mhs-jdch-pages nav .bottom-nav {
     background-color: #FFF !important;
     height: 100%;
   }

   body.mhs-jdch-pages nav .bottom-nav .logo img {
     height: auto;
   }

   body .prox-nav.mobile .nav-collapse {
     background: #FFF;
   }

   body .prox-nav.mobile .visible-mobile {
     margin-top: -.45em;
   }

   body .hero img {
     right: -50%;
   }

   body.mhs-jdch-pages .inner-banner::after {
     height: .35em;
   }

   body.mhs-jdch-pages .hero img {
     margin-top: 3.5em;
   }

 }

 /* end Hero */





 /**
  * Main nav
  *
  * Add styling to main nav so that it
  * looks good on smaller screens
  */

 body nav .bottom-nav {
   background-color: rgba(255,255,255,.85);
 }

 body.mhs-jdch-pages header nav .bottom-nav .navbar-right .menu-button > a,
 body.mhs-jdch-pages header.small nav .bottom-nav .navbar-right .menu-button > a {
   padding-left: 1.25em;
   padding-right: 1.25em;
   font-size: .95em;
 }
   body.mhs-jdch-pages header nav .bottom-nav .navbar-right .menu-button > a[href='/physicians'] {
     padding-left: 2em;
     padding-right: 2em;
   }
   body.mhs-jdch-pages header.small nav .bottom-nav .navbar-right .menu-button > a {
     padding-top: 1em;
   }



 @media screen and (max-width: 2000px) {

   body.mhs-jdch-pages header nav .bottom-nav .navbar-right .menu-button > a {
     max-height: 100%;
     padding-top: 1.5vw;
   }

   body.mhs-jdch-pages nav .bottom-nav {
     overflow: hidden;
   }

   body.mhs-jdch-pages nav .bottom-nav .navbar-right {
     height: 5.85vw;
   }

 }



 @media screen and (max-width: 1800px) {

   body.mhs-jdch-pages header.small nav .bottom-nav .navbar-right .menu-button.options .dropdown-toggle::after {
     display: none;
   }

   body.mhs-jdch-pages header nav .bottom-nav .navbar-right .menu-button > a {
     padding-top: 1.25vw;
   }

 }




 @media screen and (max-width: 1600px) {

   body.mhs-jdch-pages header nav .bottom-nav .navbar-right .menu-button.options .dropdown-toggle::after {
     display: none;
   }

 }



 @media screen and (max-width: 1400px) {

   body.mhs-jdch-pages header nav .bottom-nav .navbar-right .menu-button > a,
   body.mhs-jdch-pages header.small nav .bottom-nav .navbar-right .menu-button > a {
     padding-top: 1vw;
     line-height: 1.15em;
     font-size: .875em;
   }

 }




 @media screen and (max-width: 1150px) {

   body.mhs-jdch-pages header nav .bottom-nav .navbar-right .menu-button > a,
   body.mhs-jdch-pages header.small nav .bottom-nav .navbar-right .menu-button > a {
     padding-left: 1.5em;
     padding-right: 1.5em;
     font-size: .75em;
   }

   body.mhs-jdch-pages nav .bottom-nav .navbar-right .menu-button .dropdown-toggle {
   }

   body.mhs-jdch-pages nav .bottom-nav {
     background-color: #FFF;
   }

 }




 @media screen and (max-width: 950px) {

   body.mhs-jdch-pages header nav .bottom-nav .navbar-right .menu-button > a,
   body.mhs-jdch-pages header.small nav .bottom-nav .navbar-right .menu-button > a {
     font-size: .65em;
   }

 }




 @media screen and (max-width: 830px) {

   body.mhs-jdch-pages header nav .bottom-nav .navbar-right .menu-button > a,
   body.mhs-jdch-pages header.small nav .bottom-nav .navbar-right .menu-button > a {
     font-size: .6em;
   }

 }

 @media screen and (max-width: 767px) {

   body.mhs-jdch-pages header:not(.small) nav .bottom-nav {
     min-height: 3.5em;
   }

 }

 /* end Main nav */





 /**
  * Breadcrumb
  *
  * Let's keep those breadcrumbs
  * tidy amd neat now
  */

 body.mhs-jdch-pages .breadcrumb {
   margin-top: 11em;
 }

 @media screen and (max-width: 2100px) {

   body.mhs-jdch-pages .breadcrumb {
     margin-top: 9vw;
   }

 }

 /* end Breadcrumbs */





 /**
  * Full width image
  *
  * Full width image doesn't look
  * so great on small screens
  */

 body .full-width-image-container img {
   margin-top: -5.5vw;
   transition: all .2s;
 }

 @media screen and (max-width: 2200px) {

   body .full-width-image-container img {
     margin-top: -3vw;
   }

 }

 @media screen and (max-width: 1700px) {

   body .full-width-image-container img {
     margin-top: 0;
   }

 }

 @media screen and (max-width: 1200px) {

   .full-width-image-container {
     display: none;
   }

 }

  /* end Full width image */






 /**
  * Logo
  * Fixes logo placement to be
  * vertically centered
  */

 /* body.mhs-jdch-pages .bottom-nav .logo {
   position: absolute;
   top: 50%;
   transform: translateY(-.4vw);
 } */

 body.mhs-jdch-pages .bottom-nav .logo a {
   display: block;
 }

 body.mhs-jdch-pages footer .logo a {
   display: block;
 }

 @media screen and (max-width: 1750px) {

  body.mhs-jdch-pages .bottom-nav .logo {
    transform: translateY(-.4vw);
  }

  body.mhs-jdch-pages nav .bottom-nav .logo img {
    height: 3.5vw;
    min-height: 2em;
    margin-top: 1.5vw !important;
  }
}

 @media screen and (max-width: 767px) {

   body.mhs-jdch-pages .bottom-nav .logo {
     position: relative;
     top: .5em;
   }

   body.mhs-jdch-pages header.small .top-nav .sticky-logo {
     background-image: url('/assets/images/mhs-m-logo.png');
     background-repeat: no-repeat;
     background-size: 100%;
     background-position: 1px;
   }

   body.mhs-jdch-pages header.small .top-nav .sticky-logo img {
     opacity: 0;
   }

 }

  /* end logo




 /**
  * Proximity nav
  *
  * Fixes issue where proximity nav in sidebar
  * is not full height before js loads
  */

 body .sidebar .prox-nav nav:after {
   display: block;
   content: "";
   clear: both;
 }


 @media screen and (max-width: 767px) {

   body.mhs-jdch-pages .mobile.prox-nav {
     margin-top: 6.5em;
   }

 }

 /* end Proximity nav */





 /**
  * Utility nav
  *
  * Style for utility nav dropdown where
  * items display in a vertical list
  */
 .secondary-nav-buttons .dropdown-menu {
   width: 100% !important;
   min-width: 100% !important;
   padding-left: 0 !important;
   padding-right: 0 !important;
 }

 .secondary-nav-buttons .dropdown-menu .columns {
     width: 100%;
 }

 .secondary-nav-buttons .dropdown-menu ul li {
     width: 100%;
     border: none !important;
 }

 .secondary-nav-buttons .dropdown-menu ul li a {
     display: block;
     color: #00529c !important;
     text-align: center;
 }
   .secondary-nav-buttons .dropdown-menu ul li a:hover {
     color: #FFF !important;
   }

 /* end Utility nav */





 /**
  * Footer copy color, size
  *
  * Makes footer copy white instead of pale
  * blue and larger for ADA compliance
  */

 footer .copy .copyright-text,
 footer .copy a {
   color: #FFF;
 }

 footer .copy .info,
 footer, .copy .copyright-text {
   font-size: 1.15em;
 }

 footer .memorial-image {
   width: 20em;
   height: 100%;
 }

 /* end Footer copy color */





 /**
  * Image feature call outs
  *
  * Let's add some margin to the top,
  * especially for smaller screens
  */

 body.mhs-jdch-pages .image-features {
   margin: 3em 0;
 }
   body.mhs-jdch-pages .image-features::after {
     display: block;
     content: "";
     clear: both;
   }


 @media screen and (max-width: 850px) {

   body.mhs-jdch-pages .image-features {
     margin-top: 4em;
     margin-bottom: 0;
   }

 }

 /* end Image feature call outs





 /**
  * Faculty list with bio
  *
  * New style for faculty list that
  * inludes bio
  */

 ul.faculty-list-bio,
 ul.faculty-list-bio * {
   list-style: none;
   padding: 0;
 }

 /* faculty-member */
 ul.faculty-list-bio > li {
   max-width: 825px;
   padding: 1em;
   margin-bottom: 1em;
 }
   ul.faculty-list-bio > li:after {
     display: block;
     content: "";
     clear: both;
   }

 /* photo */
 ul.faculty-list-bio > li > img {
   height: unset !important;
   width: 30% !important;
   max-width: 175px;
   float: left;
   margin-right: 1em;
 }
   @media screen and (max-width: 500px) {

     ul.faculty-list-bio > li > img {
       display: block;
       width: 100% !important;
       margin: 0 auto 1em auto;
       float: none;
     }

   }

 /* name */
 ul.faculty-list-bio > li > ul > li:first-child {
   font-size: 1.2em;
   font-weight: bold;
 }

 /* section title */
 ul.faculty-list-bio + h4 {
   padding-top: 1em;
   margin-top: 2em;
   border-top: solid 2px #EEE;
 }

 /* end Faculty list with bio */





 /**
  * Schedule table
  *
  * Adds a class for a styled
  * table-like schedule
  */

  ul.schedule-table {
     max-width: 675px;
     padding: 0;
     text-align: right;
     font-size: 1em;
   }
   ul.schedule-table * {
     list-style: none;
     padding: 0;
   }

 ul.schedule-table > li {
   clear: both;
 }

 ul.schedule-table > li > ul {
   text-align: right;
 }
   ul.schedule-table > li > ul:after {
     display: block;
     content: "";
     clear: both;
   }

 ul.schedule-table li.header {
   display: inline-table;
   width: 61%;
   padding: .5em;
   text-align: center;
   background: #15A9B8;
   color: #FFF;
   /*text-align: center;*/
 }

 ul.schedule-table > li > ul > li {
   display: inline-table;
   width: 30%;
   padding: 0 1em;
   margin: 3px 0 .25% 3px;
   line-height: 40px;
   background: #F1F1F1;
   text-align: center;
 }
   ul.schedule-table > li:not(.heading) > ul > li:first-child {
     text-align: right;
     font-weight: bold;
     background: #E1E1E1;
   }
   ul.schedule-table > li.heading > ul > li {
     background: #E1E1E1;
     font-weight: bold;
   }



 @media screen and (max-width: 560px) {

   ul.schedule-table > li > ul > li {
     width: 48%;
   }

   ul.schedule-table > li:not(.heading) > ul > li:first-child {
     width: 97.5%;
     margin-top: 1em;
     text-align: center;
   }

   ul.schedule-table li.header {
     width: 97%;
   }

   ul.schedule-table li.heading {
     font-size: 3.5vw;
   }

 }

  /* end Schedule table





 /**
  * Calendar dates
  *
  * Add some spacing and font size
  * styling for calendar dates
  */
  .module-ce-topic-profile .module-ce-offerdates {
    margin-top: 3em;
  }

  .module-ce-topic-profile .module-ce-offerdates .module-date {
    font-weight: bold;
    font-size: 1.1em;
  }

  .module-ce-topic-profile .module-ce-offerdates .module-ce-offerdates-item:not(:last-child) {
    padding-bottom: 2.25em;
    border-bottom: dotted 1px #CCC;
  }

  /* end Calendar dates





 /**
  * Video snippet
  *
  * Fixes play button icon overlay to be centered and
  * adds contrasting background behind play button so
  * that it can be seen on lighter screenshots and
  * allows video to be larger than 50% width on
  * smaller screen sizes
  */

 body .smartSnippet .video-callout .play-icon-wrap {
   top: 0;
   height: inherit;
   padding-top: 56.25%;
 }

 body .video:hover {
   cursor: pointer;
 }

 body .video .image.after::after {
   position: absolute;
   background: rgba(0,0,0,0.4);
   border: solid 3px rgba(255,255,255,0.8);
   padding: .15em .3em .15em .4em;
   top: 50%;
   left: 50%;
   transform: translate(-47%,-50%);
   border-radius: 100%;
   opacity: 1 !important;
   transition: all .2s, border .5s .2s;
   will-change: border-width;
 }
   body .video:hover .image.after::after {
     background: rgba(0,0,0,0.7);
     border-width: 6px;
     border-color: rgba(255,255,255,0.8);
     transition: all .2s, background .5s .2s;
     will-change: border-width;
   }

   body .smartSnippet .video-callout .play-icon-wrap .image.after::after {
     font-size: 54px;
   }

 body .smartSnippet .video-callout .callout-caption {
   color: #555;
   padding: .5em;
   line-height: 1.4em;
 }

 @media screen and (max-width: 800px) {

   body .smartSnippet .video-callout {
     max-width: 600px;
     margin-left: auto;
     margin-right: auto;
     float: none;
   }

 }

 /* end video snippet */





 /**
  * Form
  *
  * Adds margin to bottom of forms and keeps
  * forms from being huge on larger window
  */

 .scfForm {
   margin-bottom: 3em;
 }
   .scfForm:after {
     display: block;
     content: "";
     clear: both;
   }

 .scfForm input,
 .scfForm textarea {
   max-width: 600px;
 }

 /* end form */





 /**
  * CTA, 3-button
  *
  * Adds a class for a 3-button CTA group
  * to be displayed within page copy
  */

 ul.cta-3-button {
   display: flex;
   list-style: none;
   padding: 0;
 }
   ul.cta-3-button::after {
     display: block;
     content: "";
     clear: both;
   }

 ul.cta-3-button li {
   flex: 1;
   max-width: 7em;
   padding: 0 .25em;
   float: left;
 }
   ul.cta-3-button li:not(:first-child) {
     margin-left: .5em;
   }

 ul.cta-3-button a {
   display: block;
   padding: 7em 0 .25em 0;
   font-size: .8em;
   text-align: center;
   border: solid 1.75px;
   background-repeat: no-repeat;
   background-size: 60%;
   background-position: center 40%;
   transition: padding .2s;
 }
   ul.cta-3-button a:hover {
     background-color: #C1E3E7;
     padding-bottom: .5em;
     padding-top: 6.75em;
     transition: background-color .2s, padding .5s;
   }
   ul.cta-3-button.birthplace li.tour a {
     background-image: url("/assets/images/birthplace-tour-icon.png");
   }
   ul.cta-3-button.birthplace li.class a {
     background-image: url("/assets/images/birthplace-class-icon.png");
   }
   ul.cta-3-button.birthplace li.preregister a {
     background-image: url("/assets/images/birthplace-preregister-icon.png");
     background-size: 50%;
     background-position-y: 32%;
   }

 /* end CTA, 3-button */





 /**
  * Me & Memorial
  *
  * Adds styling for a section
  * called Me & Memorial
  */

 .item-url-me-and-memorial article {
   max-width: 1000px;
   margin: 0 auto;
 }

 .item-url-me-and-memorial .story {
   width: 33.3%;
   margin-bottom: 3em;
   float: left;
 }
   .item-url-me-and-memorial .story-blocks .story:nth-child(3n+1) {
     padding-right: 1.25em;
   }
   .item-url-me-and-memorial .story-blocks .story:nth-child(3n+2) {
     padding-right: .75em;
     padding-left: .75em;
   }
   .item-url-me-and-memorial .story-blocks .story:nth-child(3n+3) {
     padding-left: 1.25em;
   }
   .item-url-me-and-memorial .story.featured {
     width: 100%;
     padding: 0;
     float: none;
   }

 .item-url-me-and-memorial .story .image {
   position: relative;
   width: 100%;
   padding-top: 66%;
   overflow: hidden;
 }
   .item-url-me-and-memorial .story.featured .image {
     padding-top: 35%;
   }

 .item-url-me-and-memorial .story .image img {
   position: absolute;
   width: 100%;
   top: 0;
   left: 0;
 }

 .item-url-me-and-memorial .story h2 {
   font-size: 1.2em;
 }
   .item-url-me-and-memorial .story.featured h2 {
     font-size: 1.6em;
   }
   .item-url-me-and-memorial .story .image + h2 {
     margin-top: .5em;
   }

 .item-url-me-and-memorial .story h2 + p {
   margin-top: 0;
 }

 /* end Me & Memorial





 /**
  * Health library
  *
  * Adds styling to temporary
  * health library page
  */

 .health-library-search {
   padding: 1em;
   margin-bottom: 2em;
   background: linear-gradient(to right, #EAEAEA, #FFF)
 }

 #health-library-search-field {
   width: 75%;
   margin-right: 1em;

   @media screen and (max-width: 552px) {
      margin-bottom: 1em;
    }
  }

 #health-library-search .module-ss-results-message {
   margin-bottom: 2em;
 }

 #health-library-search-results-tabs {
   margin-top: 2em;
 }

 #health-library-search-results-tabs .tab {
   position: relative;
   padding: .5em 1em .75em 1em;
   background: #EAEAEA;
   border: solid 1px #CCC;
   border-bottom: none;
   cursor: pointer;
 }
   #health-library-search-results-tabs .tab.active {
     padding-top: .75em;
     background: #FFF;
     z-index: 2;
   }


 #health-library-search-results {
   background: #FFF;
   padding-top: 2em;
   margin-top: .5em;
   position: relative;
   border-top: solid 1px #CCC;
   z-index: 1;
 }

 #health-library-search-results .health-library-search-results-folder {
   display: none;
 }
   #health-library-search-results .health-library-search-results-folder.active {
     display: block;
   }

 #health-library-search-results ul {
   list-style: none;
   padding: 0;
 }

 #health-library-search-results li.result {
   margin-bottom: 2em;
   opacity: 1;
   transition: all 1s;
 }
   #health-library-search-results li.result.fadein {
     opacity: 0;
   }

 #health-library-article-results a.title {
   display: inline-block;
   margin-bottom: .25em;
   font-size: 1.2em;
   border-bottom: none;
 }

 .item-url-healthlibrary .content-area article .footer {
   padding-top: .5em;
   margin-top: 3em;
   font-size: .75em;
   border-top: solid .1px;
 }

 .item-url-healthlibrary .content-area article #imagecolumn1,
 .item-url-healthlibrary .content-area article #imagecolumn2 {
   max-width: 36%;
   float: right;
   margin: 1em 2em 0 2em;
 }

 .item-url-healthlibrary .content-area article #imagecolumn1 img,
 .item-url-healthlibrary .content-area article #imagecolumn2 img {
   width: 100%;
 }

 .item-url-healthlibrary .content-area article #title {
   margin-bottom: 1.5em;
 }

 .item-url-healthlibrary .content-area article #title h3,
 .item-url-healthlibrary .content-area article #title h4 {
   display: inline;
   margin-right: .2em;
   font-size: 1.4em;
 }

 .item-url-healthlibrary .content-area article h5 {
   font-size: 1.15em;
   font-weight: bold;
 }
   .item-url-healthlibrary .content-area article p + h5 {
     margin-top: 1.5em;
   }

 .item-url-healthlibrary .content-area article h5 + ul,
 .item-url-healthlibrary .content-area article ul.do_list + ul.dont_list {
   padding-top: 0;
 }

 .item-url-healthlibrary .content-area article #info {
   margin-top: 2em;
 }

 .item-url-healthlibrary .content-area article #bottom,
 .item-url-healthlibrary .content-area article #bottom1 {
   font-size: .85em;
 }
   .item-url-healthlibrary .content-area article #bottom {
     padding-top: .5em;
     margin-top: 3em;
     border-top: solid .5px;
   }

 .item-url-healthlibrary .content-area article #bottom p,
 .item-url-healthlibrary .content-area article #bottom1 p {
   margin: 0;
   text-align: right;
 }

 .item-url-healthlibrary .content-area article .video-placeholder {
   position: relative;
   width: 100%;
   padding-top: 56.25%;
   margin: 1em 0;
   background: #FAFAFA;
   border: solid .5px #CCC;
 }

 .item-url-healthlibrary .content-area article .video-placeholder video {
   position: absolute;
   height: 100%;
   width: 100%;
   top: 0;
   left: 0;
 }


 @media screen and (max-width: 600px) {

   .item-url-healthlibrary .content-area article #imagecolumn1,
   .item-url-healthlibrary .content-area article #imagecolumn2 {
     display: none;
   }

 }
