/* Generated from globals.css minus critical.css. Do not edit directly. */
textarea { resize: vertical
}
.eyebrow { font-size: 0.75rem; letter-spacing: 0.18em
}
h2 { margin-bottom: 26px; font-size: clamp(3.25rem, 6.6vw, 6.4rem); letter-spacing: -0.045em; line-height: 0.92
}
:where([class$="-hero"], [class*="-hero "]), .site-footer, .journey-section, .stays-section, .fit-section, :where([class$="-final-section"], [class*="-final-section "]), .packages-decision-section, .packages-expectation-section, .one-night-day-one, .one-night-wildlife-section, .one-night-before-confirm, .two-night-difference, .two-night-day-two, .two-night-dining, .two-night-wildlife, .two-night-before-confirm, .whispering-winds-cabins, .whispering-winds-dining, .whispering-winds-night, .whispering-winds-wildlife, .experience-moment, .experience-dinner, .experience-night, .experience-wildlife, .experience-comparison-houseboat, .experience-product, .itinerary-philosophy, .itinerary-two-nights, .itinerary-private-card, .itinerary-wildlife, .itinerary-trust, .private-charter-suits, .private-charter-boundaries, .private-charter-dining, .private-charter-wildlife, .private-charter-trust, .gallery-category-dark, .gallery-asset-queue, .gallery-trust, .reviews-night-story, .reviews-stays, .about-idea, .about-vessel, .about-boundaries, .about-wildlife, .about-identity, .faq-expectations, .contact-next, .contact-checklist, .contact-identity, .blogs-roadmap, .blogs-migration, .blog-inline-cta, .blog-related { --accent-color: var(--brass-on-dark); --brass: var(--brass-on-dark)
}
.planner-form, .tripadvisor-proof { --accent-color: var(--brass-on-light)
}
.section-heading > .eyebrow { margin-bottom: 26px
}
.section-heading > p { max-width: 600px; color: var(--muted)
}
.button { font-size: 0.75rem; letter-spacing: 0.055em
}
.button-outline { border-color: rgba(22,48,45,.48); background: transparent; color: var(--river)
}
.button-outline:hover { background: var(--river); color: var(--sand)
}
.button-quiet { color: var(--river); border-color: var(--line); background: transparent
}
.button-disabled { color: #6e746f; background: #d8d8d0; cursor: not-allowed
}
.text-link { min-height: 48px; display: inline-flex; gap: 12px; align-items: center; border: 0; border-bottom: 1px solid currentColor; padding: 6px 0; background: none; color: var(--river); font-size: .76rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; cursor: pointer
}
.text-link:hover span { transform: translate(3px, -3px)
}
.text-link span { transition: transform .2s ease
}
.verification-badge { display: inline-flex; width: fit-content; margin: 8px 0 0; padding: 4px 8px; border: 1px solid #ad6b30; border-radius: 2px; color: #7a3d12; background: #fff2df; font-family: var(--font-body), sans-serif; font-size: .58rem; font-weight: 750; letter-spacing: .06em; line-height: 1.2; text-transform: uppercase
}
.empty-state, .reviews-pending, .people-placeholder { border: 1px dashed rgba(185,145,84,.5); color: var(--muted); padding: 28px
}
.atmospheric-visual { position: relative; isolation: isolate; min-height: 320px; overflow: hidden; background: #a4b6af
}
.visual-sun { position: absolute; z-index: -3; top: 18%; left: 62%; width: clamp(56px, 9vw, 126px); aspect-ratio: 1; border-radius: 50%; background: #e5bb73; filter: blur(.2px); opacity: .92
}
.visual-water { position: absolute; z-index: -5; inset: 58% 0 0; background: linear-gradient(180deg, rgba(255,255,255,.09), rgba(12,28,23,.5)), repeating-linear-gradient(176deg, transparent 0 25px, rgba(255,255,255,.09) 26px 27px)
}
.visual-bank { position: absolute; z-index: -2; right: -10%; left: -10%; border-radius: 50% 50% 0 0; background: #183c31
}
.visual-bank-back { bottom: 36%; height: 24%; transform: rotate(-2deg); opacity: .75
}
.visual-bank-front { bottom: 18%; height: 24%; transform: rotate(2deg); background: #0b241d
}
.visual-ripple { position: absolute; right: 12%; bottom: 16%; width: 35%; height: 1px; background: rgba(247,243,234,.42)
}
.visual-ripple-two { right: 25%; bottom: 11%; width: 18%
}
.visual-label { position: absolute; right: 16px; bottom: 14px; padding: 6px 8px; color: rgba(247,243,234,.76); background: rgba(12,28,23,.68); font-size: .58rem; letter-spacing: .08em; line-height: 1; text-transform: uppercase
}
.visual-dusk { background: linear-gradient(165deg, #bca487 0%, #7e817a 46%, #293e37 100%)
}
.visual-dusk .visual-sun, .visual-sunset .visual-sun { background: #df9f50; box-shadow: 0 0 70px #dca15b
}
.visual-river { background: linear-gradient(160deg, #c1c7bd, #7e9b91 56%, #315448)
}
.visual-sunset { background: linear-gradient(170deg, #d4a16c 0%, #8f7166 44%, #283d38 100%)
}
.visual-night { background: linear-gradient(165deg, #1d302e, #071411)
}
.visual-night .visual-sun { background: #d7dbd2; width: 48px; opacity: .7; box-shadow: 0 0 30px rgba(232,229,220,.25)
}
.visual-dawn { background: linear-gradient(170deg, #e4c8a7, #b3b7a8 50%, #45675b)
}
.visual-mangrove { background: linear-gradient(155deg, #aab9aa, #5f806b 52%, #1c4032)
}
.visual-mangrove .visual-sun { opacity: .3
}
.visual-cabin { background: linear-gradient(135deg, #6b5a47, #2e332d 70%)
}
.visual-cabin::before { content: ""; position: absolute; inset: 10% 10% 18%; border: 1px solid rgba(247,243,234,.28); box-shadow: inset 0 -80px 0 rgba(12,28,23,.25)
}
.visual-cabin .visual-bank, .visual-cabin .visual-water, .visual-cabin .visual-ripple { display: none
}
.visual-cabin .visual-sun { top: 16%; left: auto; right: 15%; width: 22%; border-radius: 0; background: #d9c29a; box-shadow: 0 0 35px rgba(217,194,154,.4)
}
.visual-food { background: linear-gradient(145deg, #7d6c50, #314638 70%)
}
.visual-food::before, .visual-food::after { content: ""; position: absolute; top: 34%; width: 21%; aspect-ratio: 1; border: 1px solid rgba(247,243,234,.45); border-radius: 50%
}
.visual-food::before { left: 26%
}
.visual-food::after { left: 50%
}
.quick-stays { padding: 48px 0; background: var(--sand); color: var(--night); border-bottom: 1px solid var(--line)
}
.quick-stays h2 { max-width: 760px; font-size: clamp(1.8rem, 3vw, 2.6rem)
}
.quick-stay-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; margin-top: 24px
}
.quick-stay-grid article { border-top: 1px solid var(--line); padding-top: 18px
}
.quick-stay-grid h3 { margin: 0; font-size: 1.65rem
}
.quick-stay-grid p { margin-block: 8px; font-size: .9rem; line-height: 1.6
}
.quick-stay-grid .exploration-link { margin-top: 2px
}
.quick-stay-enquire { display: block; min-height: 48px; border: 0; padding: 4px 0; background: transparent; color: var(--night); font: inherit; font-size: .8rem; text-decoration: underline; text-underline-offset: 4px; cursor: pointer
}
.editorial-bridge { margin-block: 28px; max-width: 680px; padding: 24px 0 24px 24px; border-left: 2px solid var(--brass)
}
.editorial-bridge h3 { margin: 10px 0; font-size: clamp(1.5rem, 2vw, 1.9rem); line-height: 1.14
}
.editorial-bridge p { margin-block: 12px; font-size: .9rem; line-height: 1.65
}
.editorial-bridge .text-link { min-height: 48px; color: inherit
}
.review-marker-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 32px
}
.review-marker { display: flex; gap: 20px; align-items: flex-start; padding: 24px; border: 1px dashed var(--brass); background: var(--sand); color: var(--night)
}
.review-marker-id { font-family: var(--font-display), serif; font-size: 2.8rem; line-height: 1; font-weight: 500
}
.review-marker-state { display: block; font-size: .65rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; line-height: 1.5
}
.review-marker h3 { margin: 12px 0; font-family: var(--font-body), sans-serif; font-size: .95rem; line-height: 1.5; font-weight: 500
}
.review-marker small { font-size: .7rem; text-transform: capitalize
}
.review-build-badge { display: inline-block; margin-top: 20px; padding: 6px 9px; border: 1px solid currentColor; font-size: .6rem; letter-spacing: .12em; opacity: .75
}
.packages-option-actions { display: grid; gap: 12px; align-self: center
}
.packages-option-actions .exploration-link { margin-top: 0
}
@media (max-width: 900px) {
 .review-marker-grid { grid-template-columns: repeat(2, minmax(0, 1fr))
 }
}
@media (max-width: 767px) {
 .quick-stays { padding-block: 32px
 }
 .quick-stay-grid, .review-marker-grid { grid-template-columns: 1fr; gap: 18px
 }
 .quick-stay-grid article { display: grid; grid-template-columns: 1fr auto; column-gap: 12px
 }
 .quick-stay-grid h3, .quick-stay-grid p { grid-column: 1 / -1
 }
 .quick-stay-enquire { font-size: .75rem
 }
 .editorial-bridge { padding: 18px 0 18px 18px
 }
 .packages-option-actions { grid-column: 2
 }
}
.navigation-toggle { border: 0; background: transparent; color: inherit; cursor: pointer
}
.navigation-toggle { min-width: 48px; min-height: 48px; font-size: 1rem
}
.navigation-submenu a:hover { background: rgba(247,243,234,.06)
}
.exploration-link { min-height: 48px; margin-top: 22px; line-height: 1.5
}
.exploration-links { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 28px
}
.contextual-reading { margin: 28px 0 0; max-width: 580px; padding-top: 20px; border-top: 1px solid currentColor; font-size: .9rem; line-height: 1.65
}
.contextual-reading > span { display: block; margin-bottom: 6px; font-size: .6rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase
}
.contextual-reading a { display: inline-block; padding-block: 10px; text-decoration: underline; text-underline-offset: 4px
}
.journey-section .exploration-link, .stays-section .exploration-link { color: var(--sand)
}
.stay-actions { display: flex; align-items: flex-start; flex-direction: column; gap: 12px
}
.stay-actions .exploration-link { margin: 0; font-size: .63rem; letter-spacing: .04em
}
.journey-section .contextual-reading { margin-inline: auto
}
.homepage-faq-links { margin-top: -50px; padding-bottom: 70px
}
.trust-grid .verification-badge { margin: 0
}
.tripadvisor-proof > span:last-child { transition: transform .2s ease
}
.tripadvisor-proof:hover > span:last-child { transform: translate(3px, -3px)
}
.tripadvisor-cta { flex-basis: 100%; width: fit-content; margin-top: 8px; padding-bottom: 4px; border-bottom: 1px solid currentColor; font-size: .66rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase
}
.difference-section { background: var(--mist)
}
.difference-copy { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(280px, .6fr); gap: 8vw; align-items: end
}
.difference-copy h2 { max-width: 900px; margin-bottom: 0
}
.editorial-copy { color: var(--muted)
}
.editorial-copy p { margin-bottom: 10px
}
.difference-visual { min-height: min(60vw, 680px); margin-top: 90px
}
.difference-night-visual { position: relative; min-height: 0; max-height: 680px; aspect-ratio: 1119 / 648; overflow: hidden; background: #050b0c
}
.difference-night-image { object-fit: cover; object-position: 50% 54%; filter: brightness(.96) contrast(1.03)
}
.difference-section blockquote { width: min(850px, 90%); margin: -70px auto 0; position: relative; z-index: 2; padding: 58px 72px; background: var(--sand); color: var(--river); font-size: clamp(2.8rem, 5vw, 5.2rem); letter-spacing: -.04em; line-height: .9; text-align: center
}
.difference-section blockquote em { color: var(--brass)
}
.journey-section { background: var(--night); color: var(--sand)
}
.journey-section :is(h2, h3) { color: var(--sand)
}
.journey-section .eyebrow, .journey-section :is(h1, h2) em { color: var(--brass-on-dark)
}
.journey-section .section-heading > p, .journey-section .timeline-copy p { color: rgba(232,229,220,.72)
}
.journey-heading { max-width: 900px; margin-bottom: 100px
}
.journey-heading h2 { margin-top: 25px
}
.disclaimer { max-width: 600px; color: rgba(232,229,220,.56)!important; font-size: .76rem
}
.timeline { position: relative
}
.timeline::before { content: ""; position: absolute; top: 0; bottom: 0; left: 50%; width: 1px; background: rgba(232,229,220,.15)
}
.timeline-scene { min-height: 620px; display: grid; grid-template-columns: 1fr 1fr; gap: 10vw; align-items: center; position: relative
}
.timeline-scene:nth-child(even) .timeline-visual { order: 2
}
.timeline-visual { position: sticky; top: 110px; padding: 34px
}
.timeline-visual .atmospheric-visual { min-height: 420px
}
.timeline-photo { position: relative; min-height: min(420px, 30vw); aspect-ratio: 4 / 3; overflow: hidden; background: #071411
}
.timeline-photo-image { object-fit: cover; object-position: 50% 52%; filter: brightness(.9) contrast(1.04) saturate(.96)
}
.timeline-photo-houseboat-boarding .timeline-photo-image { object-position: 50% 50%; filter: brightness(.92) contrast(1.05) saturate(.94)
}
.timeline-photo-sunset-tea .timeline-photo-image { object-position: 38% 50%; filter: brightness(.96) contrast(1.03) saturate(.98)
}
.timeline-photo-dinner .timeline-photo-image { object-position: 50% 50%; filter: brightness(.94) contrast(1.05) saturate(.98)
}
.timeline-photo-cabin-night .timeline-photo-image { object-position: 50% 50%; filter: brightness(.95) contrast(1.02) saturate(.92)
}
.timeline-photo-first-light .timeline-photo-image { object-position: 50% 50%; filter: brightness(.98) contrast(1.02) saturate(.96)
}
.timeline-photo-morning-exploration .timeline-photo-image { object-position: 32% 50%; filter: brightness(.95) contrast(1.02) saturate(.9)
}
.timeline-photo-group-return { width: 100%; min-height: 0; aspect-ratio: 16 / 9
}
.timeline-photo-group-return .timeline-photo-image { object-position: 50% 25%; filter: brightness(.96) contrast(1.03) saturate(.94)
}
.timeline-copy { position: relative; max-width: 470px; padding: 45px 0
}
.timeline-copy::before { content: ""; position: absolute; top: 51px; left: calc(-5vw - 5px); width: 9px; aspect-ratio: 1; border-radius: 50%; background: var(--brass); box-shadow: 0 0 0 6px var(--night)
}
.timeline-scene:nth-child(even) .timeline-copy::before { left: auto; right: calc(-5vw - 5px)
}
.scene-index { display: block; margin-bottom: 50px; color: rgba(232,229,220,.42); font-family: var(--font-display), serif; font-size: 4.5rem; line-height: 1
}
.timeline-copy h3 { margin: 18px 0; font-size: clamp(2.6rem, 4vw, 4.1rem); letter-spacing: -.035em; line-height: .95
}
.timeline-copy p { color: rgba(232,229,220,.65)
}
.centered-action { display: flex; justify-content: center; margin-top: 90px
}
.wildlife-section { background: #d3d9cf
}
.wildlife-grid { display: grid; grid-template-columns: 1fr 1.1fr; gap: 9vw; align-items: center
}
.wildlife-grid .atmospheric-visual { min-height: 680px
}
.wildlife-photo { position: relative; width: 100%; aspect-ratio: 1; overflow: hidden; background: #263124
}
.wildlife-photo-image { object-fit: cover; object-position: 56% 50%; filter: brightness(.95) contrast(1.02) saturate(.9)
}
.wildlife-grid p { max-width: 580px; margin: 34px 0; color: var(--muted)
}
.wildlife-grid strong { color: var(--brass); font-family: var(--font-display), serif; font-size: 1.8rem; font-style: italic; font-weight: 500
}
.houseboat-section { background: var(--sand)
}
.split-heading { display: grid; grid-template-columns: 1.4fr .6fr; gap: 9vw; align-items: end
}
.split-heading > .houseboat-intro-copy { max-width: 600px; margin-bottom: 38px; color: var(--muted)
}
.houseboat-intro-copy p { margin: 0
}
.houseboat-brand-descriptor { display: block; margin-bottom: 12px; color: var(--river); font-family: var(--font-display), serif; font-size: 1.35rem; font-weight: 500; line-height: 1.2
}
.houseboat-exterior { position: relative; width: 100%; margin-top: 70px; aspect-ratio: 16 / 9; overflow: hidden; background: #b8c0ba
}
.houseboat-exterior-image { object-fit: cover; object-position: 60% 50%; filter: brightness(1.01) contrast(1.04) saturate(.94)
}
.feature-editorial { margin: 70px 0 48px; border-top: 1px solid var(--line)
}
.feature-editorial article { display: grid; grid-template-columns: 80px 1fr 1fr auto; gap: 32px; align-items: start; padding: 34px 0; border-bottom: 1px solid var(--line)
}
.feature-editorial article > span:first-child { color: var(--brass); font-family: var(--font-display), serif; font-size: 1.35rem
}
.feature-editorial h3 { margin: 0; font-size: 2.2rem; letter-spacing: -.03em; line-height: 1
}
.feature-editorial p { max-width: 470px; margin: 0; color: var(--muted)
}
.upper-deck-proof { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(260px, .55fr); gap: 18px; align-items: end; margin: 0 0 48px
}
.upper-deck-photo { position: relative; min-width: 0; overflow: hidden; background: #b4bab5
}
.upper-deck-photo-primary { aspect-ratio: 16 / 9
}
.upper-deck-photo-secondary { aspect-ratio: 4 / 3
}
.upper-deck-photo-image { object-fit: cover; object-position: 50% 48%; filter: brightness(1.01) contrast(1.02) saturate(.94)
}
.upper-deck-support p { margin: 14px 0 0; color: var(--muted); font-family: var(--font-display), serif; font-size: 1.2rem; font-style: italic; line-height: 1.25
}
.cabin-section { background: var(--mist)
}
.cabin-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 8vw; align-items: start
}
.cabin-layout .section-heading { position: sticky; top: 130px
}
.cabin-photo-pair { display: grid; gap: 18px
}
.cabin-photo { position: relative; min-width: 0; overflow: hidden; background: #bbb8ad
}
.cabin-photo-primary { width: 100%; aspect-ratio: 3 / 2
}
.cabin-supporting-photos { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: 18px; align-items: start
}
.cabin-photo-secondary { width: 100%; aspect-ratio: 3 / 2
}
.cabin-bathroom-proof { min-width: 0
}
.cabin-photo-bathroom { width: 100%; aspect-ratio: 1092 / 1440
}
.cabin-photo-image { object-fit: cover; object-position: 50% 50%; filter: brightness(.99) contrast(1.015) saturate(.94)
}
.cabin-bathroom-image { object-position: 50% 50%; filter: brightness(1.015) contrast(1.01) saturate(.95)
}
.cabin-bathroom-caption { display: grid; gap: 3px; margin: 12px 0 0
}
.cabin-bathroom-caption p { margin: 0
}
.cabin-bathroom-proof strong { color: var(--night); font-size: .67rem; letter-spacing: .12em; text-transform: uppercase
}
.cabin-bathroom-proof em { color: var(--muted); font-family: var(--font-display), serif; font-size: 1rem; line-height: 1.25
}
.gallery-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 28px
}
.gallery-item { position: relative; min-width: 0; padding: 0; border: 0; color: var(--sand); background: transparent; cursor: pointer; text-align: left; overflow: hidden
}
.gallery-item:first-child { grid-column: 1 / -1
}
.gallery-item .atmospheric-visual { min-height: 300px; transition: transform .5s ease
}
.gallery-item:first-child .atmospheric-visual { min-height: 440px
}
.gallery-item:hover .atmospheric-visual { transform: scale(1.015)
}
.gallery-item > span { position: absolute; bottom: 22px; left: 22px; font-size: .68rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase
}
.gallery-modal { width: min(1080px, calc(100vw - 48px)); max-height: 92svh; padding: 22px; overflow: auto; background: var(--night); color: var(--sand)
}
.gallery-modal-top, .gallery-controls { display: flex; justify-content: space-between; align-items: center; gap: 20px
}
.gallery-modal-top p { margin: 0; font-size: .7rem; letter-spacing: .12em; text-transform: uppercase
}
.gallery-large { min-height: min(65vh, 680px); margin: 20px 0
}
.gallery-controls button { min-height: 48px; border: 0; color: var(--sand); background: transparent; cursor: pointer
}
.gallery-controls strong { font-family: var(--font-display), serif; font-size: 1.4rem
}
.gallery-disclaimer { margin: 15px 0 0; color: rgba(247,243,234,.5); font-size: .7rem; text-align: center
}
.stays-section { background: var(--night); color: var(--sand)
}
.stay-list { margin-top: 70px; border-top: 1px solid rgba(232,229,220,.18)
}
.stay-row { display: grid; grid-template-columns: 80px 1fr 1.2fr minmax(170px, .55fr); gap: 34px; align-items: center; padding: 48px 0; border-bottom: 1px solid rgba(232,229,220,.18)
}
.stay-number { color: rgba(232,229,220,.7); font-family: var(--font-display), serif; font-size: 1.4rem
}
.stay-row h3 { margin: 13px 0 0; font-size: clamp(2.2rem, 3.5vw, 3.7rem); letter-spacing: -.035em; line-height: .9
}
.stay-row p { margin: 0; color: rgba(232,229,220,.62)
}
.suited { margin-top: 16px!important; font-size: .76rem
}
.suited strong { display: block; color: var(--brass); font-size: .62rem; letter-spacing: .1em; text-transform: uppercase
}
.circle-cta { width: 60px; aspect-ratio: 1; display: grid; place-items: center; border: 1px solid rgba(232,229,220,.4); border-radius: 50%; color: var(--sand); background: transparent; cursor: pointer; font-size: 1.4rem; transition: .25s
}
.circle-cta:hover { border-color: var(--whatsapp); color: var(--night); background: var(--whatsapp); transform: rotate(8deg)
}
.stay-cta { min-height: 52px; padding: 12px 16px; border: 1px solid rgba(232,229,220,.42); color: var(--sand); background: transparent; cursor: pointer; font-size: .66rem; font-weight: 750; letter-spacing: .07em; line-height: 1.3; text-transform: uppercase; transition: .25s
}
.stay-cta:hover { border-color: var(--whatsapp); color: var(--night); background: var(--whatsapp)
}
.pricing-note { max-width: 720px; margin: 70px auto 0; text-align: center; color: rgba(232,229,220,.6)
}
.food-section { background: var(--sand)
}
.food-grid { display: grid; grid-template-columns: .75fr 1.25fr; gap: 8vw; align-items: center
}
.food-proof { display: grid; gap: 18px
}
.food-photo { position: relative; width: 100%; aspect-ratio: 1537 / 1023; overflow: hidden; background: #30251c
}
.food-photo-image { object-fit: cover; object-position: 50% 50%; filter: brightness(1.01) contrast(1.015) saturate(.96)
}
.food-support { width: 40%; justify-self: end
}
.food-photo-secondary { aspect-ratio: 3 / 4
}
.food-photo-secondary-image { object-position: 35% 50%; transform: scale(1.14); transform-origin: 35% 50%
}
.food-support p { margin: 12px 0 0; color: var(--muted); font-family: var(--font-display), serif; font-size: 1.05rem; font-style: italic; line-height: 1.25
}
.food-grid blockquote { grid-column: 1 / -1; margin: 50px 0 0; color: var(--river); font-size: clamp(3rem, 5vw, 5.4rem); letter-spacing: -.04em; line-height: .9; text-align: center
}
.food-grid blockquote em { color: var(--brass)
}
.stories-section { background: var(--mist)
}
.review-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-top: 60px
}
.review-grid blockquote { padding: 34px; margin: 0; background: var(--sand)
}
.review-grid blockquote > span { font-family: var(--font-body), sans-serif; color: var(--brass); font-size: .68rem; letter-spacing: .12em
}
.review-grid blockquote p { margin: 38px 0; font-size: 2rem; line-height: 1.1
}
.review-grid cite { font-family: var(--font-body), sans-serif; color: var(--muted); font-size: .72rem; font-style: normal
}
.reviews-pending { max-width: 700px; margin-top: 55px
}
.reviews-pending > span[aria-hidden="true"] { color: var(--brass); font-family: var(--font-display), serif; font-size: 5rem; line-height: .5
}
.stories-proof { display: flex; flex-direction: column; align-items: flex-start; gap: 22px; margin-bottom: 38px
}
.people-section { background: #cbd2c6
}
.people-grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 10vw; align-items: center
}
.people-placeholder { min-height: 370px; display: flex; flex-direction: column; justify-content: flex-end
}
.profile-line { width: 70%; height: 1px; margin: 15px 0; background: var(--brass); opacity: .6
}
.people-placeholder p { margin-top: 50px; color: var(--muted)
}
.safety-section { background: var(--sand)
}
.safety-heading { max-width: 920px; margin-bottom: 58px
}
.safety-heading h2 { margin-bottom: 0
}
.safety-proofs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line)
}
.safety-proof { min-width: 0; padding: 34px; border-right: 1px solid var(--line)
}
.safety-proof:first-child { padding-left: 0
}
.safety-proof:last-child { padding-right: 0; border-right: 0
}
.safety-proof-number { display: block; margin-bottom: 28px; color: var(--brass); font-family: var(--font-display), serif; font-size: 1rem
}
.safety-proof h3 { margin: 0 0 14px; color: var(--night); font-size: 1.45rem; line-height: 1.2
}
.safety-proof p { max-width: 34ch; margin: 0; color: var(--muted)
}
.safety-suitability { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 48px; align-items: center; margin-top: 42px
}
.safety-suitability p { max-width: 800px; margin: 0; color: var(--muted)
}
.safety-suitability .button { margin: 0
}
.fit-section { color: var(--sand); background: var(--river)
}
.fit-layout { display: grid; grid-template-columns: 1.1fr .9fr; gap: 10vw; align-items: center
}
.fit-copy p { color: rgba(232,229,220,.7)
}
.fit-copy strong { display: block; margin-top: 32px; color: #e2c899; font-family: var(--font-display), serif; font-size: 1.65rem; font-weight: 500; line-height: 1.2
}
.planner-section { background: var(--mist)
}
.planner-layout { display: grid; grid-template-columns: .82fr 1.18fr; gap: 8vw; align-items: start
}
.sticky-heading { position: sticky; top: 130px
}
.planner-form { display: grid; grid-template-columns: 1fr 1fr; gap: 22px 18px; padding: clamp(26px, 4vw, 58px); background: var(--sand); box-shadow: 0 22px 70px rgba(22,48,45,.08)
}
.deferred-planner-form-slot, .planner-form-placeholder { min-height: 760px
}
.deferred-planner-form-slot[data-loaded] { min-height: 0
}
.planner-form-placeholder { display: grid; place-items: center; padding: 32px; color: var(--muted); background: var(--sand); box-shadow: 0 22px 70px rgba(22,48,45,.08)
}
.planner-form-placeholder span { font-size: .76rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase
}
.field { display: flex; flex-direction: column; gap: 8px; min-width: 0
}
.field-full { grid-column: 1 / -1
}
.field-label, .field legend { color: var(--river); font-size: .75rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase
}
.field fieldset { padding: 0; border: 0
}
.field input, .field select, .field textarea { width: 100%; min-height: 50px; border: 1px solid rgba(22,48,45,.25); border-radius: 0; padding: 12px 14px; color: var(--ink); background: #fdfbf6; outline: none
}
.field textarea { resize: vertical
}
.field input:focus, .field select:focus, .field textarea:focus { border-color: var(--focus-strong); box-shadow: 0 0 0 2px #fff, 0 0 0 5px var(--focus-strong)
}
.field input:focus-visible, .field select:focus-visible, .field textarea:focus-visible { outline: 0
}
.field [aria-invalid="true"] { border-color: #a53d2a
}
.field-error { color: #922d1d; font-size: .75rem
}
.segmented-control { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid rgba(22,48,45,.25)
}
.segmented-control label { position: relative; cursor: pointer
}
.segmented-control input { position: absolute; opacity: 0; width: 1px; height: 1px
}
.segmented-control span { min-height: 50px; display: grid; place-items: center; padding: 8px 10px; border-right: 1px solid rgba(22,48,45,.2); font-size: .7rem; font-weight: 650; text-align: center
}
.segmented-control label:last-child span { border-right: 0
}
.segmented-control input:checked + span { color: var(--sand); background: var(--river)
}
.segmented-control input:focus-visible { outline: 0; box-shadow: none
}
.segmented-control input:focus-visible + span { outline: 3px solid #fff; outline-offset: -3px; box-shadow: inset 0 0 0 5px var(--focus-strong)
}
.age-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(110px, 1fr)); gap: 10px
}
.character-count { align-self: flex-end; margin-top: -33px; margin-right: 10px; padding: 2px 4px; color: var(--muted); background: #fdfbf6; font-size: .75rem
}
.planner-actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin-top: 10px
}
.planner-actions .button-whatsapp { flex: 1 1 100%
}
.micro-reassurance { width: 100%; margin: 2px 0 0; color: var(--muted); font-size: .75rem; text-align: center
}
.micro-reassurance span { margin: 0 5px; color: var(--brass)
}
.review-notice { width: 100%; margin: 0; padding: 10px; border-left: 2px solid var(--brass); color: #754818; background: #fff1db; font-size: .7rem
}
.sr-status { width: 100%; grid-column: 1 / -1; min-height: 1.4em; margin: 0; color: var(--river); font-size: .75rem
}
.modal-backdrop { position: fixed; z-index: 150; inset: 0; display: grid; place-items: center; padding: 24px; background: rgba(4,13,10,.8); backdrop-filter: blur(8px)
}
.planner-modal { width: min(780px, calc(100vw - 48px)); max-height: min(920px, calc(100svh - 48px)); overflow-y: auto; overscroll-behavior: contain; padding: 34px; color: var(--ink); background: var(--mist); box-shadow: 0 40px 120px rgba(0,0,0,.35)
}
.modal-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px
}
.modal-header h2 { margin: 10px 0 0; font-size: clamp(2.5rem, 5vw, 4.2rem)
}
.modal-intro { max-width: 620px; color: var(--muted)
}
.icon-button { flex: 0 0 48px; width: 48px; height: 48px; border: 1px solid currentColor; border-radius: 50%; color: inherit; background: transparent; cursor: pointer; font-size: 1.8rem; line-height: 1
}
.planner-form-compact { padding: 26px; box-shadow: none
}
.faq-section { background: var(--sand)
}
.faq-layout { display: grid; grid-template-columns: .7fr 1.3fr; gap: 10vw; align-items: start
}
.faq-list { border-top: 1px solid var(--line)
}
.faq-item { scroll-margin-top: 110px; border-bottom: 1px solid var(--line)
}
.faq-item h3 { margin: 0; font-family: var(--font-body), sans-serif
}
.faq-item h3 button { width: 100%; min-height: 94px; display: grid; grid-template-columns: 50px 1fr 32px; gap: 16px; align-items: center; padding: 20px 0; border: 0; color: var(--ink); background: transparent; cursor: pointer; font-size: .95rem; font-weight: 650; text-align: left
}
.faq-item > summary { cursor: pointer; list-style: none
}
.faq-item > summary::-webkit-details-marker { display: none
}
.faq-item > summary h3 { width: 100%; min-height: 94px; display: grid; grid-template-columns: 50px 1fr 32px; gap: 16px; align-items: center; padding: 20px 0; color: var(--ink); font-size: .95rem; font-weight: 650; text-align: left
}
.faq-number { color: var(--brass-on-light); font-family: var(--font-display), serif; font-size: 1.1rem; font-weight: 400
}
.faq-plus { color: var(--brass-on-light); font-size: 1.6rem; font-weight: 300; text-align: center
}
.faq-plus::before { content: "+"
}
.faq-item[open] .faq-plus::before { content: "−"
}
.faq-answer { padding: 0 48px 32px 66px; color: var(--muted)
}
.faq-answer a { display: inline-block; min-height: 48px; margin-top: 5px; padding-block: 10px; color: var(--river); font-weight: 700; text-decoration: underline; text-underline-offset: 4px
}
.final-cta-section { min-height: min(900px, 100svh); position: relative; display: flex; align-items: center; overflow: hidden; color: var(--sand); background: var(--night)
}
.final-river-image { object-fit: cover; object-position: 50% 55%
}
.final-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,17,13,.7), rgba(5,17,13,.5) 52%, rgba(5,17,13,.25))
}
.final-content { position: relative; z-index: 2; padding: 120px 0
}
.final-content .eyebrow, .final-content h2 em { color: #dfc18e
}
.final-content h2 { max-width: 1050px; margin: 24px 0 34px
}
.final-content > p:not(.micro-reassurance) { max-width: 600px; color: rgba(247,243,234,.9)
}
.final-content .micro-reassurance { width: fit-content; color: rgba(247,243,234,.88)
}
.final-signoff { display: flex; flex-direction: column; margin-top: 100px
}
.final-signoff strong { font-family: var(--font-display), serif; font-size: 2.6rem; line-height: 1
}
.final-signoff span { margin-top: 10px; color: #dfc18e; font-family: var(--font-display), serif; font-size: 1.4rem; font-style: italic
}
.site-footer { padding: 90px 0 30px
}
.footer-main { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.4fr) minmax(0,1fr); gap: 32px; padding-bottom: 70px
}
.footer-logo-link { display: block; width: min(100%, 480px)
}
.footer-logo-panel { width: 100%; display: flex; padding: 18px 20px; background: var(--sand)
}
.footer-brand-logo { display: block; width: 100%; height: auto
}
.footer-brand p { max-width: 420px; margin: 22px 0 6px; color: rgba(232,229,220,.68)
}
.footer-brand p strong { color: var(--sand); font-family: var(--font-display), serif; font-size: 1.35rem; font-weight: 600
}
.footer-brand > span { color: var(--brass); font-family: var(--font-body), sans-serif; font-size: .67rem; font-style: normal; font-weight: 650; letter-spacing: .08em; text-transform: uppercase
}
.site-footer h2 { margin-bottom: 20px; color: var(--brass-on-dark); font-family: var(--font-body), sans-serif; font-size: .75rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase
}
.site-footer .footer-navigation { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-content: start; gap: 28px 18px
}
.footer-navigation ul { list-style: none; margin: 0; padding: 0
}
.site-footer nav a { display: flex; align-items: center; min-width: 48px; min-height: 48px; width: fit-content; color: rgba(232,229,220,.82); font-size: .75rem; line-height: 1.5; padding-block: 9px
}
.site-footer nav a:hover { text-decoration: underline; text-underline-offset: 5px
}
.footer-operator { color: var(--sand); font-family: var(--font-display), serif; font-size: 1.4rem; font-weight: 600
}
.footer-contact address { display: block; margin-bottom: 22px; color: rgba(232,229,220,.6); font-size: .72rem; font-style: normal; line-height: 1.55
}
.footer-whatsapp { display: grid; grid-template-columns: auto 1fr auto; gap: 12px; align-items: center; margin-bottom: 14px; padding: 14px 16px; color: #071c10; background: var(--whatsapp); font-size: .68rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase
}
.footer-whatsapp span:first-of-type { font-size: .72rem; text-align: right
}
.footer-secondary-contact { min-height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 7px 0; color: rgba(232,229,220,.72); border-bottom: 1px solid rgba(232,229,220,.1); font-size: .75rem; letter-spacing: .08em; text-transform: uppercase
}
.footer-secondary-contact span { color: rgba(232,229,220,.82); letter-spacing: 0; text-align: right; text-transform: none
}
.footer-sister { padding: 26px 0; border-top: 1px solid rgba(232,229,220,.12); border-bottom: 1px solid rgba(232,229,220,.12); color: rgba(232,229,220,.58); font-size: .75rem
}
.footer-sister p { margin: 0
}
.footer-sister a { color: var(--brass-on-dark); text-decoration: underline; text-underline-offset: 4px
}
.footer-bottom { display: flex; justify-content: space-between; padding-top: 28px; color: rgba(232,229,220,.66); font-size: .75rem; letter-spacing: .07em; text-transform: uppercase
}
.not-found { min-height: 100svh; display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 40px; color: var(--sand); background: var(--night); text-align: center
}
.not-found h1 { max-width: 800px; margin: 20px 0; font-size: clamp(4rem, 10vw, 8rem); line-height: .85
}
.not-found p { color: rgba(247,243,234,.65)
}
.not-found .button { margin-top: 20px
}
@media (min-width: 768px) {
 .difference-copy { column-gap: clamp(40px, 6vw, 96px); row-gap: 28px
 }
 .difference-copy > .eyebrow { grid-column: 1 / -1
 }
 .difference-copy h2 { grid-column: 1; grid-row: 2
 }
 .difference-copy .editorial-copy { grid-column: 2; grid-row: 2; align-self: end
 }
}
@media (max-width: 1300px) {
 .navigation-toggle { min-width: 54px; min-height: 54px
 }
}
@media (max-width: 1080px) {
 .site-footer .footer-navigation { grid-template-columns: repeat(2, minmax(0, 1fr))
 }
 .timeline-scene { gap: 7vw
 }
 .timeline-copy::before { left: calc(-3.5vw - 5px)
 }
 .timeline-scene:nth-child(even) .timeline-copy::before { right: calc(-3.5vw - 5px)
 }
 .wildlife-grid, .cabin-layout, .food-grid { gap: 6vw
 }
 .stay-row { grid-template-columns: 50px 1fr 1.1fr minmax(150px, .55fr); gap: 20px
 }
 .faq-layout, .planner-layout { gap: 6vw
 }
}
@media (max-width: 900px) {
 .safety-proofs { grid-template-columns: 1fr
 }
 .safety-proof, .safety-proof:first-child, .safety-proof:last-child { display: grid; grid-template-columns: 42px minmax(0, 1fr); column-gap: 14px; padding: 26px 0; border-right: 0; border-bottom: 1px solid var(--line)
 }
 .safety-proof:last-child { border-bottom: 0
 }
 .safety-proof-number { grid-row: 1 / 3; margin: 2px 0 0
 }
 .safety-proof h3 { grid-column: 2
 }
 .safety-proof p { grid-column: 2
 }
 .safety-suitability { grid-template-columns: 1fr; gap: 24px
 }
 .safety-suitability .button { width: fit-content
 }
 .footer-main { grid-template-columns: 1fr 1fr
 }
 .footer-brand { grid-column: 1 / -1
 }
}
@media (max-width: 767px) {
 h2 { font-size: clamp(3.05rem, 14vw, 4.9rem)
 }
 .button-detail { display: none
 }
 .difference-copy, .split-heading, .wildlife-grid, .cabin-layout, .food-grid, .people-grid, .fit-layout, .planner-layout, .faq-layout { grid-template-columns: 1fr
 }
 .difference-copy { gap: 30px
 }
 .difference-visual { min-height: 560px; margin-top: 55px
 }
 .difference-night-visual { min-height: 0; aspect-ratio: 4 / 3
 }
 .difference-night-image { object-position: 48% 52%
 }
 .difference-section blockquote { width: calc(100% - 24px); margin-top: -35px; padding: 36px 22px; font-size: 2.9rem
 }
 .journey-heading { margin-bottom: 50px
 }
 .timeline::before { left: 12px
 }
 .timeline-scene { min-height: 0; display: flex; flex-direction: column; gap: 0; align-items: stretch; padding: 0 0 76px 34px
 }
 .timeline-scene:nth-child(n + 2) { content-visibility: auto; contain-intrinsic-block-size: auto 680px
 }
 .timeline-scene:nth-child(even) .timeline-visual { order: 0
 }
 .timeline-visual { position: relative; top: auto; padding: 0
 }
 .timeline-visual .atmospheric-visual { min-height: 340px
 }
 .timeline-photo { min-height: 0
 }
 .timeline-photo-image { object-position: 50% 52%
 }
 .timeline-photo-houseboat-boarding .timeline-photo-image { object-position: 55% 50%
 }
 .timeline-photo-sunset-tea .timeline-photo-image { object-position: 38% 50%
 }
 .timeline-photo-dinner .timeline-photo-image { object-position: 52% 50%
 }
 .timeline-photo-cabin-night .timeline-photo-image { object-position: 55% 52%
 }
 .timeline-photo-first-light .timeline-photo-image { object-position: 50% 50%
 }
 .timeline-photo-morning-exploration .timeline-photo-image { object-position: 30% 50%
 }
 .timeline-photo-group-return { aspect-ratio: 16 / 10
 }
 .timeline-photo-group-return .timeline-photo-image { object-position: 50% 30%
 }
 .timeline-copy { max-width: none; padding: 28px 0 0
 }
 .timeline-copy::before, .timeline-scene:nth-child(even) .timeline-copy::before { top: -5px; right: auto; left: -26px
 }
 .scene-index { margin-bottom: 20px; font-size: 2.7rem
 }
 .timeline-copy h3 { font-size: 2.9rem
 }
 .centered-action { margin-top: 10px
 }
 .centered-action .button { width: 100%
 }
 .wildlife-grid { gap: 48px
 }
 .wildlife-grid .atmospheric-visual { min-height: 520px
 }
 .wildlife-photo { aspect-ratio: 4 / 3
 }
 .wildlife-photo-image { object-position: 48% 50%
 }
 .split-heading { gap: 8px
 }
 .houseboat-exterior { margin-top: 42px; aspect-ratio: 4 / 3
 }
 .houseboat-exterior-image { object-position: 60% 50%
 }
 .feature-editorial { margin-top: 42px
 }
 .feature-editorial article { grid-template-columns: 42px 1fr; gap: 12px
 }
 .feature-editorial article p, .feature-editorial article .verification-badge { grid-column: 2
 }
 .upper-deck-proof { grid-template-columns: 1fr; gap: 18px; margin-bottom: 42px
 }
 .upper-deck-photo-primary { aspect-ratio: 4 / 3
 }
 .upper-deck-support { width: 84%; justify-self: end
 }
 .upper-deck-photo-secondary { aspect-ratio: 4 / 3
 }
 .upper-deck-support p { font-size: 1.1rem
 }
 .cabin-layout { gap: 50px
 }
 .cabin-layout .section-heading, .sticky-heading { position: relative; top: auto
 }
 .cabin-photo-primary { aspect-ratio: 4 / 3
 }
 .cabin-supporting-photos { grid-template-columns: 1fr; gap: 18px
 }
 .cabin-photo-secondary { width: 84%; aspect-ratio: 4 / 3; justify-self: end
 }
 .cabin-bathroom-proof { width: 72%; justify-self: end
 }
 .gallery-grid { grid-template-columns: 1fr
 }
 .gallery-item:first-child { grid-column: auto
 }
 .gallery-item .atmospheric-visual, .gallery-item:first-child .atmospheric-visual { min-height: 340px
 }
 .gallery-modal { width: calc(100vw - 24px); padding: 14px
 }
 .gallery-large { min-height: 56vh
 }
 .gallery-controls strong { display: none
 }
 .stay-list { margin-top: 40px
 }
 .stay-row { position: relative; grid-template-columns: 42px 1fr; gap: 12px; padding: 42px 0
 }
 .stay-row > div:nth-child(3) { grid-column: 2 / -1; padding-right: 10px
 }
 .stay-row .stay-cta { grid-column: 2; width: 100%; margin-top: 12px
 }
 .stay-row .stay-actions { grid-column: 2
 }
 .food-grid { gap: 52px
 }
 .food-photo-primary { aspect-ratio: 4 / 3
 }
 .food-photo-image { object-position: 47% 50%
 }
 .food-support { width: 70%
 }
 .food-photo-secondary-image { object-position: 35% 50%
 }
 .food-grid blockquote { font-size: 3rem
 }
 .people-grid, .fit-layout, .planner-layout, .faq-layout { gap: 50px
 }
 .safety-heading { margin-bottom: 36px
 }
 .safety-heading h2 { font-size: clamp(2.85rem, 12vw, 3.6rem)
 }
 .safety-suitability .button { width: 100%
 }
 .planner-form { grid-template-columns: 1fr; padding: 22px 18px
 }
 .field-full { grid-column: 1
 }
 .segmented-control { grid-template-columns: 1fr
 }
 .segmented-control span { border-right: 0; border-bottom: 1px solid rgba(22,48,45,.2)
 }
 .segmented-control label:last-child span { border-bottom: 0
 }
 .planner-actions { align-items: stretch; flex-flow: column nowrap
 }
 .planner-actions .button { width: 100%
 }
 .sr-status { grid-column: 1
 }
 .faq-item h3 button { grid-template-columns: 38px 1fr 28px; min-height: 82px; gap: 8px; font-size: .86rem
 }
 .faq-item > summary h3 { grid-template-columns: 38px 1fr 28px; min-height: 82px; gap: 8px; font-size: .86rem
 }
 .deferred-planner-form-slot, .planner-form-placeholder { min-height: 1120px
 }
 .deferred-planner-form-slot[data-loaded] { min-height: 0
 }
 .faq-answer { padding-left: 46px
 }
 .final-cta-section { min-height: 880px
 }
 .final-river-image { object-position: 55% 50%
 }
 .final-overlay { background: linear-gradient(90deg, rgba(5,17,13,.72), rgba(5,17,13,.62) 60%, rgba(5,17,13,.5))
 }
 .final-content { padding: 100px 0
 }
 .final-content h2 { font-size: 3.6rem
 }
 .final-content .button { width: 100%
 }
 .final-content .micro-reassurance { width: 100%
 }
 .footer-main { grid-template-columns: 1fr; gap: 50px
 }
 .footer-brand { grid-column: auto
 }
 .footer-logo-panel { padding: 13px 14px
 }
 .footer-bottom { align-items: flex-start; flex-direction: column; gap: 6px
 }
 .modal-backdrop { align-items: end; padding: 0
 }
 .planner-modal { width: 100%; max-height: 94svh; padding: 22px 16px calc(22px + env(safe-area-inset-bottom)); border-radius: 18px 18px 0 0
 }
 .planner-form-compact { padding: 20px 12px
 }
 .modal-header h2 { font-size: 2.65rem
 }
 .mobile-sticky-wrap { position: fixed; z-index: 80; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px; padding: 9px 12px calc(9px + env(safe-area-inset-bottom)); background: rgba(12,28,23,.96); backdrop-filter: blur(8px)
 }
 .mobile-sticky-action { min-width: 0; min-height: 56px; display: flex; align-items: center; justify-content: center; gap: 8px; padding: 9px 10px; border-radius: 2px; font-size: .75rem; font-weight: 800; letter-spacing: .035em; line-height: 1.25; text-align: center; text-transform: uppercase
 }
 .mobile-sticky-secondary { border: 1px solid rgba(247,243,234,.72); color: var(--sand); background: transparent
 }
 .mobile-sticky-cta { width: 100%; border: 1px solid var(--whatsapp); color: #071c10; background: var(--whatsapp); cursor: pointer
 }
 .wa-mark { width: 24px; aspect-ratio: 1; display: grid; place-items: center; border: 1px solid currentColor; border-radius: 50%; font-size: .68rem
 }
}
@media (prefers-reduced-motion: reduce) {
 .gallery-item:hover .atmospheric-visual, .circle-cta:hover { transform: none
 }
}
div.journey-first-light-frame, figure.journey-first-light-frame {
  width: 100%;
  min-height: 0;
  aspect-ratio: 1535 / 1024;
  align-self: center
}
.guest-proof { min-width: 0; color: inherit
}
.guest-proof > .eyebrow { margin-bottom: 20px
}
.guest-proof > :is(h2, h3) { margin: 0 0 24px; font-size: clamp(1.8rem, 2.8vw, 2.5rem); line-height: 1.12
}
.guest-proof-quotation { margin: 0
}
.guest-proof-mark { display: block; height: 32px; color: var(--brass); font: 4rem/.9 var(--font-display), serif
}
.guest-proof blockquote { margin: 12px 0 26px
}
.guest-proof blockquote p { margin: 0; font-size: clamp(1.45rem, 2.35vw, 2rem); line-height: 1.25; letter-spacing: -.015em; text-wrap: pretty
}
.guest-proof-featured blockquote p { font-size: clamp(1.8rem, 3.2vw, 2.8rem)
}
.guest-proof figcaption { display: flex; flex-direction: column; gap: 4px; font: .8rem/1.6 var(--font-body), sans-serif; overflow-wrap: anywhere
}
.guest-proof figcaption strong { font-weight: 650
}
.guest-proof figcaption > span { opacity: .78
}
.guest-proof-links { display: flex; flex-wrap: wrap; gap: 12px 26px; margin-top: 20px
}
.guest-proof .text-link { min-height: 48px; max-width: 100%; color: inherit; font-size: .74rem; letter-spacing: .045em
}
.guest-proof-compact { padding: 32px 0; border-block: 1px solid var(--line)
}
.contextual-guest-proof { color: var(--ink); background: var(--sand)
}
.contextual-guest-proof .guest-proof { max-width: 940px; margin-inline: auto
}
.stories-section .guest-proof { max-width: 850px; margin-top: 45px
}
@media (max-width: 900px) {
 .guest-proof-links { gap: 8px 18px
 }
 .guest-proof-compact { padding-block: 28px
 }
 .guest-proof blockquote p { font-size: 1.55rem
 }
 .guest-proof-featured blockquote p { font-size: 1.85rem
 }
 .guest-proof figcaption { font-size: .75rem
 }
}
