/* ==========================================================================
   Print Stylesheet
   ========================================================================== */

/**
 * 1. Set default page properties.
 * 2. Specify margin for all pages.
 * 3. Define specific margins for the first page.
 */
@page {
  size: A4 portrait; /* [1] */
  margin: 1,5cm 2cm; /* [2] */
}

@page :first {
  margin-top: 3cm; /* [3] */
}

body {
  /* font-family: 'Times New Roman', Times, serif; */
  font-size: 12pt;
  line-height: 1.4;
  color: #000 !important;
  background: #fff !important;
  widows: 3;
  orphans: 3;
}

/* Hide non-essential elements */
header,
footer,
nav,
aside,
.no-print {
  display: none;
}

/* Main content adjustments */
main,
article {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}

/* Typography for print */
h1, h2, h3, h4, h5, h6 {
  page-break-after: avoid;
  page-break-inside: avoid;
  color: #000;
}

h1 { font-size: 24pt; }
h2 { font-size: 18pt; }
h3 { font-size: 14pt; }

p, blockquote {
  orphans: 3;
  widows: 3;
}

blockquote {
  font-style: italic;
  padding: 0 2em;
  border-left: 1px solid #ccc;
}

/* Link handling */
a,
a:visited {
  color: #444;
  text-decoration: underline;
}

/* Show the URL of links, but not for internal links or JavaScript links */
a[href]:after {
  content: " (" attr(href) ")";
}
a[href^="#"]:after,
a[href^="javascript:"]:after {
  content: "";
}

/* Image and media handling */
img,
svg,
figure {
  max-width: 100% !important;
  page-break-inside: avoid;
}

/* Table styling */
table {
  width: 100%;
  border-collapse: collapse;
  page-break-inside: auto;
}

thead {
  display: table-header-group; /* Repeat table headers on each page */
}

tr, td, th {
  page-break-inside: avoid;
}

th,
td {
  border: 1px solid #ddd;
  padding: 8px;
}

/* Code blocks */
pre,
code {
  background: #f4f4f4;
  border: 1px solid #ddd;
  padding: 1em;
  white-space: pre-wrap;
  word-wrap: break-word;
  page-break-inside: avoid;
}

/* Class to force a page break before an element */
.page-break-before {
  page-break-before: always;
}

/* Class to prevent page breaks inside an element */
.avoid-page-break {
  page-break-inside: avoid;
}

header
.head {
  display: block !important;
  border: 0 !important;
  box-shadow: none !important;
  background-color: #fff !important;
}

.hero,
.docs_topbar {
  background-color: #fff !important;
  text-align: left !important;
  box-shadow: none !important;
  border: 0 !important;
}

.hero > div {
  height: auto !important;
  min-height: 0 !important;
  text-align: left !important;
  display: block !important;
}

.hero h1 {
  color: #000 !important;
  margin-bottom: 40px !important;
  text-align: left !important;
}

.content {
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}

.noprint,
footer,
.breadcrumbs,
.keywords,
.related_headline,
.related,
.documents,
.documents_header,
.article__rating,
.toc_container,
#navigation {
    display: none !important;
}