/* ==========================================================================
   STILI DI STAMPA (print.css)
   Minimizza inchiostro, rimuove elementi 3D/interattivi, compatta il layout.
========================================================================== */

@media print {

    /* --- 1. RESET GLOBALE & RISPARMIO INCHIOSTRO --- */
    *,
    *::before,
    *::after {
        background: transparent;
        color: #000;
        box-shadow: none;
        text-shadow: none;
        filter: none;
        transition: none;
        animation: none;
    }

    body {
        font-family: "Helvetica", "Arial", sans-serif;
        font-size: 11pt;
        line-height: 1.3;
        background-color: #fff;
        color: #000;
        margin: 0;
        padding: 0;
    }

    a {
        text-decoration: underline;
        color: #000;
        border: none;
    }

    a[href^="http"]::after {
        content: " (" attr(href) ")";
        font-size: 0.8em;
    }

    /* --- 2. NASCONDI ELEMENTI INUTILI IN STAMPA --- */

    .action-form,
    .add-to-cart-form,
    aside#shop-filter-section,
    .btn-add-cart,
    .btn-add-preferiti,
    .btn-filter,
    .accessibility-controls:not(.accessibility-controls) {
        display: none;
    }

    /* ================================================ HOMEPAGE + HEADER + FOOTER ================================================ */

    .liquid-svg,
    model-viewer,
    .bestsellers-visual,
    .btn-join,
    .social-links,
    .accessibility-controls,
    .menu-checkbox,
    .hamburger-btn,
    .nav-wrapper,
    #main-menu,
    #user-actions,
    .skip-link,
    .close-menu-btn,
    .mobile-menu-overlay,
    .parallax-scene,
    .footer-column nav,
    .validators,
    .disclaimer {
        display: none;
    }

    /* HEADER */
    body .main-header {
        position: static;
        display: block;
        text-align: center;
        border-bottom: 2px solid #000;
        padding: 10px 0;
        background-color: #fff;
        box-shadow: none;
    }

    body .main-header .logo {
        width: 150px;
        height: auto;
        margin: 0 auto;
        filter: brightness(0);
    }

    /* HOMEPAGE */
    body.homepage .main-header {
        border-bottom: none;
    }

    body.homepage .tornasu {
        display: none;
    }

    body.homepage .categories-section,
    body.homepage .best-sellers-container,
    body.homepage .favors-section,
    body.homepage .loyalty-section,
    .main-footer-area {
        page-break-before: always;
        break-before: page;
        margin-top: 0;
        margin-bottom: 20px;
        padding-top: 20px;
        padding-bottom: 20px;
        height: auto;
        min-height: 0;
    }

    body.homepage img,
    body.homepage .parallax-scene,
    body.homepage .category-img,
    body.homepage .hero-buttons {
        display: none;
    }

    body.homepage .value-icon {
        display: block;
        width: 80px;
        height: auto;
        margin: 0 auto 10px;
        filter: grayscale(100%);
    }

    body.homepage .values-list {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 20px;
        padding: 0;
        list-style: none;
    }

    body.homepage .value-item {
        flex: 0 0 45%;
        text-align: center;
        break-inside: avoid;
        margin-bottom: 20px;
        border: 1px solid #ccc;
        padding: 10px;
    }

    /* Categories Section */
    body.homepage .categories-list {
        display: flex;
        justify-content: center;
        gap: 20px;
        padding: 0;
        list-style: none;
    }

    body.homepage .categories-list li {
        flex: 0 0 45%;
        border: 1px solid #ccc;
        padding: 20px;
        text-align: center;
        page-break-inside: avoid;
    }

    body.homepage .category-card a {
        text-decoration: none;
        border: none;
    }

    body.homepage .category-img {
        display: none;
    }

    body.homepage .category-content {
        display: block;
    }

    body.homepage .category-content h3 {
        margin-top: 0;
        font-size: 14pt;
        text-transform: uppercase;
    }

    body.homepage .hero-section {
        display: block;
        border-bottom: 2px solid #000;
        margin-bottom: 20px;
        text-align: center;
        height: auto;
        min-height: 0;
        padding: 20px 0;
    }

    body.homepage .hero-brand {
        font-size: 24pt;
        color: #000;
        margin-bottom: 0;
    }

    body.homepage .hero-slogan {
        font-size: 14pt;
        font-style: italic;
        margin-top: 0;
        color: var(--universitea-green, #00d69f);
    }

    body.homepage .hero-description {
        font-size: 11pt;
        max-width: 100%;
        color: #000;
        border-bottom: none;
    }

    body.homepage .section-header,
    body.homepage .bestsellers-header {
        border-bottom: 2px solid var(--navlink-color, #0b3f3e);
        padding-bottom: 10px;
        margin-bottom: 20px;
    }

    body.homepage .values-section .section-title {
        border-bottom: 2px solid var(--navlink-color, #0b3f3e);
        padding-bottom: 10px;
        margin-bottom: 20px;
        display: block;
        color: #000;
    }

    body.homepage .section-title,
    body.homepage .bestsellers-section-title {
        border-bottom: none;
        color: #000;
    }

    body.homepage .value-item h3,
    body.homepage .value-item h3 span {
        color: var(--universitea-green, #00d69f);
        margin-top: 10px;
        margin-bottom: 5px;
    }

    body.homepage .step-number {
        color: var(--universitea-green, #00d69f);
    }

    body.homepage .bestsellers-info p,
    body.homepage .favors-desc,
    body.homepage .step-card p {
        color: #000;
    }

    body.homepage .value-item p {
        color: #000;
        font-size: 10pt;
    }

    body.homepage .section-subtitle {
        color: var(--universitea-green, #00d69f);
        font-weight: bold;
    }

    body.homepage .section-title,
    body.homepage .bestsellers-section-title {
        border-bottom: none;
    }

    body.homepage .loyalty-footer {
        display: none;
    }

    body.homepage .loyalty-steps {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
        margin-top: 20px;
    }

    body.homepage .loyalty-steps li {
        break-inside: avoid;
    }

    body.homepage .favors-content .btn-primary-outline {
        display: none;
    }

    /* Bestsellers Section */
    body.homepage .carousel-controls-container,
    body.homepage .slide-nav-container,
    body.homepage .bestsellers-header .accessibility-controls {
        display: none;
    }

    body.homepage .bestsellers-product-name {
        color: var(--universitea-green, #00d69f);
    }

    #bestsellers-content {
        display: block;
        overflow: visible;
        overflow-x: visible;
        height: auto;
        scroll-snap-type: none;
        white-space: normal;
    }

    body.homepage .product-slide {
        display: block;
        width: 100%;
        margin-bottom: 20px;
        page-break-inside: avoid;
        border-bottom: none;
        flex: none;
        scroll-snap-align: none;
        opacity: 1;
        transform: none;
        padding: 10px;
    }

    body.homepage .product-slide:nth-of-type(odd) {
        border-left: 5px solid #000;
        padding-left: 20px;
    }

    body.homepage .product-slide:nth-of-type(even) {
        border-right: 5px solid #000;
        padding-right: 20px;
        text-align: right;
    }

    body.homepage .bestsellers-cta {
        display: none;
    }

    /* FOOTER */
    body .main-footer-area {
        margin-top: 40px;
        border-top: 2px solid #000;
        padding-top: 20px;
        background: transparent;
        color: #000;
    }

    .footer-container {
        display: grid;
    }

    .footer-column {
        margin-bottom: 10px;
        color: #000;
    }

    .footer-column h3,
    .footer-column a,
    .footer-bottom-content,
    .footer-column {
        margin-bottom: 10px;
    }

    .footer-column h3 {
        color: var(--universitea-green, #00d69f);
        text-transform: uppercase;
        margin-bottom: 5px;
    }

    .contact-list li {
        display: inline-block;
        margin: 0 10px;
    }

    .footer-bottom {
        border-top: 1px solid #ccc;
        margin-top: 20px;
        padding-top: 10px;
        text-align: center;
        background: transparent;
        color: #000;
    }

    .legal-info p {
        font-size: 9pt;
    }

    /* ================================================ PAGINA INFO TE ================================================ */
    .tea-info-page .main-header,
    .tea-info-page .tornasu,
    .tea-info-page #breadcrumb,
    .tea-info-page .skip-link {
        display: none;
    }

    .tea-info-page #tea-content {
        background: transparent;
        color: var(--darkbgcolor);
        text-shadow: none;
        box-shadow: none;
        padding: 0;
        margin: 0;
    }

    .tea-info-page #tea-content {
        max-width: 100%;
        margin: 0;
        padding: 0;
    }

    .tea-info-page .teaintro {
        height: auto;
        display: block;
        background-image: none;
        padding: 0;
        margin: 0;
    }

    .tea-info-page .teaintro-text {
        max-width: 100%;
        padding: 0;
        background: none;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
        border: none;
    }

    .tea-info-page .teaintro-text h1 {
        font-size: 24pt;
        text-align: left;
    }

    .tea-info-page .teaintro-text p {
        text-align: left;
        padding: 0;
        margin: 0;
    }

    .tea-info-page .curiosita{
        padding: 0;
        margin: 0;
        display: block;
    }

    .tea-info-page .curiosita img{
        display: none;
    }

    .tea-info-page .curiosita h2, .tea-info-page .tea-card h2, .tea-info-page .tea-process h2{
        font-size: 22pt;
        padding: 0;
        margin: 0;
    }

    .tea-info-page .tea-card h3{
        font-size: 20pt;
        padding: 0;
        margin: 0;
    }

    .tea-info-page .teaintro p, .tea-info-page .curiosita p, .tea-info-page .tea-card p, .tea-info-page .tea-process p, .tea-info-page .tea-card p{
        font-size: 18pt;
        color: var(--darkbgcolor);
    }

    .tea-info-page .tea-process table {
        border-collapse: collapse;
        width: 100%;
        padding: 0;
        margin: 0;
    }

    .tea-info-page .tea-process thead th {
        background-color: var(--lightbgcolor);
        color: var(--darkbgcolor);
        border: 1px solid var(--darkbgcolor);
    }

    .tea-info-page .tea-process tbody th,
    .tea-info-page .tea-process tbody td {
        background-color: var(--lightbgcolor);
        color: var(--darkbgcolor);
        border: 1px solid var(--darkbgcolor);
        padding: 0.5em;
    }

    .tea-info-page .tea-card {
        display: block;
        margin: 0;
        padding: 0;
    }

    .tea-info-page .tea-card:nth-of-type(even) {
        flex-direction: row;
    }

    .tea-info-page .card-text h3{
        border: 0;
    }

    .tea-info-page .card-text {
        border: 0;
        padding: 0;
        margin:0;
    }

    .tea-info-page .tea-card img {
        max-width: 5cm;
        float: right;
        margin-left: 1cm;
    }

    .tea-info-page .quiz-section,
    .tea-info-page .tea-quiz,
    .tea-info-page #quiz-result,
    .tea-info-page .indicetea {
        display: none;
    }

    .tea-info-page .curiosita-image img {
        max-width: 4cm;
    }

    .tea-info-page .tea-process table tr{
        border-radius: 0;
    }

    /* ================================================ PAGINE ABOUT================================================ */

    .about-page .main-header,
    .about-page .tornasu,
    .about-page #breadcrumb,
    .about-page .skip-link{
        display: none;
    }

    .about-page .about-intro-img img{
        max-width: 10cm;
    }

    .about-page .about-values img{
        display: none;
    }

    /* ================================================ PAGINE ERRORI================================================ */
    .error-page .error-image img{
        display: none;
    }

    /* ================================================ PAGINE LOGIN E REGISTER================================================ */
    .login-body #login-content .login-card, .register-body #register-content .register-card{
        box-shadow: none;
        padding: 0;
        margin: 0;
    }

    .form-disabled, .cart-btn-enabled{
        display: none;
    }

}