/*
Eirene Proprietary Software
Copyright © 2022–2026 Eirene Labs Inc. All rights reserved.
Eirene and the Eirene Labs names and logos are trademarks of Eirene Labs Inc.
Unauthorized copying, reproduction, distribution, or use of this file, its source code, or its text,
in whole or in part, is prohibited except as authorized by Eirene Labs Inc. or permitted by applicable law.
*/
/* Shared only by the bilingual Privacy, Terms of Use and Terms of Service pages.
   Keep the first-page bookmark in the document gutter. The final footer stays
   in document flow: paper height must never force an extra blank sheet. */
@media print {
  @page { size: auto; margin: 1in 1in 1in .5in; }
  p, li, dd, dt, blockquote, .page-header__description {
    line-height: 1.25 !important;
    margin-bottom: .3rem !important;
  }
  .legal.page-header, .legal.page-header > .col-2__item {
    page-break-inside: auto;
    break-inside: auto;
  }
  #top .legal.page-header > .col-2__item:last-child { margin-bottom: 0 !important; }
  /* Screen bookmarks span the entire article grid; printed paragraphs must
     paginate as ordinary blocks, while retaining the separate margin bookmark without a title-only sheet. */
  #top .legal.page-header .page-header__description { position: relative !important; display: block !important; padding-left: 2.8rem !important; }
  header > :not(.header-logo) { display: none !important; }
  /* Glass/header artwork must not become a translucent page-sized layer when
     print layout creates flex stacking contexts. Preserve the real logo. */
  #top .header-wrapper::before, #top .header-wrapper::after,
  #top .background-image::before, #top .background-image::after { display: none !important; content: none !important; }
  #top .menu-lang-w, #top .menu-lang-w * { display: none !important; }
  #top .CookieS, #top #cookies-settings { display: none !important; }
  #top header .header-logo::before, #top header .header-logo::after { display: none !important; }
  #top header .header-logo { background-image: none !important; }
  #top header .legal-print-logo[hidden] { display: block !important; width: 100% !important; height: 100% !important; object-fit: contain; object-position: left center; }
  /* A real vector image and CSS strokes also print with background graphics off.
     Reserve a small inner gutter; browsers clip artwork outside the page content area. */
  #top .legal.page-header .bookmark, #top .legal.page-header .bookmark * {
    animation: none !important; transition: none !important; filter: none !important; opacity: 1 !important;
  }
  #top .legal.page-header .bookmark {
    display: block !important; position: absolute !important; top: var(--legal-print-bookmark-top, 1.6rem) !important; left: 1rem !important;
    width: .25in !important; height: 0 !important; transform: none !important;
  }
  #top .legal.page-header .bookmark--text {
    position: absolute !important; top: 0 !important; left: 0 !important;
    transform: rotate(90deg) !important; transform-origin: left center !important;
    font-size: 8pt !important; line-height: 1 !important; letter-spacing: .08em !important;
  }
  #top .legal.page-header .bookmark--text span { letter-spacing: .08em !important; }
  #top .legal.page-header .bookmark--text::after { display: none !important; }
  #top .legal-print-lines[hidden] {
    display: inline-block !important; width: 4rem !important; height: .65rem !important;
    margin-left: 1rem !important; vertical-align: middle !important;
  }
  footer.footer {
    border-top: .5pt solid #888 !important;
    margin-top: .6rem !important;
    padding-top: .4rem !important;
    page-break-inside: avoid;
    break-inside: avoid;
    break-before: avoid;
  }
  .footer > :not(.notes) { display: none !important; }
  .footer p.notes {
    font-size: 7pt !important;
    line-height: 1.25 !important;
    text-align: left !important;
    color: #444 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  #top .footer p.notes * { color: inherit !important; font: inherit !important; }
  #top .legal-print-details[hidden] {
    display: flex !important; align-items: center !important; justify-content: flex-start !important;
    gap: 1rem !important; margin: 0 0 .5rem !important; font-family: "Source Sans Pro", sans-serif !important; font-size: 6.5pt !important; line-height: 1.25 !important;
  }
  #top .legal-print-details time, #top .legal-print-details a { display: block !important; text-align: left !important; text-decoration: none !important; }
  #top .legal-print-details .legal-print-qr { display: block !important; flex: 0 0 auto !important; width: .4in !important; height: .4in !important; }
  /* Intrinsic sizing runs inside the print engine, after paper selection and
     pagination width are known. A screen/JS height cannot provide that value.
     Keep the footer in flow and leave a two-pixel rounding allowance. Engines
     without calc-size retain the same single footer after the final content. */
  @supports (height: calc-size(auto, round(up, size, 100vh))) {
    #top .site-wrapper {
      display: flex !important; flex-direction: column !important;
      height: calc-size(auto, round(up, size, 100vh) - 2px) !important;
    }
    #top .site-body-wrapper { display: flex !important; flex-direction: column !important; flex: 1 !important; }
    #top .site-body-wrapper > .container { flex: 1 !important; }
    #top footer.footer { margin-top: auto !important; }
  }
}
