/* Low-ink A4 document layout, separate from the screen theme. */
@page{size:A4;margin:17mm 16mm 18mm}
@media print{
  html,body.program-page{background:#fff!important;color:#222!important}
  .program-page *{box-shadow:none!important;text-shadow:none!important;animation:none!important}
  .program-page #main{padding:0!important}
  .program-page .wrap{width:100%!important;max-width:none!important;margin:0!important}
  .program-page .skip,.program-page .header,.detail-breadcrumb,.detail-actionbar,.detail-section-nav,.day-navigation,.itinerary-controls,.itinerary-day-toggle,.quote-panel,.related-section,.program-footer,.toast,.program-page dialog,.apt-gallery,.detail-photo,.hotel-list img,.program-video-player{display:none!important}
  .program-page .detail-heading{display:block!important;max-width:none;margin:0 0 15pt;padding:0 0 12pt;border-bottom:1pt solid #4b5035;break-inside:avoid}
  .program-page .print-brand[hidden]{display:flex!important;align-items:center;justify-content:space-between;padding-bottom:10pt;margin-bottom:12pt;border-bottom:1pt solid #4b5035}
  .print-brand img{width:115pt;height:auto;filter:none;print-color-adjust:exact;-webkit-print-color-adjust:exact}
  .print-brand span{font:400 9pt Montserrat,Arial,sans-serif;color:#444}
  .program-page .detail-heading .eyebrow{font-size:8pt;letter-spacing:.3pt;color:#444;margin-bottom:8pt}
  .program-page .detail-heading h1{font-size:20pt!important;line-height:1.25;max-width:none!important;color:#111}
  .program-page .detail-heading>p{font-size:10pt!important;line-height:1.6;margin:10pt 0 0;padding:0;border:0;color:#333}
  .program-at-a-glance{font-size:9pt;margin-top:8pt;gap:4pt 12pt;color:#333;flex-direction:row}
  .program-at-a-glance li+li:before{content:'·'}
  .program-page .detail-layout{display:block!important;padding:0!important}
  .detail-main .program-tab-panel,.detail-main .program-tab-panel[hidden]{display:block!important;margin:0;padding:0;border:0}
  .detail-main #itinerary,.detail-main #hotels,.detail-main #inclusions{break-before:page}
  .detail-main h2{font-size:15pt!important;line-height:1.3;margin:0 0 10pt;color:#111}
  .detail-main h3{font-size:11pt!important;line-height:1.5;color:#222}
  .detail-main p,.detail-main li,.detail-main dd{color:#333!important}
  .program-tab-panel .detail-facts{padding:0 0 10pt;margin:0 0 12pt;border-bottom:.5pt solid #bbb}
  .program-tab-panel .detail-facts-list>div{grid-template-columns:90pt minmax(0,1fr);padding:3pt 0;gap:10pt;font-size:9pt;line-height:1.6;border:0}
  .detail-facts-list dt{font-size:9pt;color:#444}
  .highlights-list{gap:6pt}
  .highlights-list li{font-size:10pt;line-height:1.6;padding-left:11pt;break-inside:avoid}
  .highlights-list li:before{background:#333;width:2.5pt;height:2.5pt;top:6.5pt;left:0}
  .highlights-closing{font-size:10pt;line-height:1.6;margin-top:10pt}
  #overview>#videos{margin-top:14pt;padding-top:10pt;border-top:.5pt solid #bbb;break-inside:avoid}
  .program-video-heading{margin-bottom:6pt;gap:8pt}
  .detail-main .program-video-heading h2{font-size:11pt!important}
  .program-page .presentation-cta{font-size:9pt!important;color:#333!important;background:none!important;min-height:0!important;padding:0!important;border:0!important}
  .presentation-cta svg,.presentation-arrow{display:none}
  .program-page .presentation-cta:after{content:' (' attr(href) ')';font-size:8pt}
  .program-videos{display:block}
  .program-videos article{display:block;margin-bottom:5pt}
  .program-videos h3{font-size:9pt!important;margin:0;display:inline}
  .program-videos a{font-size:8pt;margin-left:6pt;color:#333}
  .program-videos a:after{content:' (' attr(href) ')';font-size:8pt}
  .itinerary-heading{margin-bottom:10pt}
  .accommodation-note{font-size:9pt;line-height:1.6;margin-bottom:10pt}
  .timeline.itinerary-accordion{display:block}
  .timeline.itinerary-accordion>li{border:0;border-top:.5pt solid #aaa;margin:0 0 12pt;background:#fff;break-inside:avoid}
  .itinerary-day>summary{padding:9pt 0 5pt!important;background:none!important;border:0!important;min-height:0;outline:0!important;break-after:avoid}
  .timeline .itinerary-day-heading{font-size:11pt!important;line-height:1.5;padding:0}
  .itinerary-day-meta{margin-bottom:4pt;gap:10pt}
  .itinerary-day-meta .stop-time,.itinerary-day-meta .day-departure{font-size:8pt;color:#333;background:none;padding:0}
  .itinerary-day>.itinerary-day-content,.itinerary-day:not([open])>.itinerary-day-content{display:block!important;padding:0!important}
  .detail-main .timeline p{font-size:10pt!important;line-height:1.6;max-width:none;margin:0}
  .detail-main .timeline p+p{margin-top:6pt}
  .timeline .day-details{display:block;margin-top:8pt;padding-top:5pt;border-top:.4pt solid #ddd}
  .timeline .day-details>div{display:inline-block;vertical-align:top;margin:0 18pt 3pt 0}
  .timeline .day-details dt{font-size:7pt;color:#555}
  .timeline .day-details dd{font-size:9pt;line-height:1.5;margin:2pt 0 0}
  .hotel-list li{display:flex;gap:12pt;padding:10pt 0;break-inside:avoid;border-bottom:.5pt solid #ccc}
  .hotel-list h3{font-size:11pt!important;margin:0 0 4pt}
  .hotel-list p,.hotel-list li>span{font-size:9pt;line-height:1.6}
  .inclusions-grid{display:block}
  .inclusions-grid>div+div{margin-top:14pt}
  .inclusions-grid h3{margin-bottom:7pt}
  .inclusions-grid ul,.notes-list{font-size:10pt;line-height:1.6;padding-left:13pt}
  .inclusions-grid li,.notes-list li{margin-bottom:4pt;break-inside:avoid}
  .detail-main #inclusions>section+section{padding-top:12pt;margin-top:12pt;border-top:.5pt solid #bbb}
  .program-meals{break-inside:avoid}
  .meals-table{font-size:9pt}
  .meals-table th,.meals-table td{padding:4pt;border:.5pt solid #ccc;background:none!important;color:#222}
  .meal-status{font-size:10pt;color:#222}
  .detail-main .meals-key{font-size:8pt;margin-top:5pt}
  .important-note{break-inside:avoid}
  .important-note h2{font-size:11pt!important}
  .important-note p{font-size:9pt;line-height:1.6}
  .program-page a{color:#222;text-decoration:none}
}
