/* ==========================================================================
   Greene County Tourism Proposal - Print Styles (Optimized for minimal pages)
   ========================================================================== */

* {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
}

/* Hide elements not needed for print */
#password-overlay,
.print-button,
.site-footer,
.barn-quilt-map-container,
.map-demo-label,
.map-caption,
#barn-quilt-map,
.hero-image-grid,
.hero-overlay,
.bonus-badge {
    display: none !important;
}

@page {
    size: letter;
    margin: 0.5in;
}

/* ==========================================================================
   Base Typography - Consistent 11pt body, 12pt emphasis
   ========================================================================== */

body {
    font-size: 11pt;
    line-height: 1.35;
    color: #000;
    background: #fff;
}

.container {
    max-width: 100%;
    padding: 0;
}

h1 { font-size: 22pt; margin: 0 0 8pt; }
h2 {
    font-size: 14pt;
    color: #2c5f2d !important;
    border-bottom: 1pt solid #2c5f2d;
    padding-bottom: 4pt;
    margin: 12pt 0 8pt;
}
h3 { font-size: 12pt; color: #2c5f2d !important; margin: 8pt 0 4pt; }
h4 { font-size: 11pt; font-weight: 600; margin: 0 0 3pt; }
p { font-size: 11pt; margin: 0 0 6pt; orphans: 2; widows: 2; }
ul { margin: 4pt 0 8pt 16pt; padding: 0; }
li { font-size: 11pt; margin-bottom: 2pt; }
a { color: #2c5f2d !important; text-decoration: none; }
a[href]:after { content: none; }

/* ==========================================================================
   Header
   ========================================================================== */

.site-header {
    padding: 10pt 0;
    border-bottom: 1pt solid #ccc;
    margin-bottom: 10pt;
}
.site-header .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.client-logo, .rt7-logo {
    height: 40pt;
    width: auto;
}

/* ==========================================================================
   Hero
   ========================================================================== */

.hero {
    background: #2c5f2d !important;
    color: #fff !important;
    padding: 15pt 20pt;
    margin-bottom: 10pt;
}
.hero-title { font-size: 20pt; color: #fff !important; margin-bottom: 6pt; }
.hero-title .redesign-text { font-size: 14pt; }
.hero-subtitle { font-size: 11pt; color: #fff !important; margin: 0; }

/* ==========================================================================
   Content Sections
   ========================================================================== */

.content-section {
    padding: 8pt 0;
}
.content-section.gray-bg {
    background: #f5f5f5 !important;
    padding: 10pt;
    margin: 6pt 0;
}
.intro-text { margin-bottom: 8pt; }

/* ==========================================================================
   Card Grids - Consistent styling
   ========================================================================== */

.goals-grid,
.experience-highlights,
.why-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8pt;
}

.goal-card,
.experience-item,
.why-item {
    background: #fff !important;
    border: 0.5pt solid #ccc;
    padding: 6pt 8pt;
    margin: 0;
}
.goal-card h4,
.experience-item h4,
.why-item h4 {
    font-size: 11pt;
    font-weight: 600;
    margin: 0 0 3pt;
}
.goal-card p,
.experience-item p,
.why-item p {
    font-size: 10pt;
    margin: 0;
    line-height: 1.3;
}

/* ==========================================================================
   RFP Sections
   ========================================================================== */

.rfp-section { margin-bottom: 10pt; }
.rfp-section h3 { margin-bottom: 6pt; }
.rfp-items {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6pt;
}
.rfp-item {
    border: 0.5pt solid #ccc;
    padding: 6pt 8pt;
}
.rfp-item h4 { font-size: 11pt; font-weight: 600; margin: 0 0 3pt; }
.rfp-item p { font-size: 10pt; margin: 0; line-height: 1.3; }

/* ==========================================================================
   Key Deliverables
   ========================================================================== */

.key-deliverables { margin-top: 8pt; }
.key-deliverables h3 { font-size: 12pt; margin-bottom: 4pt; }
.checklist {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2pt 12pt;
}
.checklist li { font-size: 10pt; margin: 0; }

/* ==========================================================================
   Pricing
   ========================================================================== */

.pricing-card {
    border: 1.5pt solid #2c5f2d;
    padding: 10pt;
    margin: 8pt 0;
}
.price-title { font-size: 12pt; margin-bottom: 4pt; }
.price-amount {
    font-size: 20pt;
    color: #2c5f2d !important;
    font-weight: bold;
    margin-bottom: 8pt;
}
.pricing-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2pt 10pt;
    margin: 0;
    padding-left: 14pt;
}
.pricing-features li { font-size: 10pt; margin: 0; }

.itemized-breakdown { margin-top: 10pt; }
.itemized-breakdown h4 { font-size: 11pt; margin-bottom: 4pt; }
.cost-table {
    width: 100%;
    border-collapse: collapse;
}
.cost-table td {
    font-size: 11pt;
    padding: 3pt 6pt;
    border-bottom: 0.5pt solid #ddd;
}
.cost-table .total-row {
    border-top: 1.5pt solid #2c5f2d;
    font-weight: bold;
}
.cost-amount { text-align: right; }

.hosting-info, .future-services {
    margin-top: 8pt;
    padding: 6pt;
    background: #f9f9f9;
}
.hosting-info h4, .future-services h4 {
    font-size: 11pt;
    margin-bottom: 4pt;
}
.hosting-info p, .future-services p { font-size: 10pt; }
.hosting-info ul { margin: 0; padding-left: 14pt; }
.hosting-info li { font-size: 10pt; margin: 0; }

/* ==========================================================================
   Timeline
   ========================================================================== */

.timeline-intro { margin-bottom: 8pt; }
.timeline {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8pt;
    border: none;
    padding: 0;
    margin: 0;
}
.timeline-phase {
    border: 0.5pt solid #ccc;
    padding: 6pt 8pt;
    margin: 0;
}
.timeline-phase::before { display: none; }
.phase-header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 4pt;
}
.phase-header h3 { font-size: 11pt; margin: 0; }
.phase-duration {
    font-size: 10pt;
    font-weight: bold;
    color: #2c5f2d !important;
}
.timeline-phase ul {
    margin: 0;
    padding-left: 12pt;
}
.timeline-phase li { font-size: 10pt; margin: 0; }

/* ==========================================================================
   Portfolio
   ========================================================================== */

.portfolio-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 6pt;
}
.portfolio-item {
    border: 0.5pt solid #ccc;
    padding: 6pt;
    text-decoration: none;
    color: #000;
}
.portfolio-item h4 { font-size: 10pt; font-weight: 600; margin: 0 0 2pt; }
.portfolio-url { color: #2c5f2d !important; font-size: 9pt; display: block; }
.portfolio-item p { font-size: 9pt; margin: 4pt 0 0; line-height: 1.25; }
.portfolio-cta { margin-top: 6pt; }

/* ==========================================================================
   References
   ========================================================================== */

.references-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 6pt;
}
.reference-card {
    border: 0.5pt solid #ccc;
    padding: 6pt;
}
.reference-card h4 { font-size: 10pt; font-weight: 600; margin: 0 0 3pt; }
.reference-card p { font-size: 9pt; margin: 0 0 2pt; line-height: 1.25; }
.ref-company { font-weight: 500; }
.ref-project { font-style: italic; }
.ref-email { word-break: break-all; }
.ref-link a { font-size: 9pt; }
.references-note { margin-top: 6pt; }

/* ==========================================================================
   Barn Quilt Bonus - Text only for print
   ========================================================================== */

.bonus-feature {
    margin: 10pt 0;
    border: 1pt solid #2c5f2d;
    padding: 10pt;
}
.bonus-feature h2 {
    margin-top: 0;
}
.barn-quilt-grid { display: block; }
.barn-quilt-description {
    max-width: 100%;
}
.feature-intro { margin-bottom: 6pt; }
.feature-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2pt 10pt;
    margin: 6pt 0;
    padding-left: 14pt;
}
.feature-list li { font-size: 10pt; margin: 0; }
.feature-note { margin-top: 6pt; }

/* ==========================================================================
   Contact & CTA
   ========================================================================== */

.cta-section { padding: 10pt 0; }
.cta-text { margin: 8pt 0; }
.supplier-info {
    margin-top: 8pt;
    padding-top: 8pt;
    border-top: 0.5pt solid #ccc;
    font-size: 9pt;
}
.supplier-info p { margin: 0; }
.contact-info {
    border: 1.5pt solid #2c5f2d;
    padding: 10pt;
    margin: 10pt auto;
    max-width: 300pt;
    text-align: center;
}
.contact-info h3 { font-size: 12pt; margin-bottom: 6pt; }
.contact-info p { margin-bottom: 4pt; }
.proposal-date { margin-top: 10pt; }
