/* Custom styles to complement Bootstrap */
body {
    padding-top: 60px;
}

body.accessibility-page {
    padding-top: 0;
}

body.portal-home {
    padding-top: 0;
    background:
        radial-gradient(circle at 12% 12%, rgba(13, 110, 253, .10), transparent 28rem),
        radial-gradient(circle at 86% 18%, rgba(15, 118, 110, .12), transparent 26rem),
        #f6f8fb;
}

.portal-nav-search {
    max-width: 520px;
}

.portal-search-results {
    z-index: 2000;
    top: 100%;
    max-height: 320px;
    overflow-y: auto;
}

.portal-search-results-mobile {
    z-index: 2000;
    top: 100%;
    max-height: 60vh;
    overflow-y: auto;
}

.portal-shell {
    padding-top: 5.25rem;
}

.portal-hero {
    min-height: 22rem;
    padding: 2.25rem;
    border-radius: 1rem;
    background: linear-gradient(135deg, #0f172a 0%, #075985 48%, #0f766e 100%);
    color: #fff;
    box-shadow: 0 1rem 2.5rem rgba(15, 23, 42, .18);
}

.portal-hero-kicker,
.portal-kicker {
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.portal-hero-kicker {
    color: #a7f3d0;
}

.portal-subject-icon {
    display: inline-grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: .75rem;
    background: rgba(13, 110, 253, .10);
    color: #0d6efd;
}

.portal-subject-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.portal-subject-card {
    display: flex;
    flex-direction: column;
    min-height: 20rem;
    padding: 1.1rem;
    border: 1px solid rgba(15, 23, 42, .09);
    border-radius: .75rem;
    background: #fff;
    box-shadow: 0 .5rem 1.5rem rgba(15, 23, 42, .07);
}

.portal-subject-icon {
    width: 3rem;
    height: 3rem;
    margin-bottom: 1rem;
    font-size: 1.35rem;
}

.portal-subject-card[data-accent="reti"] .portal-subject-icon {
    background: rgba(13, 110, 253, .12);
    color: #0d6efd;
}

.portal-subject-card[data-accent="informatica"] .portal-subject-icon {
    background: rgba(15, 118, 110, .14);
    color: #0f766e;
}

.portal-subject-card[data-accent="tpsit"] .portal-subject-icon {
    background: rgba(181, 129, 0, .16);
    color: #8a6200;
}

.portal-subject-card[data-accent="gestione"] .portal-subject-icon {
    background: rgba(13, 202, 240, .16);
    color: #087990;
}

.portal-subject-links {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    margin-top: auto;
    padding-top: 1rem;
}

.portal-pill {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: .3rem .6rem;
    border: 1px solid #dee2e6;
    border-radius: 999px;
    background: #f8f9fa;
    color: #495057;
    font-size: .85rem;
    line-height: 1.2;
    text-decoration: none;
}

.portal-pill:hover {
    background: #e9ecef;
    color: #0d6efd;
}

.portal-section-title {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.portal-info-band {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1.5rem;
}

.portal-info-item {
    padding: 1rem;
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: .75rem;
    background: #fff;
}

body.a11y-dark-mode.portal-home {
    background: #0f172a !important;
}

body.a11y-dark-mode .portal-subject-card,
body.a11y-dark-mode .portal-info-item,
body.a11y-dark-mode .portal-pill {
    background: #111827 !important;
    border-color: #334155 !important;
    color: #e5e7eb !important;
}

body.a11y-dark-mode .portal-pill:hover {
    color: #93c5fd !important;
}

@media (max-width: 991.98px) {
    .portal-shell {
        padding-top: 4.75rem;
    }

    .portal-subject-grid,
    .portal-info-band {
        grid-template-columns: 1fr;
    }

    .portal-hero {
        min-height: auto;
        padding: 1.5rem;
    }
}

.jumbotron-custom {
    background-color: #f8f9fa;
    padding: 2rem;
    margin-bottom: 2rem;
}

.footer {
    padding: 2rem 0;
    margin-top: 2rem;
    background-color: #f8f9fa;
}

.profile-img {
    max-width: 200px;
    border-radius: 50%;
}

body.class-index-page {
    padding-top: 0;
    --class-accent: #198754;
    --class-accent-dark: #0f5132;
    --class-accent-soft: rgba(25, 135, 84, .12);
    --class-accent-border: rgba(25, 135, 84, .18);
    --class-hero-end: #0dcaf0;
}

body.class-index-terza {
    --class-accent: #0d6efd;
    --class-accent-dark: #084298;
    --class-accent-soft: rgba(13, 110, 253, .12);
    --class-accent-border: rgba(13, 110, 253, .18);
    --class-hero-end: #6610f2;
}

body.class-index-quinta {
    --class-accent: #b58100;
    --class-accent-dark: #664d03;
    --class-accent-soft: rgba(255, 193, 7, .18);
    --class-accent-border: rgba(181, 129, 0, .24);
    --class-hero-end: #0d6efd;
}

.class-hero {
    background: linear-gradient(135deg, var(--class-accent-dark) 0%, var(--class-accent) 58%, var(--class-hero-end) 100%);
    color: #fff;
    border-radius: 1rem;
    padding: 2rem;
}

.quick-link {
    min-height: 2.5rem;
}

.notice-panel {
    border-left: .25rem solid var(--class-accent);
}

.module-card {
    border: 1px solid var(--class-accent-border);
    border-radius: .75rem;
    transition: transform .15s ease, box-shadow .15s ease;
}

.module-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 .75rem 1.75rem rgba(33, 37, 41, .09);
}

.module-icon {
    width: 2.75rem;
    height: 2.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: .75rem;
    background: var(--class-accent-soft);
    color: var(--class-accent);
    font-size: 1.35rem;
    flex: 0 0 auto;
}

.resource-chip {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    max-width: 100%;
    min-height: 2.1rem;
    padding: .35rem .65rem;
    border: 1px solid var(--class-accent-border);
    border-radius: 999px;
    background: #fff;
    color: var(--class-accent-dark);
    text-decoration: none;
    font-size: .875rem;
    line-height: 1.2;
}

.resource-chip:hover {
    background: var(--class-accent-soft);
    color: var(--class-accent-dark);
}

.resource-chip.disabled {
    color: #6c757d;
    background: #f8f9fa;
    border-color: #dee2e6;
}

.skip-link {
    position: fixed;
    top: .75rem;
    left: .75rem;
    z-index: 3000;
    transform: translateY(-180%);
    padding: .6rem .85rem;
    border-radius: .5rem;
    background: #111827;
    color: #fff;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 .5rem 1.25rem rgba(0, 0, 0, .22);
}

.skip-link:focus {
    transform: translateY(0);
    color: #fff;
}

.a11y-toggle {
    position: fixed;
    right: 1rem;
    bottom: 5rem;
    z-index: 2200;
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    border-radius: 999px;
    box-shadow: 0 .5rem 1.25rem rgba(15, 23, 42, .18);
}

.a11y-panel {
    position: fixed;
    right: 1rem;
    bottom: 8.25rem;
    z-index: 2200;
    width: min(22rem, calc(100vw - 2rem));
    border: 1px solid #d0d7de;
    border-radius: .75rem;
    background: #fff;
    box-shadow: 0 1rem 2rem rgba(15, 23, 42, .2);
}

.a11y-panel[hidden] {
    display: none;
}

.a11y-live {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.a11y-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .85rem 1rem;
    border-bottom: 1px solid #e5e7eb;
}

.a11y-panel-body {
    display: grid;
    gap: .5rem;
    padding: 1rem;
}

.a11y-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    min-height: 2.45rem;
}

.a11y-option .btn {
    flex: 0 0 auto;
}

.a11y-switch {
    position: relative;
    flex: 0 0 auto;
    width: 3.25rem;
    height: 1.8rem;
    border: 2px solid #6b7280;
    border-radius: 999px;
    background: #f3f4f6;
    cursor: pointer;
    transition: background-color .15s ease, border-color .15s ease;
}

.a11y-switch-knob {
    position: absolute;
    top: .18rem;
    left: .2rem;
    width: 1.2rem;
    height: 1.2rem;
    border-radius: 50%;
    background: #6b7280;
    transition: transform .15s ease, background-color .15s ease;
}

.a11y-switch.is-active {
    border-color: #0d6efd;
    background: #dbeafe;
}

.a11y-switch.is-active .a11y-switch-knob {
    transform: translateX(1.42rem);
    background: #0d6efd;
}

.a11y-switch:focus-visible {
    outline: 3px solid #ffbf47;
    outline-offset: 3px;
}

:focus-visible {
    outline: 3px solid #ffbf47;
    outline-offset: 3px;
}

body.a11y-text-lg {
    font-size: 112.5%;
}

body.a11y-text-xl {
    font-size: 125%;
}

body.a11y-spacing {
    line-height: 1.75;
    letter-spacing: .02em;
}

body.a11y-readable-font {
    font-family: "Atkinson Hyperlegible", "OpenDyslexic", "Lexend", Verdana, Arial, Tahoma, sans-serif;
    letter-spacing: .025em;
    word-spacing: .08em;
}

body.a11y-underline-links a:not(.btn):not(.resource-chip):not(.navbar-brand) {
    text-decoration: underline;
    text-decoration-thickness: .12em;
    text-underline-offset: .18em;
}

body.a11y-narrow-content main,
body.a11y-narrow-content .container.py-5 {
    max-width: 920px;
}

body.a11y-contrast {
    background: #fff !important;
    color: #111827;
}

body.a11y-contrast .card,
body.a11y-contrast .alert,
body.a11y-contrast .list-group-item,
body.a11y-contrast .module-card,
body.a11y-contrast .notice-panel,
body.a11y-contrast .resource-chip {
    border-color: #111827 !important;
    color: #111827;
}

body.a11y-contrast a:not(.btn) {
    color: #003b8e;
}

body.a11y-dark-mode {
    background: #0f172a !important;
    color: #e5e7eb;
    color-scheme: dark;
    --bs-body-bg: #0f172a;
    --bs-body-color: #e5e7eb;
    --bs-border-color: #334155;
    --bs-link-color: #93c5fd;
    --bs-link-hover-color: #bfdbfe;
    --class-accent-soft: rgba(147, 197, 253, .14);
    --class-accent-border: rgba(147, 197, 253, .28);
}

body.a11y-dark-mode .bg-light,
body.a11y-dark-mode .bg-white,
body.a11y-dark-mode .navbar,
body.a11y-dark-mode footer {
    background-color: #111827 !important;
    color: #e5e7eb !important;
}

body.a11y-dark-mode .card,
body.a11y-dark-mode .module-card,
body.a11y-dark-mode .notice-panel,
body.a11y-dark-mode .list-group-item,
body.a11y-dark-mode .modal-content,
body.a11y-dark-mode .dropdown-menu,
body.a11y-dark-mode .a11y-panel {
    background-color: #111827 !important;
    border-color: #334155 !important;
    color: #e5e7eb !important;
    box-shadow: none !important;
}

body.a11y-dark-mode .card-header,
body.a11y-dark-mode .table-light,
body.a11y-dark-mode .table-success,
body.a11y-dark-mode .table-primary,
body.a11y-dark-mode .table-info {
    background-color: #1f2937 !important;
    color: #f8fafc !important;
    border-color: #334155 !important;
}

body.a11y-dark-mode .text-muted,
body.a11y-dark-mode .text-secondary {
    color: #cbd5e1 !important;
}

body.a11y-dark-mode .text-primary,
body.a11y-dark-mode .link-primary,
body.a11y-dark-mode .text-success,
body.a11y-dark-mode .link-success,
body.a11y-dark-mode .text-warning,
body.a11y-dark-mode .link-warning {
    color: #93c5fd !important;
}

body.a11y-dark-mode a:not(.btn):not(.resource-chip) {
    color: #93c5fd;
}

body.a11y-dark-mode a:not(.btn):not(.resource-chip):hover {
    color: #bfdbfe;
}

body.a11y-dark-mode .breadcrumb,
body.a11y-dark-mode .breadcrumb-item,
body.a11y-dark-mode .breadcrumb-item.active {
    color: #e5e7eb !important;
}

body.a11y-dark-mode .breadcrumb-item + .breadcrumb-item::before {
    color: #cbd5e1 !important;
}

body.a11y-dark-mode .breadcrumb a {
    color: #93c5fd !important;
}

body.a11y-dark-mode #auto-related-row .card,
body.a11y-dark-mode .related,
body.a11y-dark-mode .related-articles,
body.a11y-dark-mode .articoli-correlati,
body.a11y-dark-mode [data-related],
body.a11y-dark-mode .list-group {
    background: #111827 !important;
    background-color: #111827 !important;
    color: #e5e7eb !important;
}

body.a11y-dark-mode .list-group-item-action:hover,
body.a11y-dark-mode .list-group-item-action:focus {
    background-color: #1f2937 !important;
    color: #f8fafc !important;
}

body.a11y-dark-mode .tooltip {
    --bs-tooltip-bg: #020617;
    --bs-tooltip-color: #f8fafc;
}

body.a11y-dark-mode .tooltip-inner {
    background-color: #020617 !important;
    color: #f8fafc !important;
    border: 1px solid #475569;
}

body.a11y-dark-mode .bs-tooltip-top .tooltip-arrow::before,
body.a11y-dark-mode .bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow::before {
    border-top-color: #020617 !important;
}

body.a11y-dark-mode .bs-tooltip-end .tooltip-arrow::before,
body.a11y-dark-mode .bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow::before {
    border-right-color: #020617 !important;
}

body.a11y-dark-mode .bs-tooltip-bottom .tooltip-arrow::before,
body.a11y-dark-mode .bs-tooltip-auto[data-popper-placement^="bottom"] .tooltip-arrow::before {
    border-bottom-color: #020617 !important;
}

body.a11y-dark-mode .bs-tooltip-start .tooltip-arrow::before,
body.a11y-dark-mode .bs-tooltip-auto[data-popper-placement^="left"] .tooltip-arrow::before {
    border-left-color: #020617 !important;
}

body.a11y-dark-mode .resource-chip {
    background: #1f2937;
    border-color: #475569;
    color: #dbeafe;
}

body.a11y-dark-mode .resource-chip:hover {
    background: #263449;
    color: #fff;
}

body.a11y-dark-mode .resource-chip.disabled {
    background: #111827;
    border-color: #374151;
    color: #94a3b8;
}

body.a11y-dark-mode .alert {
    background-color: #1f2937;
    border-color: #475569;
    color: #e5e7eb;
}

body.a11y-dark-mode .alert-info,
body.a11y-dark-mode .alert-primary {
    background-color: #172554;
    border-color: #1d4ed8;
    color: #dbeafe;
}

body.a11y-dark-mode .alert-warning {
    background-color: #422006;
    border-color: #b45309;
    color: #fde68a;
}

body.a11y-dark-mode .alert-success {
    background-color: #052e16;
    border-color: #15803d;
    color: #bbf7d0;
}

body.a11y-dark-mode .alert-secondary,
body.a11y-dark-mode .alert-light {
    background-color: #1f2937;
    border-color: #475569;
    color: #e5e7eb;
}

body.a11y-dark-mode .table,
body.a11y-dark-mode table {
    --bs-table-bg: #111827;
    --bs-table-color: #e5e7eb;
    --bs-table-border-color: #334155;
    color: #e5e7eb;
    border-color: #334155;
}

body.a11y-dark-mode th,
body.a11y-dark-mode td {
    border-color: #334155 !important;
}

body.a11y-dark-mode input,
body.a11y-dark-mode select,
body.a11y-dark-mode textarea,
body.a11y-dark-mode .form-control,
body.a11y-dark-mode .form-select,
body.a11y-dark-mode .input-group-text {
    background-color: #0f172a !important;
    border-color: #475569 !important;
    color: #e5e7eb !important;
}

body.a11y-dark-mode input::placeholder,
body.a11y-dark-mode textarea::placeholder {
    color: #94a3b8 !important;
}

body.a11y-dark-mode pre,
body.a11y-dark-mode code {
    color: #f8fafc;
}

body.a11y-dark-mode pre,
body.a11y-dark-mode pre code,
body.a11y-dark-mode .bg-secondary {
    background-color: #020617 !important;
    color: #f8fafc !important;
    border-color: #334155 !important;
}

body.a11y-dark-mode .badge.text-bg-light {
    background-color: #1f2937 !important;
    border-color: #475569 !important;
    color: #e5e7eb !important;
}

body.a11y-dark-mode .border,
body.a11y-dark-mode .border-top,
body.a11y-dark-mode .border-bottom,
body.a11y-dark-mode .border-start,
body.a11y-dark-mode .border-end {
    border-color: #334155 !important;
}

body.a11y-dark-mode .a11y-switch {
    background: #0f172a;
    border-color: #64748b;
}

body.a11y-dark-mode .a11y-switch-knob {
    background: #94a3b8;
}

body.a11y-dark-mode .a11y-switch.is-active {
    background: #1e3a8a;
    border-color: #93c5fd;
}

body.a11y-dark-mode .a11y-switch.is-active .a11y-switch-knob {
    background: #bfdbfe;
}

body.a11y-dark-mode.a11y-reading-guide .a11y-reading-current {
    background: #422006 !important;
    box-shadow: 0 0 0 .18rem rgba(251, 191, 36, .7);
}

body.a11y-reduce-motion *,
body.a11y-reduce-motion *::before,
body.a11y-reduce-motion *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
}

body.a11y-reading-guide .a11y-reading-current {
    position: relative;
    border-radius: .35rem;
    background: #fff7cc !important;
    box-shadow: 0 0 0 .18rem rgba(255, 193, 7, .55);
}

body.a11y-contrast.a11y-reading-guide .a11y-reading-current {
    background: #fff3bf !important;
    box-shadow: 0 0 0 .2rem #111827;
}

.informatica-page .subject-hero {
    background: linear-gradient(135deg, #0f766e 0%, #2563eb 58%, #7c3aed 100%);
    color: #fff;
    border-radius: 1rem;
    padding: 2.25rem 1.25rem;
}

.informatica-page .lesson-kicker {
    color: #0f766e;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    font-size: .78rem;
}

.informatica-page .lesson-card {
    border: 1px solid rgba(15, 118, 110, .18);
    border-radius: .75rem;
    box-shadow: 0 .5rem 1.5rem rgba(15, 23, 42, .06);
}

.informatica-page .lesson-card .card-title {
    color: #0f766e;
}

.informatica-page .step-list {
    counter-reset: lesson-step;
    display: grid;
    gap: 1rem;
    padding: 0;
    margin: 0;
    list-style: none;
}

.informatica-page .step-list > li {
    counter-increment: lesson-step;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: .85rem;
    align-items: start;
    padding: 1rem;
    border: 1px solid rgba(37, 99, 235, .16);
    border-radius: .75rem;
    background: #f8fafc;
}

.informatica-page .step-list > li::before {
    content: counter(lesson-step);
    display: inline-grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    background: #0f766e;
    color: #fff;
    font-weight: 700;
}

.informatica-page .concept-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1rem;
}

.informatica-page .concept-box {
    border: 1px solid rgba(15, 118, 110, .2);
    border-radius: .75rem;
    padding: 1rem;
    background: #fff;
    height: 100%;
}

.informatica-page .flowchart-shot {
    border: 2px dashed rgba(37, 99, 235, .35);
    border-radius: .75rem;
    background: #f8fafc;
    padding: 1.25rem;
    text-align: center;
}

.informatica-page .flowchart-shot img {
    max-width: 100%;
    height: auto;
    border-radius: .5rem;
    border: 1px solid rgba(15, 23, 42, .15);
    background: #fff;
}

.informatica-page .formula-card {
    border-left: .35rem solid #0f766e;
    background: #f8fafc;
    border-radius: .75rem;
    padding: 1rem;
}

.informatica-page .code-step {
    border: 1px solid rgba(37, 99, 235, .16);
    border-radius: .75rem;
    padding: 1rem;
    background: #fff;
}

body.a11y-dark-mode.informatica-page .lesson-card,
body.a11y-dark-mode.informatica-page .concept-box,
body.a11y-dark-mode.informatica-page .step-list > li,
body.a11y-dark-mode.informatica-page .flowchart-shot,
body.a11y-dark-mode.informatica-page .formula-card,
body.a11y-dark-mode.informatica-page .code-step {
    background: #111827 !important;
    border-color: #334155 !important;
    color: #e5e7eb !important;
}

body.a11y-dark-mode.informatica-page .lesson-kicker,
body.a11y-dark-mode.informatica-page .lesson-card .card-title {
    color: #5eead4 !important;
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}

@media print {
    @page {
        margin: 14mm;
    }

    html,
    body {
        background: #fff !important;
        color: #000 !important;
        font-size: 11pt;
        padding: 0 !important;
        margin: 0 !important;
    }

    body * {
        visibility: hidden !important;
    }

    #contenuto,
    #contenuto * {
        visibility: visible !important;
    }

    #contenuto {
        position: absolute !important;
        inset: 0 auto auto 0 !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    nav,
    footer,
    aside,
    .navbar,
    .breadcrumb,
    [aria-label="breadcrumb"],
    #scrollToTopBtn,
    .skip-link,
    .a11y-toggle,
    .a11y-panel,
    .a11y-live,
    .btn,
    .related,
    .related-articles,
    .articoli-correlati,
    .no-print,
    [data-related],
    [data-scroll] {
        display: none !important;
    }

    #contenuto .btn,
    #contenuto nav,
    #contenuto footer,
    #contenuto aside,
    #contenuto .breadcrumb,
    #contenuto [aria-label="breadcrumb"],
    #contenuto .related,
    #contenuto .related-articles,
    #contenuto .articoli-correlati,
    #contenuto .no-print,
    #contenuto [data-related],
    #contenuto [data-scroll] {
        display: none !important;
    }

    #contenuto a {
        color: #000 !important;
        text-decoration: underline;
    }

    #contenuto a[href^="http"]::after {
        content: " (" attr(href) ")";
        font-size: 9pt;
        word-break: break-all;
    }

    #contenuto .card,
    #contenuto .alert,
    #contenuto .list-group-item,
    #contenuto .module-card,
    #contenuto .notice-panel {
        border: 1px solid #999 !important;
        box-shadow: none !important;
        break-inside: avoid;
    }

    #contenuto pre,
    #contenuto code {
        color: #000 !important;
        background: #f4f4f4 !important;
        border-color: #999 !important;
        white-space: pre-wrap;
    }

    #contenuto table {
        break-inside: auto;
    }

    #contenuto tr,
    #contenuto img,
    #contenuto figure {
        break-inside: avoid;
    }

    #contenuto img {
        max-width: 100% !important;
        height: auto !important;
        box-shadow: none !important;
    }
}
