/* One paper family. Marks organise the page; shadows describe attached paper. */
:root {
  --pencil-rule:url("../images/pencil-rule.8b664e18838d.svg");
  --pencil-frame:url("../images/pencil-frame.335ddd74cf85.svg");
  --pencil-vertical:url("../images/pencil-rule-vertical.4ff293f3d04b.svg");
  --paper-tape:url("../images/tape-strip.1f4e74c2df34.svg");
}

/* A symbol has one meaning wherever it is used. Editorial titles remain type. */
.travel-book :is(.footnote-label,.detail-facts dt,.place-label) { display:flex; align-items:center; gap:7px; }
.travel-book :is(.footnote-label,.detail-facts dt,.place-label,.duration-label)>.line-icon { width:16px; height:16px; flex:0 0 16px; color:currentColor; }
.travel-book .detail-facts dt>.line-icon { width:14px; height:14px; flex-basis:14px; }
.travel-book .package-card .package-card-folio .duration-label { display:inline-flex; align-items:center; gap:5px; }
.travel-book .album-volume .timeline-item h3>.line-icon { display:inline-block; width:21px; height:21px; margin-right:9px; vertical-align:-4px; }
.travel-book .album-volume .detail-anchor-nav a { display:inline-flex; align-items:center; gap:8px; }
.travel-book .album-volume .detail-anchor-nav a>.line-icon { width:18px; height:18px; flex:0 0 18px; color:inherit; }
.travel-book .footnote-label { min-height:21px; }
.travel-book .footnote-label>.line-icon { width:19px; height:19px; flex-basis:19px; }
.travel-book .section-symbol-label { display:flex; align-items:center; gap:12px; }
.travel-book .section-symbol-label>.line-icon { width:23px; height:23px; flex:0 0 23px; }
.travel-book .contact-notes dt { display:flex; align-items:center; gap:7px; }
.travel-book .contact-notes dt>.line-icon { width:16px; height:16px; flex:0 0 16px; }

/* Bookmarks sit over the top edge. Only their painted paper is cut, so focus
   outlines and click targets retain the complete rectangular area. */
.travel-book .site-nav { gap:7px; align-items:flex-start; }
.travel-book .site-nav>a:not(.site-nav-cta),.travel-book .site-nav>.site-nav-cta {
  --bookmark-drop:0px; --bookmark-angle:-.6deg;
  isolation:isolate; position:relative; display:flex; flex-direction:column;
  justify-content:flex-start; align-items:center; gap:9px; min-width:75px;
  min-height:96px; padding:16px 11px 26px; border:0; border-radius:0;
  background:none; box-shadow:none; margin:0; white-space:normal;
  transform:translateY(var(--bookmark-drop)) rotate(var(--bookmark-angle));
  filter:drop-shadow(2px 4px 3px #453e342d); font-size:12px; line-height:1.3;
}
.travel-book .site-nav>a::before {
  content:""; position:absolute; inset:0; z-index:-1;
  background:var(--tab-paper,#d7caa5) url("../images/cotton-paper.4a7dde36049e.svg");
  clip-path:polygon(0 0,100% 0,100% 100%,50% calc(100% - 10px),0 100%);
  box-shadow:inset 1px 0 #f7efd34d,inset -1px 0 #71664740,inset 0 3px #fff3d43d;
}
.travel-book .site-nav>a:nth-child(even) { --bookmark-drop:5px; --bookmark-angle:.7deg; }
.travel-book .site-nav>a:nth-child(3n) { --bookmark-drop:-3px; --bookmark-angle:-.3deg; }
.travel-book .site-nav>.site-nav-cta::before { background:#345c50 url("../images/bookcloth.6873302dc334.svg"); }
.travel-book .site-nav>.site-nav-cta { color:#fff1d4; }
.travel-book .site-nav .line-icon { width:19px; height:19px; flex:0 0 19px; color:inherit; }
.travel-book .site-nav .bookmark-label { display:inline-flex; align-items:center; justify-content:center; gap:5px; width:auto; height:auto; background:none; border:0; border-radius:0; color:inherit; font:inherit; text-align:center; }
.travel-book .site-nav [data-shortlist-count] { display:inline-grid; place-items:center; width:17px; height:18px; font-size:10px; background:#f1e9cd; color:#385844; border-radius:2px; }
.travel-book .site-nav>a:not(.site-nav-cta):hover,.travel-book .site-nav>a[aria-current],.travel-book .site-nav>.site-nav-cta:hover {
  background:none; box-shadow:none; padding:16px 11px 26px; margin:0;
  transform:translateY(calc(var(--bookmark-drop) - 5px)) rotate(var(--bookmark-angle));
}
.travel-book .site-nav>a[aria-current]::after { content:""; position:absolute; left:19%; right:19%; bottom:15px; height:9px; border:0; background:currentColor; mask:var(--pencil-rule) center/100% 9px no-repeat; }
.travel-book .site-nav>a:focus-visible { outline:3px solid #315c50; outline-offset:4px; }

/* Full working dividers replace their former straight borders. The blank
   centre of the frame asset keeps headings and fields on their own paper. */
.travel-book .site-header,
.travel-book :is(.collection-folio,.journey-folio,.spread-folio,.results-heading,.album-heading,.album-footnote,.card-topline,.contact-panel-folio),
.travel-book :is(.home-feature-section,.service-categories-section,.destination-photo-story)>.section-heading,
.travel-book .request-form-section>h3 {
  border-bottom:10px solid transparent; border-image:var(--pencil-rule) 0 0 14 0 stretch;
}
.travel-book .site-header::after { display:none; }
.travel-book :is(.footer-signature,.package-card-footer,.service-card-action,.action-ticket-heading,.request-reference) {
  border-top:10px solid transparent; border-image:var(--pencil-rule) 14 0 0 0 stretch;
}
.travel-book .package-card .package-card-footer { border-top:10px solid transparent; border-image:var(--pencil-rule) 14 0 0 0 stretch; padding-top:12px; }
.travel-book .service-card-action { padding-top:16px; }
.travel-book .service-kind-travel_package .service-card-action { border-image:none; border-color:#bac8ab66; }
.travel-book .detail-action-panel .action-ticket-heading { border:0; }
.travel-book .detail-action-panel .action-price { border-bottom:10px solid transparent; border-image:var(--pencil-rule) 0 0 14 0 stretch; }
.travel-book .album-volume .schedule-time { border:0; padding:4px 1px; }
.travel-book .album-volume .schedule-note .schedule-time { border:0; }
.travel-book .album-volume .schedule-passage:not(.schedule-passage-illustrated):nth-child(3n)>.schedule-paragraph:not(.schedule-note) { border:0; background:var(--pencil-vertical) left center/10px 100% no-repeat; }
.travel-book .album-edition { border:8px solid transparent; border-image:var(--pencil-frame) 12 stretch; }
.travel-book :is(.text-link,.text-button) { position:relative; border:0; text-decoration:none; }
.travel-book :is(.text-link,.text-button)::after { content:""; position:absolute; left:0; right:0; bottom:-3px; height:8px; background:currentColor; mask:var(--pencil-rule) center/100% 8px no-repeat; pointer-events:none; }
.travel-book .comparison-scroll { border:10px solid transparent; border-image:var(--pencil-frame) 12 stretch; border-radius:0; box-shadow:none; background:none; }
.travel-book .comparison-table :is(th,td),.travel-book .comparison-table tbody tr:nth-child(n) td { border:0; background-image:var(--pencil-vertical),var(--pencil-rule),url("../images/cotton-paper.4a7dde36049e.svg"); background-position:right center,center bottom,left top; background-size:10px 100%,100% 10px,auto; background-repeat:no-repeat,no-repeat,repeat; }

/* Postage stamps sit on a blue-grey slip, tucked inside the page margin.
   Its opaque paper keeps the floating navigation clear over photographs and prose. */
.travel-book .album-volume .detail-anchor-nav {
  --stamp-width:clamp(116px,10.2vw,140px);
  --stamp-sheet:#bfceca; --stamp-inset:clamp(16px,2vw,28px); --stamp-fold:24px;
  display:flex; align-items:center; flex-wrap:nowrap; gap:12px;
  width:fit-content; max-width:calc(100% - var(--stamp-inset)); min-width:0;
  margin-inline:var(--stamp-inset) 0; padding:12px calc(var(--stamp-fold) + 12px) 12px 12px; border:0; border-image:none;
  background:var(--stamp-sheet) url("../images/cotton-paper.4a7dde36049e.svg");
  background-image:linear-gradient(45deg,#9eafa7,#d4dfd0 43%,#e5e9d6 48%,#8da59d 50%,transparent 52%),url("../images/cotton-paper.4a7dde36049e.svg"),linear-gradient(105deg,#b4c8c6,#c8d4cc 55%,#bbcdcb);
  background-size:var(--stamp-fold) var(--stamp-fold),auto,auto;
  background-position:right top,left top,left top; background-repeat:no-repeat,repeat,no-repeat;
  clip-path:polygon(0 0,calc(100% - var(--stamp-fold)) 0,100% var(--stamp-fold),100% 100%,0 100%);
  box-shadow:inset 0 1px #edf1de99,inset 0 -2px #6f969526,0 2px 4px #48584b1c;
  border-radius:2px 4px 3px 2px; overflow-x:auto; overflow-y:hidden;
  scrollbar-width:thin; scrollbar-color:#7c9690 var(--stamp-sheet);
}
.travel-book .album-volume .detail-anchor-nav a {
  --stamp-paper:#bdcdb1; --stamp-ink:#345342; --stamp-angle:-.6deg;
  position:relative; isolation:isolate; display:flex; flex-direction:column;
  align-items:center; justify-content:center; flex:0 0 var(--stamp-width);
  width:var(--stamp-width); height:88px; gap:5px; padding:14px 13px;
  border:0; border-radius:0; margin:0; background:none; color:var(--stamp-ink);
  font-size:12.5px; font-weight:650; line-height:1.25; text-align:center;
  white-space:normal; text-decoration:none; box-shadow:none;
  scroll-margin-inline:10px calc(var(--stamp-fold) + 10px);
  transform:rotate(var(--stamp-angle)); filter:drop-shadow(0 1px 1px #4c49392b);
  transition:transform .16s ease,color .16s ease;
}
.travel-book .album-volume .detail-anchor-nav a:nth-child(even) { --stamp-angle:.5deg; background:none; transform:rotate(var(--stamp-angle)); }
.travel-book .album-volume .detail-anchor-nav a[href="#price-options-section"] { --stamp-paper:#e5cb87; --stamp-ink:#694e25; }
.travel-book .album-volume .detail-anchor-nav a[href="#gallery-section"] { --stamp-paper:#b6cfda; --stamp-ink:#355768; }
.travel-book .album-volume .detail-anchor-nav a[href="#includes-section"] { --stamp-paper:#c9d7b4; --stamp-ink:#4a5e37; }
.travel-book .album-volume .detail-anchor-nav a[href="#excludes-section"] { --stamp-paper:#ddb7a8; --stamp-ink:#714b3e; }
.travel-book .album-volume .detail-anchor-nav a[href="#policy-section"] { --stamp-paper:#ccbbd5; --stamp-ink:#604c70; }
.travel-book .album-volume .detail-anchor-nav a::before {
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:var(--stamp-paper) url("../images/cotton-paper.4a7dde36049e.svg");
  mask:url("../images/postage-paper.07833b6881d1.svg") center/100% 100% no-repeat;
}
.travel-book .album-volume .detail-anchor-nav a::after {
  content:""; position:absolute; inset:9px; border:3px double currentColor;
  opacity:.65; pointer-events:none;
}
.travel-book .album-volume .detail-anchor-nav a>.line-icon { width:22px; height:22px; flex:0 0 22px; color:inherit; }
.travel-book .album-volume .detail-anchor-nav a>.stamp-label { font-size:inherit; color:inherit; }
.travel-book .album-volume .detail-anchor-nav a[aria-current] { background:none; color:#faf2d9; }
.travel-book .album-volume .detail-anchor-nav a[aria-current]::before { background-color:var(--stamp-ink); }
.travel-book .album-volume .detail-anchor-nav a:hover { background:none; color:var(--stamp-ink); transform:translateY(-2px) rotate(var(--stamp-angle)); }
.travel-book .album-volume .detail-anchor-nav a[aria-current]:hover { color:#faf2d9; }
.travel-book .album-volume .detail-anchor-nav a:focus-visible { outline:3px solid #315c50; outline-offset:4px; }
.travel-book .album-volume :is(.detail-section,.detail-info-panel,.detail-action-panel) { scroll-margin-top:128px; }

/* Keep headings close to their content while leaving room for tape and
   rotated photographs between the individual passages. */
.travel-book .album-volume .detail-content-grid { margin-top:22px; gap:26px; }
.travel-book .album-volume .detail-section { padding-block:28px; margin-bottom:18px; }
.travel-book .album-volume .detail-section-heading { padding-bottom:6px; margin-bottom:16px; }
.travel-book .album-volume .timeline-prose { padding-block:4px 10px; }
.travel-book .album-volume .schedule-passage { margin-block:22px; }
.travel-book .album-volume .schedule-passage-illustrated:nth-child(n) { margin-block:30px 32px; gap:30px; }
.travel-book .album-volume .timeline-prose>.schedule-passage:first-child { margin-top:16px; }
.travel-book .album-volume .timeline-prose>.schedule-passage:last-child { margin-bottom:16px; }

/* Clean paper edges. Proportion and placement supply the variation. */
.travel-book .package-card-body::after,
.travel-book .trip-story-note::after,
.travel-book .destination-field-note::after,
.travel-book .destination-atlas-card:nth-child(3n) .content-card-body::after,
.travel-book .album-volume .schedule-passage:nth-child(n) .schedule-note::after,
.travel-book .site-footer-inner>section::after,.travel-book .site-footer-inner>nav::after { display:none; }
.travel-book .site-footer-inner { align-items:start; }
.travel-book .site-footer-inner>.footer-intro { padding:28px 25px 31px; }
.travel-book .site-footer-inner>.site-footer-links { width:91%; margin-left:6%; padding:25px 22px 22px; }
.travel-book .site-footer-inner>.site-footer-contact { margin-top:12px; padding:27px 22px 23px; }
.travel-book .trip-story-note { box-shadow:2px 5px 6px #554c3a24; transform:rotate(-.8deg); }
.travel-book .album-volume .trip-brief-side { box-shadow:2px 5px 6px #554c3a24; }
.travel-book .album-volume .schedule-passage:nth-child(n) .schedule-note { box-shadow:2px 5px 6px #51493626; border-radius:0; }
.travel-book .album-volume .schedule-passage .schedule-note.note-compact { min-width:0; max-width:440px; padding:18px 25px; }
.travel-book .album-volume .schedule-passage:nth-child(4n+3) .schedule-note { margin-right:7%; transform:rotate(1.3deg); }
.travel-book .album-volume .schedule-passage:nth-child(4n) .schedule-note { margin-left:11%; transform:rotate(-1deg); }
.travel-book .album-volume .schedule-passage-illustrated:nth-child(n) .schedule-note { max-width:100%; margin:0; }
.travel-book .album-volume .schedule-passage-illustrated:nth-child(n) .schedule-note.note-compact { width:fit-content; max-width:88%; justify-self:start; }
.travel-book .album-volume .schedule-passage-illustrated:nth-child(even) .schedule-note.note-compact { justify-self:end; }
.travel-book .contact-page .contact-list.contact-notes>div:nth-child(2n) { max-width:88%; }
.travel-book .request-next-steps li:nth-child(1) { max-width:84%; padding:21px 24px; }
.travel-book .request-next-steps li:nth-child(3) { width:93%; padding:25px 24px; }

/* Tape replaces metal fasteners. Existing photo corners remain mounts. */
.travel-book :is(.trip-brief-side,.trip-story-note,.destination-field-note,.request-intro-photo)::before,
.travel-book .request-form-section:nth-of-type(2)::before,
.travel-book .site-footer-inner>.site-footer-contact::before,
.travel-book .empty-state:not(.empty-state-illustrated)::before,
.travel-book .package-card:nth-child(4n) .package-card-body::before,
.travel-book .package-card:nth-child(4n+2) .package-print::before,
.travel-book .package-card:nth-child(4n) .package-print::before,
.travel-book .destination-atlas-card:nth-child(even) .destination-print::before,
.travel-book .destination-atlas-card:nth-child(3n) .destination-print::before,
.travel-book .home-album .album-photo:nth-child(4n+2)::before,
.travel-book .home-album .album-photo:nth-child(4n)::before,
.travel-book .album-volume .schedule-passage:nth-child(n) .schedule-note::before {
  content:""; position:absolute; inset:auto; top:-10px; left:24px; width:66px; height:23px;
  border:0; border-radius:0; background:var(--paper-tape) center/100% 100% no-repeat;
  box-shadow:none; transform:rotate(-5deg); pointer-events:none; z-index:2;
}
.travel-book :is(.trip-brief-side,.destination-field-note)::before,
.travel-book .site-footer-inner>.site-footer-contact::before,
.travel-book .request-form-section:nth-of-type(2)::before,
.travel-book .empty-state:not(.empty-state-illustrated)::before { left:auto; right:23px; width:57px; transform:rotate(7deg); }
.travel-book .album-volume .schedule-passage:nth-child(4n+2) .schedule-note::before { left:auto; right:21px; width:57px; transform:rotate(6deg); }
.travel-book .album-volume .schedule-passage:nth-child(4n+3) .schedule-note::before { left:auto; right:21px; width:63px; transform:rotate(-7deg); }
.travel-book .album-volume .schedule-passage:nth-child(4n) .schedule-note::before { left:18px; width:48px; transform:rotate(3deg); }
.travel-book .package-card:nth-child(4n) .package-print::before,
.travel-book .destination-atlas-card:nth-child(3n) .destination-print::before,
.travel-book .home-album .album-photo:nth-child(4n)::before { left:auto; right:18px; width:61px; transform:rotate(8deg); }
.travel-book .package-card:nth-child(4n) .package-card-body::before { width:50px; left:20px; transform:rotate(-8deg); }
.travel-book .destination-atlas-card:nth-child(even) .destination-print::before { width:71px; transform:rotate(4deg); }
.travel-book .home-album .album-photo:nth-child(4n+2)::before { left:30px; width:74px; transform:rotate(-6deg); }
.travel-book .site-brand::before,
.travel-book .album-catalogue .collection-hero-copy>p:last-child::before,
.travel-book .request-next-steps li:nth-child(3)::before,
.travel-book .album-volume .schedule-passage .scene-photo::before,
.travel-book .detail-info-panel::before { background:var(--paper-tape) center/100% 100% no-repeat; height:23px; top:-10px; border:0; box-shadow:none; }
.travel-book .detail-info-panel-policy::before,.travel-book .detail-info-panel-long::before { display:none; }
.travel-book .home-introduction .intro-copy,.travel-book .request-next-steps li,.travel-book .contact-notes>div { position:relative; }
.travel-book .home-introduction .intro-copy::before,
.travel-book .request-next-steps li:first-child::before,
.travel-book .contact-notes>div:first-child::before { content:""; position:absolute; top:-10px; left:22px; width:58px; height:22px; background:var(--paper-tape) center/100% 100% no-repeat; transform:rotate(5deg); pointer-events:none; }

@media(min-width:981px) and (max-width:1250px) {
  .travel-book .site-header-inner { padding-top:5px; }
  .travel-book .site-nav { margin-top:-37px; }
}
@media(max-width:980px) {
  .travel-book .site-header .site-nav { align-items:flex-start; row-gap:12px; }
  .travel-book .site-header .site-nav>a:not(.site-nav-cta),.travel-book .site-header .site-nav>.site-nav-cta { flex-direction:row; justify-content:center; gap:7px; min-width:0; min-height:55px; padding:13px 13px 20px; }
  .travel-book .site-nav .line-icon { width:17px; height:17px; flex-basis:17px; }
  .travel-book .site-nav>a::before { clip-path:polygon(0 0,100% 0,100% 100%,50% calc(100% - 7px),0 100%); }
  .travel-book .site-nav>a[aria-current]::after { bottom:10px; height:7px; }
  .travel-book .site-footer-inner>.site-footer-links { width:93%; margin:4px 0 0 5px; }
}
@media(max-width:760px) {
  .travel-book .album-volume .detail-anchor-nav { --stamp-width:116px; --stamp-inset:8px; --stamp-fold:18px; gap:10px; padding:8px calc(var(--stamp-fold) + 10px) 10px 10px; }
  .travel-book .album-volume .detail-anchor-nav a { height:80px; padding:12px 11px; font-size:12px; }
  .travel-book .album-volume .detail-anchor-nav a>.line-icon { width:18px; height:18px; flex-basis:18px; }
  .travel-book .album-volume .detail-anchor-nav a::after { inset:8px; }
  .travel-book .album-volume :is(.detail-section,.detail-info-panel,.detail-action-panel) { scroll-margin-top:120px; }
  .travel-book .album-volume .detail-section { padding-block:24px; }
  .travel-book .album-volume .schedule-passage { margin-block:20px; }
  .travel-book .album-volume .schedule-passage-illustrated:nth-child(n) { margin-block:26px 28px; gap:24px; }
  .travel-book .album-volume .schedule-passage:nth-child(n) .schedule-note { max-width:94%; margin:8px 3px 10px; }
  .travel-book .album-volume .schedule-passage .schedule-note.note-compact { max-width:87%; padding:18px 20px; }
  .travel-book .album-volume .schedule-passage:nth-child(4n+3) .schedule-note { margin-left:6%; }
  .travel-book .album-volume .schedule-passage-illustrated:nth-child(n) .schedule-note { max-width:100%; margin:0; }
  .travel-book .album-volume .schedule-passage-illustrated:nth-child(n) .schedule-note.note-compact { max-width:90%; }
  .travel-book .site-footer-inner>.footer-intro { padding:25px 22px; }
  .travel-book .site-footer-inner>.site-footer-contact { margin-top:0; }
  .travel-book .album-volume .timeline-item h3 { font-size:18px; }
  .travel-book .album-volume .timeline-item h3>.line-icon { width:18px; height:18px; margin-right:6px; }
  .travel-book .request-next-steps li:nth-child(1) { max-width:92%; }
}
/* Short copy stays with what it describes: itinerary context at the title,
   day endings beside the prose, and service availability beside its icon. */
.travel-book .album-volume .schedule-intro {
  display:flex; flex-wrap:wrap; gap:8px 24px; list-style:none;
  margin:8px 0 0; padding:0; color:#385b50; font:600 17px/1.6 var(--sans);
}
.travel-book .album-volume .schedule-intro li { display:flex; align-items:baseline; gap:8px; margin:0; padding:0; }
.travel-book .album-volume .schedule-intro .line-icon { width:19px; height:19px; flex:0 0 19px; align-self:flex-start; margin-top:4px; }
.travel-book .timeline-section:has(.schedule-intro) .detail-section-heading { margin-bottom:8px; }
.travel-book .timeline-section:has(.schedule-intro) .timeline-item:first-child .schedule-passage:first-child { margin-top:8px; }
.travel-book .album-volume .schedule-passage-closing:last-child { margin:10px 0 8px; }
.travel-book .album-volume .schedule-passage:has(+.schedule-passage-closing) { margin-bottom:10px; }
.travel-book .album-volume .schedule-overnight { display:flex; align-items:baseline; gap:8px; margin:0; padding:0; font:500 16px/1.65 var(--sans); color:#435c50; }
.travel-book .album-volume .schedule-overnight .line-icon { width:18px; height:18px; flex:0 0 18px; align-self:flex-start; margin-top:4px; }
.travel-book .price-option-heading { display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 12px; margin-bottom:8px; }
.travel-book .price-option-heading :is(h3,p) { margin:0; }
.travel-book .price-option-heading .muted-note { font-size:13px; }
.travel-book .service-card-meta { display:flex; align-items:center; gap:12px; margin-bottom:14px; }
.travel-book .service-card-meta .service-card-icon { flex:0 0 auto; margin:0; }
.travel-book .service-card-meta .service-card-icon>.line-icon { width:32px; height:32px; padding:6px; }
.travel-book .service-card-meta .eyebrow { min-width:0; margin:0; font-size:12px; line-height:1.55; letter-spacing:.055em; }
.travel-book .service-card-number { flex:0 0 auto; margin-left:auto; color:#708675; font-size:28px; line-height:1; }
.travel-book .service-kind-travel_package .service-card-number { color:#c5bb94; }

/* A photo still has a generous paper border, but its caption is legible
   without needing a deep empty strip beneath a few words. */
.travel-book :is(.album-photo,.home-main-image,.home-inset-image,.collection-hero-image,.destination-list-hero,.destination-hero-media,.request-intro-photo,.shortlist-empty) figcaption,
.travel-book .destination-scenes-grid .scene-photo figcaption,
.travel-book .detail-image-gallery>figure figcaption {
  padding:10px 5px; font-size:13px; line-height:1.6;
}
.travel-book .album-volume .schedule-passage .scene-photo figcaption { padding:10px 6px; font-size:13px; line-height:1.6; }
.travel-book .trip-photo-lead .trip-print-caption { font-size:13px; line-height:1.6; }
.travel-book .album-catalogue .collection-hero-image figcaption { padding:10px 5px; font-size:13px; }
.travel-book .service-hub-hero .page-hero-media figcaption { margin:10px 4px 4px; font-size:13px; line-height:1.6; }
.travel-book .service-hub-hero .page-hero-media figcaption>span,
.travel-book .album-photo figcaption>span { font-size:11px; }
.travel-book .destination-atlas-card .content-card-body .eyebrow { margin-bottom:6px; font-size:12px; }
.travel-book .package-card .package-card-folio { padding-block:10px; font-size:12px; line-height:1.6; }
.travel-book .package-card-folio>.duration-label { font-size:12px; }
.travel-book .package-card .card-topline .eyebrow,
.travel-book .album-volume .detail-section-heading .eyebrow,
.travel-book .action-ticket-body .eyebrow,
.travel-book .results-heading .eyebrow { font-size:12px; letter-spacing:.08em; }
.travel-book .album-volume .detail-facts dt { font-size:12px; }
.travel-book :is(.collection-folio,.journey-folio)>span:not([aria-hidden]) { font-size:11px; }
.travel-book .footnote-label { margin-bottom:10px; font-size:12px; }
.travel-book main :is(p,figcaption,.package-card-folio>span) { text-wrap:pretty; }

/* Small headings and references should introduce the following content. */
.travel-book .contact-panel-folio { padding-bottom:12px; margin-bottom:18px; font-size:12px; }
.travel-book .contact-notes dt { font-size:13px; margin-bottom:6px; }
.travel-book .contact-panel .contact-list { margin-bottom:18px; }
.travel-book .contact-page .contact-channel-group h3 { margin:0 0 10px; }
.travel-book .contact-channel-group .link-list { margin-block:0; }
.travel-book .search-results>h2 { margin:20px 0 14px; }
.travel-book .status-panel h1:has(+.request-reference) { margin-bottom:16px; }
.travel-book .status-panel .request-reference { gap:4px 8px; margin:0 0 20px; padding:8px 14px; align-items:baseline; }
.travel-book .request-reference strong { font-size:17px; white-space:nowrap; }

@media(max-width:760px) {
  .travel-book .album-volume .schedule-intro { gap:6px 18px; font-size:16px; }
  .travel-book .album-volume .schedule-overnight { font-size:15px; }
  .travel-book .service-card-meta { gap:10px; }
}
@media(prefers-reduced-motion:reduce) { .travel-book .site-nav>a,.travel-book .album-volume .detail-anchor-nav a { transition:none; } }
@media(forced-colors:active) {
  .travel-book .album-volume .detail-anchor-nav { background:Canvas; scrollbar-color:auto; clip-path:none; }
  .travel-book .album-volume .detail-anchor-nav a { border:1px solid ButtonText; color:ButtonText; filter:none; }
  .travel-book .album-volume .detail-anchor-nav a[aria-current] { background:Highlight; color:HighlightText; }
  .travel-book .album-volume .detail-anchor-nav a::before,.travel-book .album-volume .detail-anchor-nav a::after { display:none; }
  .travel-book .site-nav>a::before,.travel-book .site-nav>a[aria-current]::after { display:none; }
  .travel-book .site-nav>a:not(.site-nav-cta),.travel-book .site-nav>.site-nav-cta { background:ButtonFace; color:ButtonText; border:1px solid ButtonText; filter:none; }
  .travel-book .site-nav>a[aria-current] { text-decoration:underline; }
  .travel-book :is(.site-header,.collection-folio,.journey-folio,.spread-folio,.results-heading,.album-heading,.album-footnote,.card-topline,.footer-signature,.package-card-footer,.service-card-action,.request-reference,.comparison-scroll) { border-image:none; border-color:CanvasText; }
  .travel-book .comparison-table :is(th,td),.travel-book .comparison-table tbody tr:nth-child(n) td { background-image:none; border:1px solid CanvasText; }
  .travel-book :is(.trip-brief-side,.trip-story-note,.destination-field-note,.request-intro-photo)::before,
  .travel-book .site-footer-contact::before,.travel-book .request-form-section::before,.travel-book .empty-state::before,
  .travel-book .album-volume .schedule-passage:nth-child(n) .schedule-note::before,
  .travel-book .package-card .package-print::before,.travel-book .package-card-body::before,
  .travel-book .destination-print::before,.travel-book .home-album .album-photo::before,
  .travel-book .home-introduction .intro-copy::before,.travel-book .contact-notes>div::before { display:none; }
}
@media print {
  .travel-book .album-volume .detail-anchor-nav { display:none; }
  .travel-book .album-volume .schedule-passage:nth-child(n) .schedule-note::before,
  .travel-book .home-introduction .intro-copy::before,.travel-book .contact-notes>div::before,
  .travel-book .request-next-steps li::before { display:none; }
  .travel-book .album-volume .schedule-passage:nth-child(n) .schedule-note { box-shadow:none; transform:none; max-width:100%; }
  .travel-book .comparison-table :is(th,td),.travel-book .comparison-table tbody tr:nth-child(n) td { background:none; border:1px solid #777; }
}
/* A share slip belongs to the collection, independent of browser storage. */
.collection-share { margin: 1.5rem 0 2rem; max-width: 58rem; background: url("../images/cotton-paper.4a7dde36049e.svg"), #cbdcc2; padding: 1rem 1.4rem; box-shadow: 1px 3px 5px #344d3820; }
.collection-share summary { cursor: pointer; font-weight: 650; }
.collection-share-body { padding-top: 1rem; }
.collection-share-body label { display: block; margin-bottom: .5rem; }
.collection-link-row { display: flex; gap: .75rem; flex-wrap: wrap; }
.collection-link-row input { flex: 1 1 20rem; min-width: 0; width: 100%; padding: .7rem; border: 1px solid #7f9a85; background: #f7f5e7; color: #254b43; border-radius: 3px; font: inherit; }
.collection-share-body p { font-size: .88rem; line-height: 1.6; margin-block: .8rem 0; }
