@media (min-width: 1200px) { .h1, h1 { font-size: 5rem; line-height: 1.25em; font-weight: 300; font-variation-settings: "wght" 300; }
  .h1.text-muted, h1.text-muted { font-weight: 300; font-variation-settings: "wght" 300; }
  .h2, h2 { font-size: 2.5rem; line-height: 1.25em; }
  h3 { font-weight: 650; font-variation-settings: "wght" 650; }
  section h3 { font-weight: 400; font-variation-settings: "wght" 400; } }
figure.respect-margin img { max-width: 100%; }

@media (min-width: 1600px) { :root { --bs-body-font-size: 1.125rem !important; }
  .Page.container-fluid { width: 1600px; margin: 0 auto; }
  .container-fluid.position-fixed { width: 1600px; left: 50%; transform: translateX(-50%); } }
svg:not(:root) { overflow-clip-margin: content-box; overflow: hidden; }

.Seealso a.nav-link { color: var(--bs-light); }

.Seealso a.nav-link label { position: relative; }

.Seealso a.nav-link label::after { content: ""; position: absolute; bottom: 0; left: 0; width: 100%; height: 2px; background-color: var(--bs-light); transform: scaleX(0.1); transform-origin: bottom left; transition: transform 0.3s ease-in-out; }

.Seealso a.nav-link:hover label::after, .Seealso a.nav-link:focus label::after { transform: scaleX(1); }

.nav { --bs-nav-link-padding-y: 0.3rem; }

.nav-pills { --bs-nav-pills-border-radius: 0.375rem; --bs-nav-pills-link-active-color: var(--bs-dark); --bs-nav-pills-link-active-bg: var(--bs-primary); }

.nav-pills .nav-link { border: 2px solid transparent; }

.nav-pills .nav-link.active { border: 2px solid var(--bs-dark); }

.nav-item .icon { display: flex; position: relative; align-items: center; justify-content: center; }
.nav-item .h-bar, .nav-item .v-bar { background-color: var(--bs-dark); }
.nav-item .h-bar { width: 14px; height: var(--stroke-width); }
.nav-item .v-bar { position: absolute; width: var(--stroke-width); height: 14px; transition: height 0.1s ease-in-out; }

.nav-item.open .v-bar { top: 2px !important; height: 33px !important; }

.nav-item.open .Nav__dropdownToggler, .nav-item.active .Nav__dropdownToggler { opacity: 1; }

.PersonThumbnail .picture { position: relative; display: inline-block; width: 100%; padding-bottom: 100%; overflow: hidden; border: 2px solid var(--bs-dark); border-radius: 16px; transition: 0.2s all ease-in-out; overflow: hidden; }

.PersonThumbnail .strips { position: absolute; z-index: 1; top: 10%; right: 0; width: 100%; text-align: right; }

a.PersonThumbnail { text-decoration: none; }
a.PersonThumbnail:hover, a.PersonThumbnail:focus { color: var(--bs-dark); }

a.PersonThumbnail h4 { position: relative; }

a.PersonThumbnail h4::after { content: ""; position: absolute; bottom: -2px; right: 0; display: block; width: 100%; height: 6px; background-color: var(--bs-primary); transform: scaleX(0); transition: 0.3s transform ease-in-out; transform-origin: left; }

a.PersonThumbnail:hover h4::after, a.PersonThumbnail:focus h4::after { transform: scaleX(1); }

.PersonThumbnail .picture .cover { position: absolute; top: 0; left: 0; bottom: 0; right: 0; background-size: cover; box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1); filter: grayscale(100%); transition: 0.3s all ease-in-out; }

.PersonThumbnail .picture:hover, .PersonThumbnail .picture:focus { border: 2px solid var(--bs-primary); }
.PersonThumbnail .picture:hover .cover, .PersonThumbnail .picture:focus .cover { transform: scale(1.1); }

.post { display: flex; flex-direction: column; flex-grow: 1; justify-content: space-between; }

.post .image-date-title { display: flex; flex-direction: column; }

.post .image-date-title img { object-fit: cover; height: 250px; }

.post .date-title { display: flex; flex-grow: 1; flex-direction: column; min-width: 260px; }

.image-mask { overflow: hidden; display: flex; flex-grow: 1; min-width: 250px; border-radius: var(--image-border-radius); border: var(--image-border); }

.image-mask img { object-fit: cover; width: 100%; height: 100%; }

.post h3 a { text-decoration: none; }

.post a.Author { text-decoration: underline; }

.post .incipit { display: flex; align-items: center; }

.post .incipit span { white-space: nowrap; }

.post .incipit .hr { position: relative; display: block; height: 2px; margin-left: 1rem; width: 100%; background-color: var(--bs-dark); }

.post .hr::after { position: absolute; display: block; content: ""; height: 3px; width: 0%; left: 0; bottom: 2px; z-index: 1; background-color: var(--bs-primary); transition: width 0.2s ease-in-out; }

.post:hover .hr::after, .post:focus .hr::after { width: 100%; }

.btn { position: relative; border: 2px solid var(--bs-dark-fixed); }

.btn-lg { height: var(--lg-size); border-radius: var(--lg-cr); }

.btn-md { height: var(--md-size); border-radius: var(--md-cr); padding: 0; transition: all 0.2s ease-in-out; }

.btn-primary { --bs-btn-color: var(--bs-light); --bs-btn-bg: var(--bs-primary); --bs-btn-border-color: var(--bs-primary); --bs-btn-hover-color: var(--bs-primary); --bs-btn-hover-bg: var(--bs-light); --bs-btn-hover-border-color: var(--bs-light); --bs-btn-focus-shadow-rgb: 49, 132, 253; --bs-btn-active-color: #fff; --bs-btn-active-bg: var(--bs-light); --bs-btn-active-border-color: var(--bs-light-transparent); --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); --bs-btn-disabled-color: var(--bs-dark); --bs-btn-disabled-bg: var(--bs-primary); --bs-btn-disabled-border-color: var(--bs-primary); }

.btn.btn-primary .icon-container { background-color: var(--bs-primary); }

.btn.btn-primary:hover .icon-container, .btn.btn-primary:focus .icon-container { background-color: var(--bs-dark); border-color: var(--bs-primary); }

.btn-primary:hover, .btn-primary:focus { border-color: var(--bs-primary); }
.btn-primary:hover .btn-primary .icon path, .btn-primary:focus .btn-primary .icon path { stroke: var(--bs-primary); }

.btn-primary.disabled, .btn-primary:disabled, fieldset:disabled .btn-primary { color: var(--bs-dark); border-color: var(--bs-dark); }

.btn-primary:hover .icon path, .btn-primary:focus .icon path { stroke: var(--bs-primary); text-decoration: none; }

.btn.btn-secondary.btn-md { border-radius: var(--md-cr) 25px 25px var(--md-cr); }

.int-btn:hover button, .int-btn:focus button { background-color: var(--bs-primary); }

.int-btn a { text-decoration: none; }

.btn-md:hover, .int-btn:hover .btn-md, .btn-md:focus, .int-btn:focus .btn-md { padding: 0 1rem; }

.btn-primary .icon path { stroke: var(--bs-dark); }

.btn-primary:hover .icon path, .btn-primary:focus .icon path { stroke: var(--bs-primary); }

.btn.btn-secondary.btn-md { border-radius: var(--md-cr) 25px 25px var(--md-cr); }

.int-btn:hover button, .int-btn:focus button { background-color: var(--bs-primary); }

.int-btn a { text-decoration: none; }

.btn-md:hover, .int-btn:hover .btn-md, .btn-md:focus, .int-btn:focus .btn-md { padding: 0 1rem; }
.btn-md:hover span:not(.icon-container), .int-btn:hover .btn-md span:not(.icon-container), .btn-md:focus span:not(.icon-container), .int-btn:focus .btn-md span:not(.icon-container) { animation: expandWidth 0.5s ease forwards; }

.btn-simple { display: flex; justify-content: center; align-content: center; height: 36px; width: 36px; border: none 0; z-index: 1; }

.btn-simple > .icon-container { height: 36px; width: 36px; top: 0; right: 0; }

#chimpSignup { height: auto; width: auto; border: 2px solid var(--bs-dark); border-radius: 18px; text-decoration: none; color: var(--bs-dark); }
#chimpSignup:hover, #chimpSignup:focus { color: var(--bs-dark-fixed); border-color: var(--bs-dark-fixed); background-color: var(--bs-primary); }

.btn-simple:hover .icon-container, .btn-simple:focus .icon-container { cursor: pointer; background-color: var(--bs-primary); transition: all 0.2s ease-in-out; }

@keyframes expandWidth { from { width: 0; }
  to { width: 100%; } }
.btn.btn-secondary { background-color: transparent; }

.btn.btn-secondary span { color: var(--bs-dark-fixed); }

.icon-container { display: flex; align-items: center; justify-content: center; border-radius: 100%; border: 2px solid var(--bs-dark); position: absolute; right: -2px; top: -2px; background-color: var(--bs-light); transition: all 0.2s ease-in-out; }

.btn.btn-secondary:hover .icon-container, .btn.btn-secondary:focus .icon-container, .int-btn:hover .btn.btn-secondary .icon-container, .int-btn:focus .btn.btn-secondary .icon-container { background-color: var(--bs-primary); border: 2px solid var(--bs-dark-fixed); }

.btn.btn-secondary:hover .icon > svg path, .btn.btn-secondary:focus .icon > svg path, .int-btn:hover .btn.btn-secondary .icon > svg path, .int-btn:focus .btn.btn-secondary .icon > svg path { stroke: var(--bs-dark-fixed) !important; }

.btn.btn-simple:hover .x .icon > svg path, .btn.btn-simple:focus .x .icon > svg path { fill: var(--bs-dark-fixed); }

.btn-lg .icon-container { height: var(--lg-size); width: var(--lg-size); }

.btn-lg span:not(.icon-container) { margin-right: 2.5rem; }

.btn-md .icon-container { height: var(--md-size); width: var(--md-size); }

.btn-md span:not(.icon-container) { overflow: hidden; white-space: nowrap; width: 0; margin-right: 2rem; }

@media (min-width: 1600px) { .post .image-date-title { display: flex; flex-direction: row; }
  .image-mask { max-width: 400px; } }
#Impresso_logo { width: 100px; height: 100px; }

.Page h1:not(.main-title) { width: 60%; }

.Page-header { display: flex; flex-direction: row; align-items: center; }

.header-pattern { display: flex; flex-direction: column; justify-content: space-between; width: 40%; transform: rotate(180deg); margin-bottom: -3rem; }
.header-pattern .bar-row { display: flex; justify-content: start; transform-origin: right; /* Change the transform-origin to the right on hover */ animation: 0.6s barAnimation 0.6s ease-out forwards; width: 0; }
.header-pattern .bar-row .bar { height: 5px; width: 50%; margin: 0.3rem 1rem 0.3rem 0rem; background-color: var(--bs-dark); }
.header-pattern .bar-row.yellow .bar { background-color: var(--bs-primary); }
.header-pattern .bar-row.gray, .header-pattern .bar-row.gray-2 { opacity: 0.5; }

.Partner svg { width: 100%; min-width: 200px; max-width: 200px; max-height: 100px; min-height: 90px; }

footer svg { width: auto !important; }

@media (max-width: 1000px) { .header-pattern { margin-bottom: -1rem; }
  .header-pattern .bar { height: 4px !important; margin: 0.15rem 0.5rem 0.15rem 0rem !important; } }
@media (max-width: 768px) { .header-pattern { display: none; } }
@keyframes barAnimation { from { width: 0; }
  to { width: 100%; } }
