
  /*PRINT.CSS - Foglio di stile per la stampa*/

  /*  TODO
    -dona ora da non loggato fa schifo
  */
  


@media print {

  /*Impostazioni pagina default*/
  @page {
    size: A4 portrait;
    margin: 20px 25px 20px 25px;
  }

  * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    background: transparent;
    background-image: none;
    box-shadow: none;
    text-shadow: none;
    color: #000000
  }

  html, body {
    width: 100%;
    height: auto;
    font-family: "Times New Roman", Georgia, serif;
    font-size: 12px;
    line-height: 18px;
    color: #000;
    background: #fff;
    text-align: left;
  }

  *, *::before, *::after {
    text-align: left;
  }

  h1, h2, h3, h4 {
    font-family: "Times New Roman", Georgia, serif;
    color: #000;
    text-align: left;
    page-break-after: avoid;
    page-break-inside: avoid;
    margin-bottom: 10px;
    page-break-before: avoid;
  }

  h1 { font-size: 24px; line-height: 30px; margin-top: 0; text-align: left; }
  h2 { font-size: 22px; line-height: 28px; margin-top: 12px; }
  h3 { font-size: 18px; line-height: 24px; margin-top: 10px; }
  h4 { font-size: 15px; line-height: 21px; margin-top: 8px; }

  p,
  .text-standard,
  .text-standard p,
  .text-standard li,
  .text-standard dd,
  #card-why-us p,
  #card-locations div p,
  .text-standard a,
  .text-standard a:visited,
  .location a,
  .location a:visited {
    width: 100%;
    font-size: 12px;
    line-height: 18px;
    margin-bottom: 6px;
    margin-left: 0;
    padding: 0;
    text-align: left;
    color: #000;
    orphans: 2;
    widows: 2;
    box-shadow: none;
  }

  .text-standard dt {
    color: #000;
    font-size: 12px;
    font-weight: bold;
    line-height: 18px;
  }  

  abbr {
    text-decoration: none;
  }

  abbr[title]::after {
    content: " (" attr(title) ")";
    font-size: 10px;
    font-style: italic;
  }

  /* gestione impaginazione */
  .page-break {
    display: block;
    page-break-before: always;
    break-before: page;
  }

  li, dd {
    orphans: 2;
    widows: 2;
  }

  /* Header di stampa e titoli*/
  /* breadcrumb */
  #breadcrumb {
    display: block;
    visibility: visible;
    width: 100%;
    padding: 8px 0;
    margin: 0 0 15px 0;
    border-bottom: 1px solid #000;
    border-radius: 0;
    text-align: left;
  }

  #breadcrumb p {
    font-size: 11px;
    color: #000;
    margin: 0;
    text-align: left;
  }

  #breadcrumb span {
    font-weight: bold;
  }

  /* titoli */
  #landing-title {
    height: auto;
    width: 100%;
    padding: 20px 0;
    border-bottom: 2px solid #000;
  }

  #landing-title h1 {
    text-align: left;
    margin: 0 0 10px 0;
    font-size: 24px;
    line-height: 30px;
    position: relative;
    padding-left: 40px;
  }

  #landing-title h2 {
    text-align: left;
    margin: 0;
    font-size: 14px;
    padding-left: 40px;
  }

  #landing-title h1 abbr,
  #title-standard h1 abbr {
    white-space: nowrap;
  }

  #title-standard {
    display: block;
    text-align: left;
    margin-bottom: 20px;
    padding-bottom: 10px;
    margin: 0;
    border-bottom: 2px solid #000;
  }

  #title-standard h1 {
    font-size: 24px;
    line-height: 30px;
    position: relative;
    padding-left: 40px;
  }

  #title-standard h2 {
    font-size: 14px;
  }

  #title-standard::before {
    display: none;
    content: none;
  }

  .tertiary-title {
    font-size: 16px;
    line-height: 20px;
    border: none;
    border-left: none;
    padding: 0;
    padding-left: 0;
    margin: 10px 0 6px 0;
    color: #000;
    background: transparent;
  }

  #titolo-future,
  #titolo-storico {
    color: #000;
    margin: 0;
    padding-left: 0;
    border-left: none;
  }

  .tertiary-title-centered {
  color: #000;
  margin: 0;
  padding-bottom: 16px;
  text-align: left;
  border-left: none;
  padding-left: 0;
  width: 100%;
}

  /* Logo */
  #title-standard h1::before,
  #landing-title h1::before {
    content: "";
    display: inline-block;
    width: 30px;
    height: 30px;
    background: url("../images/logo.jpg") no-repeat center center;
    background-size: contain;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  /* indirizzi link */
  a {
    color: #000;
    font-weight: normal;
    background: transparent;
    border: none;
    padding: 0;
    margin: 0;
    border-radius: 0;
    display: inline;
    text-transform: none;
    letter-spacing: normal;
    pointer-events: none;
  }

  .btn-std,
  .btn-index,
  .btn-profile,
  .btn-table,
  .btn-wrapper {
    width: 100%;
    font-size: 12px;
    line-height: 18px;
    margin-top: 8px;
    margin-bottom: 10px;
    margin-left: 0;
    padding: 0;
    justify-content: left;
    text-align: left;
    color: #000;
    padding: 8px, 0px, 10px, 0px;
  }

  /* link esterni */
  a[href]::after {
    content: " (" attr(href) ")";
    font-size: 8px;
    font-style: italic;
    color: #666;

    word-break: break-all;
  }

  /* link interni */
  a[href^="#"]::after,
  a[href^="javascript"]::after,
  #breadcrumb a::after {
    content: "";
  }

  /* ELEMENTI DA NASCONDERE */
  /* Header e navigazione */
  .sticky-header,
  header,
  #menu,
  #menu ul,
  #menu li,
  .burger-menu,
  #burger-input,
  .navigation-helper,
  .nav-helper,
  #linkProfilo,
  #linkProfiloActive,
  #imgProfilo,
  #logo,
  /* Footer*/
  footer,
  .footer-buttons,
  .footer-social,
  .footer-container,
  .footer-copyright,
  .left-footer,
  .right-footer,
  .vertical-divider,
  /* Carosello e animazioni */
  /* nascondo immagini e carosello */
  img,
  #card-intro img,
  #card-why-us img,
  #card-join img,
  .location img,
  .profile-picture,
  .profile-picture img,
  .profile-header,
  .carousel,
  .carousel-track,
  /*dove_trovarci, ricerca nulla*/
  #noResults,
  .no-results-message,
  /* dialoghi*/
  dialog,
  /* altri elementi da nascondere */
  .drop,
  .btn-full,
  .btn-link,
  .btn-logout,
  .search-container,
  .back-button-container,
  .back-button,
  button,
  input[type="submit"],
  input[type="reset"],
  .text-separator {
    display: none;
    visibility: hidden;
  }

  /* login e form */
  /* Form base per login e registrazione */

  #info-user,
  #info-pass {
    width: 100%;
    font-size: 8px;
    line-height: 10px;
    margin: 0;
    padding: 0;
    text-align: left;
    color: #000;
  }

  form,
  #prenotaForm {
    display: block;
    visibility: visible;
    max-width: 100%;
    width: 100%;
    margin: 0;
    padding: 0;
    border: none;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }

  form fieldset,
  #prenotaForm fieldset {
    text-align: left;
    border: none;
    margin-bottom: 30px;
    padding: 0;
    background: transparent;
    border-radius: 0;
    box-shadow: none;
  }

  form legend,
  #prenotaForm legend {
    text-align: left;
    font-size: 14px;
    font-weight: bold;
    padding: 0;
    background: #fff;
    border-radius: 0;
    box-shadow: none;
  }

  /* Campi input visibili nei form */
  form input,
  form select,
  form textarea,
  #prenotaForm input,
  #prenotaForm select {
    display: block;
    visibility: visible;
    width: 100%;
    padding: 5px;
    margin-bottom: 6px;
    border: none;
    border-bottom: 1px solid #999;
    border-radius: 0;
    font-size: 12px;
    line-height: 18px;
    background: transparent;
    box-shadow: none;
  }

  form label,
  #prenotaForm label {
    display: block;
    font-size: 12px;
    font-weight: bold;
    margin-bottom: 5px;
    color: #000;
    box-shadow: none;
  }

  /* Radio buttons */
  .radio-standard {
    border: none;
    padding: 5px 0;
    background: transparent;
  }

  .radio-standard input[type="radio"] {
    width: auto;
    display: inline;
    margin-right: 8px;
  }

  .radio-standard label {
    display: inline;
    font-weight: normal;
  }

  /* main content */
  main, 
  .main-standard {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 15px 0;
    background: #fff;
  }

  .dashboard-container {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
  }

  /*index*/
  /* Card e sezioni*/
  #card-intro,
  #card-join,
  #card-intro,
  #card-join,
  #card-join ul,
  #card-join li,
  #card-join ul li p,
  #card-why-us,
  #card-locations {
    text-align: left;
    display: block;
    width: 100%;
    height: auto;
    margin: 0;
    border: none;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    flex-direction: column;
  }

  .card-main-title,
  #card-join-title h2 {
    font-size: 22px; 
    line-height: 28px; 
    margin-top: 16px;
    margin-bottom: 8px;
    color: #000;
    text-align: left;
    margin: 0;
    padding: 0;
  }
  
  /*card intro*/
  #card-intro div,
  #card-locations div {
    width: 100%;
    margin: 0;
    padding: 0;
    text-align: left;
    background: transparent;
    box-shadow: none;
    border-radius: 0;
    position: relative;
  }

  /* Card join */
  #card-join-title p,
  #card-intro p {
    text-align: left;
    font-size: 12px;
    line-height: 18px;
  }

  #div-why-us h3 {
    color: #000;
    font-size: 14px;
    page-break-after: avoid;
    margin-bottom: 0;
  }

  /*card location*/
  #card-locations::before {
    box-shadow: none;
    display: none;
    content: none;
  }

  /*dove trovarci*/
  .location {
    box-shadow: none;
    text-align: left;
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid #ccc;
    border-radius: 0;
  }

  /* Locations container */
  .locations-container {
    display: block;
    width: 100%;
  }

  .location h3 {
    font-size: 14px;
    color: #000;
  }

  .location p,
  .location a {
    color: #000;
  }

  /* Founders */
  #founders {
    display: block;
    margin: 0;
    align-self: auto;
    text-align: left;
    background: transparent;
    box-shadow: none;
  }

  #founders h3 {
    margin: 0;
    text-align: left;
    font-size: 16px;
    color: #000;
  }

  #founders p {
    margin: 0;
    text-align: left;
    color: #000;
    margin-bottom: 10px;
  }

  #founders ul {
    margin: 0;
    text-align: left;
    display: block;
    list-style: disc;
  }

  #founders li {
    margin: 0;
    text-align: left;
    display: list-item;
    margin-bottom: 8px;
    padding: 0;
    border: none;
    background: transparent;
    color: #000;
    font-size: 12px;
    box-shadow: none;
  }

  /* faq */
  .faq-atds,
  .faq {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
    text-align: left;
  }

  .faq dt,
  .faq dd {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin: 0;
    text-align: left;
    align-self: auto;
  }
  
  .faq dt {
    font-weight: 700;
    font-size: 14px;
    color: #000000;
    align-items: center;
    line-height: 21px;
    background: #ffffff;
    margin-top: 20px;
    margin-bottom: 8px;
    border-radius: 0 0 0 0;
    position: relative;
    z-index: 2;
  }

  .faq dd {
    line-height: 18px;
    font-size: 12px;
    color: #000000;
    background: #ffffff;
    border-radius: 0 0 0 0;
    box-shadow: none;
    position: relative;
    align-items: left;
    z-index: 1;
  }

  .faq dt:first-of-type {
    margin-top: 10px;
  }
   
  .faq dt::before {
    display: none;
    content: none;
  }

  .faq dt:nth-of-type(even) {
    flex-direction: row;
    text-align: left;
  }

  .faq dt:nth-of-type(even)::before {
    margin-right: 0;
    margin-left: 0;
  }

  .faq dt,
  .faq dt:nth-of-type(odd),
  .faq dt:nth-of-type(even),
  .faq dt:nth-of-type(odd) + dd,
  .faq dt:nth-of-type(even) + dd,
  .faq dd,
  .faq dd li {
    border-left: none;
    border-right: none;
    background: transparent;
    box-shadow: none;
    color: #000;
  }

  .faq dd li::marker {
    color: #000;
  }

  /* tabelle */
  table,
  .data-table {
    width: 100%;
    border-collapse: collapse;
    margin: 15px 0;
  }

  .table-container {
    overflow: visible;
  }

  table thead,
  .data-table thead {
    display: table-header-group;
  }

  table tr,
  .data-table tr {
    page-break-inside: avoid;
  }

  th, td,
  .data-table th,
  .data-table td {
    border: 1px solid #000;
    padding: 8px;
    font-size: 11px;
    text-align: left;
    color: #000;
    background: transparent;
  }

  th,
  .data-table th {
    font-weight: bold;
    background: #eee;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .data-table caption {
    font-size: 14px;
    font-weight: bold;
    color: #000;
    margin-bottom: 10px;
  }

  /* Nascondere pulsanti nelle tabelle*/
  .data-table button,
  .btn-cancel-booking,
  .form-inline-table {
    display: none;
    visibility: hidden;
  }

  #disclaimer {
    border: none;
    padding: 0;
    margin: 20px 0;
    font-size: 12px;
    line-height: 18px;
    background: transparent;
    box-shadow: none;
  }

  #disclaimer-title {
    font-size: 14px;
    font-weight: bold;
    color: #000;
  }

  #disclaimer p {
    font-size: 12px;
    line-height: 18px;
    color: #000;
  }

  /* profilo */
  .dashboard-title {
    font-size: 18px;
    color: #000;
    text-align: center;
    border-bottom: none;
  }

  #sede-donazioni option {
    padding: 0;
    margin: 0;
    text-align: left;
  }

  .profile-admin label[for="sede-donazioni"] {
    display: block;
    color: #000000;
    margin: 0;
    padding: 0;
    text-align: left;
  }

  .select-locations-admin,
  .select-locations-admin select {
    justify-content: left;
    width: 100%;
    border: none;
    background-color: none;
    color: #000000;
  }

  /* grid cards */
  .profile-cards-grid {
    display: block;
    width: 100%;
    margin: 20px 0;
  }

  .profile-card {
    display: block;
    width: 100%;
    margin-bottom: 20px;
    padding-bottom: 15px;
    background: transparent;
    border: none;
    border-radius: 0;
    box-shadow: none;
    page-break-inside: avoid;
  }

  .profile-card-title {
    border-bottom: 1px solid #ccc;
    font-size: 14px;
    font-weight: bold;
    color: #000;
    margin: 0 0 10px 0;
    padding: 0;
    page-break-after: avoid;
  }

  .data-list-compact {
    width: 100%;
    margin: 0;
    padding: 0;
  }

  .data-list-compact div {
    display: block;
    margin: 0;
    padding: 0;
    width: 100%;
    border: none;
    border-bottom: none;
    background: transparent;
  }

  .data-list-compact div:not(:last-child) {
    border-bottom: none;
  }

  .data-list-compact dt {
    font-size: 11px;
    font-weight: bold;
    color: #000;
    display: inline;
    margin: 0;
    padding: 0;
  }

  .data-list-compact dd {
    font-size: 11px;
    color: #000;
    display: inline;
    margin: 0;
    padding: 0;
    margin-left: 5px;
  }

  .blood-type-badge {
    border: none;
    padding: 0;
    font-weight: bold;
    display: inline;
    color: #000;
    box-shadow: none;
    background: transparent;
  }

  .text-uppercase {
    text-transform: uppercase;
  }

  /* Messaggi di stato */
  .msg-base,
  .msg-success,
  .msg-error,
  .msg-flash {
    border: none;
    padding: 5px 0;
    background: transparent;
    color: #000;
    font-size: 12px;
  }

  /* Status prenotazioni */
  .status-completed {
    color: #000;
    font-weight: bold;
  }

  /* pagine di errore */
  .error-page,
  .error-container,
  .error-content {
    width: 100%;
    padding: 0;
    margin: 0;
    background: transparent;
  }

  .error-code {
    font-size: 48px;
    color: #000;
  }

  .error-message,
  .error-description {
    font-size: 12px;
    color: #000;
  }

  .error-actions,
  .error-image {
    display: none;
    visibility: hidden;
  }

  /* resetto posizioni strane */
  * {
    position: static;
    float: none;
  }
}
