/* ============================================
   Don Bosco Reunion 2026 - Print Styles
   Optimized for A4 paper printing
   ============================================ */

@media print {
    /* ============================================
       Page Setup
       ============================================ */
    
    @page {
        size: A4;
        margin: 2cm;
    }

    /* ============================================
       Reset & Base Styles
       ============================================ */
    
    * {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    body {
        font-family: Georgia, 'Times New Roman', serif;
        font-size: 12pt;
        line-height: 1.5;
        color: #000;
    }

    /* ============================================
       Hide Navigation & UI Elements
       ============================================ */
    
    nav,
    .nav,
    .profile-back,
    .profile-footer,
    footer,
    .back-link,
    button,
    .btn {
        display: none !important;
    }

    /* ============================================
       Page Container
       ============================================ */
    
    .profile-page,
    .container {
        max-width: 100%;
        padding: 0;
        margin: 0;
    }

    /* ============================================
       Photo Layout - Single Column
       ============================================ */
    
    .profile-photos {
        display: block;
        margin-bottom: 1.5cm;
        page-break-inside: avoid;
    }

    .photo-then,
    .photo-now {
        display: inline-block;
        width: 48%;
        vertical-align: top;
        page-break-inside: avoid;
    }

    .photo-then {
        margin-right: 4%;
    }

    .photo-frame {
        border: 2px solid #333 !important;
        border-radius: 0;
        overflow: hidden;
    }

    .photo-frame::before {
        display: none;
    }

    .photo-img {
        width: 100%;
        height: auto;
        display: block;
    }

    .photo-label {
        position: static;
        padding: 0.3cm 0.5cm;
        background: #f0f0f0 !important;
        color: #000 !important;
        font-size: 9pt;
        font-weight: bold;
        text-align: center;
    }

    /* ============================================
       Profile Header
       ============================================ */
    
    .profile-content {
        max-width: 100%;
    }

    .profile-header {
        text-align: left;
        margin-bottom: 1cm;
        padding-bottom: 0.5cm;
        border-bottom: 2px solid #000;
        page-break-after: avoid;
    }

    .profile-name {
        font-family: Georgia, serif;
        font-size: 20pt;
        font-weight: bold;
        margin-bottom: 0.3cm;
        line-height: 1.2;
    }

    .profile-career {
        font-size: 12pt;
        margin-bottom: 0.2cm;
    }

    .profile-position {
        font-weight: bold;
    }

    .profile-company {
        font-style: italic;
    }

    .profile-location {
        font-size: 10pt;
        color: #666 !important;
    }

    .profile-location svg {
        display: none;
    }

    /* ============================================
       Content Sections
       ============================================ */
    
    .profile-section {
        margin-bottom: 1cm;
        page-break-inside: avoid;
    }

    .section-title {
        font-family: Georgia, serif;
        font-size: 14pt;
        font-weight: bold;
        margin-bottom: 0.4cm;
        border-bottom: 1px solid #ccc;
        padding-bottom: 0.2cm;
        page-break-after: avoid;
    }

    .section-content {
        font-size: 11pt;
        line-height: 1.6;
    }

    .section-content p {
        margin-bottom: 0.5cm;
    }

    /* ============================================
       Quote Block - School Memories
       ============================================ */
    
    .quote-block {
        padding: 0.5cm 0.5cm 0.5cm 0.8cm;
        margin: 0.5cm 0;
        border-left: 3pt solid #666 !important;
        background: #f9f9f9 !important;
        font-style: italic;
        font-size: 11pt;
        page-break-inside: avoid;
    }

    .quote-block::before {
        display: none;
    }

    /* ============================================
       Message Section
       ============================================ */
    
    .section-message {
        font-size: 11pt;
        font-weight: normal;
        padding: 0.5cm;
        background: #f5f5f5 !important;
        border: 1pt solid #ccc;
    }

    /* ============================================
       Links
       ============================================ */
    
    a {
        text-decoration: none;
        color: #000 !important;
    }

    a[href^="http"]::after {
        content: " (" attr(href) ")";
        font-size: 9pt;
        font-style: italic;
    }

    /* ============================================
       Page Breaks
       ============================================ */
    
    h1, h2, h3,
    .section-title,
    .profile-header {
        page-break-after: avoid;
    }

    img,
    .photo-frame,
    .profile-photos,
    .quote-block,
    blockquote {
        page-break-inside: avoid;
    }

    /* ============================================
       Error Page
       ============================================ */
    
    .error-page {
        text-align: center;
        padding: 2cm;
    }

    .error-page h1 {
        font-size: 18pt;
        margin-bottom: 0.5cm;
    }

    .error-page p {
        font-size: 12pt;
    }
}
