﻿/* ============================================================
   PERU INSIDEOUT — STAMPA / BROCHURE PDF
   Caricare con <link rel="stylesheet" media="print" href=".../css/print.css">
   Interpretazione libera in stile catalogo viaggi (nessun accesso
   diretto a viaggicileinsideout.com per replicarne il layout esatto).
   ============================================================ */

@page {
    size: A4;
    margin: 0;
}

/* Margine di respiro extra intorno al testo in stampa. Il margine è
   applicato come padding interno del .container (trasparente), non
   come margine del @page o della sezione: lo sfondo delle sezioni
   (es. #stagionalita, #cta-finale) resta quindi a piena pagina,
   senza creare riquadri bianchi ai lati del contenuto colorato. */
.container {
    padding-inline: 10mm !important;
}

/* Forza la stampa dei colori di sfondo (altrimenti molti browser li
   rimuovono di default per risparmiare inchiostro) */
html {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
    color-adjust: exact;
}

/* ============ ELEMENTI DA NASCONDERE IN STAMPA ============ */
header,
.mobile-nav-backdrop,
.mobile-nav-panel,
.wa-widget,
.hero,
.hero-actions,
.center-btn,
.tour-edit-cta,
footer .footer-cta,
.chip.lb-chip,
a.btn,
.btn-link,
.guide-cta-band {
    display: none !important;
}

/* ============ COPERTINA ============ */
.print-cover {
    display: block !important;
    position: relative;
    width: 210mm;
    height: 297mm;
    overflow: hidden;
    page-break-after: always;
    break-after: page;
}

.print-cover-photo {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.print-cover-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(19,15,10,.15) 0%, rgba(19,15,10,.35) 55%, rgba(19,15,10,.88) 100%);
}

.print-cover-logo {
    position: absolute;
    top: 18mm;
    left: 18mm;
    height: 16mm;
    width: auto;
}

.print-cover-text {
    position: absolute;
    left: 18mm;
    right: 18mm;
    bottom: 22mm;
    color: #fff;
}

.print-cover-eyebrow {
    display: block;
    margin-bottom: 6mm;
    font-family: 'Work Sans', sans-serif;
    font-size: 11pt;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #f0ddb4;
}

.print-cover-text h1 {
    margin: 0 0 6mm;
    font-family: 'Fraunces', serif;
    font-weight: 600;
    font-size: 34pt;
    line-height: 1.05;
    color: #fff;
}

.print-cover-text p {
    margin: 0;
    font-family: 'Work Sans', sans-serif;
    font-size: 12pt;
    color: rgba(255,255,255,.86);
}

/* ============ CORPO DEL CATALOGO ============ */
body {
    background: #fff !important;
}

.about-section.intro-section {
    min-height: 297mm !important;
    box-sizing: border-box !important;
    padding: 12mm 0 6mm;
    page-break-after: avoid;
}

.about-grid {
    grid-template-columns: 55mm 1fr !important;
    gap: 8mm !important;
}

    .about-grid img {
        height: 55mm !important;
    }

.intro-chips .chip {
    font-size: 8pt;
}

.tour-editorial-list {
    padding: 6mm 0 10mm !important;
}

    /* Il primo tour dopo l'introduzione parte sempre su una nuova pagina */
    .tour-editorial-list .container > .tour-edit-row:first-child {
        page-break-before: always !important;
        break-before: page !important;
    }

/* Ogni tour diventa un riquadro compatto: foto a sinistra, testo a destra.
   Uso un layout a tabella (invece di grid/flex) perché i motori di stampa
   dei browser gestiscono la non-interruzione delle righe di tabella in
   modo molto più affidabile di quella dei contenitori grid/flex. */
.tour-edit-row {
    display: table !important;
    width: 100% !important;
    table-layout: fixed;
    padding: 6mm 0 !important;
    border-bottom: 1px solid #ddd !important;
    page-break-inside: avoid !important;
    break-inside: avoid-page !important;
}

    .tour-edit-row .tour-edit-img,
    .tour-edit-row .tour-edit-text {
        display: table-cell !important;
        vertical-align: top !important;
        float: none !important;
    }

    .tour-edit-row .tour-edit-img {
        width: 42mm !important;
        padding: 0 !important;
        overflow: hidden !important;
        border-radius: 3mm !important;
        box-shadow: none !important;
    }

    .tour-edit-row .tour-edit-text {
        padding-left: 6mm !important;
    }

    .tour-edit-row.is-reversed .tour-edit-img,
    .tour-edit-row.is-reversed .tour-edit-text {
        order: initial !important;
    }

.tour-edit-img img {
    display: block !important;
    width: 100% !important;
    height: 32mm !important;
    border-radius: 3mm !important;
    box-shadow: none !important;
}

.tour-edit-text h3 {
    margin: 0 0 2mm !important;
    font-size: 13pt !important;
}

.tour-edit-text .tour-edit-desc {
    margin: 0 0 3mm !important;
    font-size: 9pt !important;
    line-height: 1.4 !important;
}

.tour-edit-meta {
    grid-template-columns: repeat(3,1fr) !important;
    gap: 6mm !important;
    padding: 3mm 4mm !important;
    margin-bottom: 3mm !important;
    border-radius: 3mm !important;
}

    .tour-edit-meta .label {
        font-size: 6.5pt !important;
    }

    .tour-edit-meta .value {
        font-size: 10pt !important;
    }

.placeholder-todo {
    background: #f3f3f3 !important;
    color: #888 !important;
}

/* Al posto della CTA (inutile su carta) mostriamo il link testuale del tour */
.tour-edit-text::after {
    content: "Scheda completa: " attr(data-tour-url);
    display: block;
    margin-top: 1mm;
    font-size: 8pt;
    color: #571224;
    word-break: break-all;
}

/* ============ PAGINA DI CHIUSURA ============ */
.print-closing {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 210mm;
    height: 297mm;
    padding: 0 24mm;
    text-align: center;
    background: #571224 !important;
    color: #fff;
    page-break-before: always;
    break-before: page;
}

.print-closing-logo {
    height: 14mm;
    width: auto;
    margin-bottom: 14mm;
}

.print-closing h2 {
    margin: 0 0 6mm;
    font-family: 'Fraunces', serif;
    font-weight: 600;
    font-size: 22pt;
    color: #fff;
}

.print-closing p {
    margin: 0 0 12mm;
    font-family: 'Work Sans', sans-serif;
    font-size: 11pt;
    color: rgba(255,255,255,.82);
}

.print-closing-contacts {
    display: flex;
    flex-direction: column;
    gap: 3mm;
    margin-bottom: 10mm;
    font-family: 'Work Sans', sans-serif;
    font-size: 11pt;
    font-weight: 600;
    color: #f0ddb4;
}

.print-closing-note {
    font-size: 8pt;
    font-style: italic;
    color: rgba(255,255,255,.6);
}

/* Data di stampa inserita automaticamente via JS (vedi footer-ita.php)
   nell'ultima pagina di ogni brochure */
.print-closing-date {
    margin-top: 6mm;
    font-size: 8pt;
    color: rgba(255,255,255,.5);
}

/* Il footer classico non serve in stampa: la brochure si chiude con la pagina maroon */
footer {
    display: none !important;
}

/* Chips tappe principali: compattate per la stampa, colori più solidi
   (le versioni a bassa opacità pensate per lo schermo rischiano di
   sparire su carta o in certi visualizzatori PDF) */
.tour-stops {
    gap: 5mm 3mm;
    margin: 4mm 0 5mm;
}

    .tour-stops span {
        display: inline-block !important;
        padding: 1.5mm 3.5mm;
        font-size: 7.5pt;
        background: #f3e6c8 !important;
        border: 1px solid #c69b4c !important;
        color: #571224 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

/* Pagina "Trova il tour su misura per te": i filtri non si stampano */
.filters-section {
    display: none !important;
}

/* Pagine di dettaglio tour: la sidebar di prenotazione non si stampa */
.tour-detail-sidebar {
    display: none !important;
}

.tour-detail-layout {
    grid-template-columns: 1fr !important;
}

/* Pagine articolo blog: la sidebar (backlink, condivisione, CTA, info rapide) non si stampa */
.article-sidebar {
    display: none !important;
}

.page-blog-article .article-grid {
    grid-template-columns: 1fr !important;
}

/* Pagine articolo blog: la card del corpo articolo diventa trasparente in stampa */
.page-blog-article .article-body {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}
/* Il testo di ciascun giorno dell'itinerario può proseguire
   liberamente da una pagina all'altra (non forziamo più l'intero
   ".tour-day" su una nuova pagina, altrimenti - essendo il testo
   quasi sempre più lungo dello spazio residuo - ogni giorno finiva
   SEMPRE su una pagina nuova). Un nuovo salto di pagina scatta solo
   quando serve a evitare di tagliare a metà la foto o il box con
   Luoghi/Hotel/Attrazioni: se uno di questi due elementi non entra
   nello spazio rimasto, viene spostato per intero alla pagina dopo. */
.tour-day-img,
.tour-day-meta {
    page-break-inside: avoid;
    break-inside: avoid-page;
}

/* Pagine di dettaglio tour: la lightbox e i bottoni azione non si stampano */
.tour-lightbox, .tour-detail-actions {
    display: none !important;
}

/* Pagine destinazione: la sezione "Tour in evidenza" non si stampa
   (i tour hanno una propria brochure dedicata) */
.tour-in-evidenza {
    display: none !important;
}

/* ============================================================
   STAGIONALITÀ / FAQ / CTA FINALE — PAGINE DEDICATE IN STAMPA
   ============================================================ */

/* Stagionalità: inizia sempre in una nuova pagina e riempie
   l'intera pagina con lo sfondo sand (altrimenti il colore si
   ferma all'altezza del contenuto lasciando il resto bianco) */
#stagionalita {
    page-break-before: always !important;
    break-before: page !important;
    min-height: 297mm !important;
    background: var(--sand-deep) !important;
}

/* FAQ: inizia sempre in una nuova pagina */
#faq {
    page-break-before: always !important;
    break-before: page !important;
}

/* In stampa tutte le risposte alle FAQ vengono mostrate espanse,
   indipendentemente dallo stato "open" gestito via JS a schermo */
.faq-answer {
    max-height: none !important;
    overflow: visible !important;
}

.faq-icon {
    display: none !important;
}

/* CTA finale ("Inizia il tuo viaggio"): inizia sempre in una nuova
   pagina e riempie l'intera pagina con lo sfondo sand */
#cta-finale {
    page-break-before: always !important;
    break-before: page !important;
    min-height: 297mm !important;
    background: var(--sand-deep) !important;
}

#cluster {
    display: none !important;
}