/* Beeloha home is the visual reference for every page. */
:root{--ink:#17251e;--cream:#f6f4eb;--paper:#f6f4eb;--yellow:#f4ca52;--muted:#637267;--line:#d8dacd}
body{background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}
body:not(.home-page) h1{font:500 clamp(36px,4vw,60px)/1.07 Georgia,'Times New Roman',serif;letter-spacing:-.045em}
body:not(.home-page) h2{font:500 clamp(32px,3.6vw,54px)/1.09 Georgia,'Times New Roman',serif;letter-spacing:-.039em}
body:not(.home-page) h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.2}
body:not(.home-page) .hero h1,body:not(.home-page) .detail-hero h1,body:not(.home-page) .network-intro h1{font-size:clamp(36px,4vw,60px)!important;margin:18px 0!important}
body:not(.home-page) .hero,body:not(.home-page) .detail-hero{padding-top:24px!important;padding-bottom:36px!important}
body:not(.home-page) .hero figure>img,body:not(.home-page) .detail-hero figure>img{height:470px;border-radius:100px 8px 8px 8px;border-bottom:0}
body .button,body .btn,body .secondary,body .journal-button,#membership .membership-table .button,#membership .member-mobile-plan .button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:7px;padding:14px 20px;min-height:48px;font:700 14px/1.4 Arial,sans-serif;text-align:center;text-decoration:none;background:var(--yellow);color:var(--ink)}
body .secondary,body .button.secondary,body .btn.outline{background:transparent;border:1px solid var(--ink)}
main>section:not(.hero):not(.detail-hero):not(.network-intro):not(.privacy){padding-top:56px;padding-bottom:56px}
.home-page #the-places{padding-bottom:24px}.home-page .rhythm{padding-top:30px}.home-page .opening-cards{margin-bottom:0}
body:not(.home-page) .network-intro{max-width:1480px;margin-inline:auto;padding-top:40px;padding-bottom:24px}
body:not(.home-page) .network-intro.hero{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(0,1fr);gap:40px;align-items:start}
.network-intro.hero .destination-icons{grid-column:1/-1;margin:0}.network-intro.hero .rwanda-preview{margin:0}.rwanda-preview img{border-bottom:0}
.stay-card h3,.stay-card .eyebrow,.stay-card .card-description,.stay-card .stay-from-price,.stay-card .destination-icons{min-height:0}.stay-card .card-description{margin-bottom:20px}
body .room-grid article:first-child{display:flex;flex-direction:column}.room-grid .room-photo{width:100%}.room-grid .room-photo .photo-open img{height:350px}.room-grid .room-body h3{min-height:0}.room-grid article{border-radius:8px}.room-grid .room-body{padding-top:20px}.room-grid .room-body .button{align-self:flex-start}
.inclusions-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 24px;padding:0;list-style:none;margin:20px 0}.inclusions-list li{margin:0;display:flex;align-items:flex-start;gap:10px;font:15px/1.5 Arial}.inclusions-list li:before{content:'✓';color:var(--ink);font-weight:700}.price-summary{max-width:none;padding:24px}.price-summary h3{font-size:26px;margin:0 0 15px}.price-summary p{max-width:none}.house-gallery,.prices{background:#eeede3}
#membership .membership-table tfoot td{text-align:center!important;vertical-align:middle}#membership .membership-table tfoot .button{margin:0 auto;min-width:105px}#membership .membership-table-wrap{border-radius:8px}#membership .member-mobile-plan{border-radius:8px}
body .detail-gallery figure{border-bottom:0}.welcome-pack-note{border-left:3px solid var(--yellow);padding:10px 20px;margin:24px 0}
@media(max-width:850px){body:not(.home-page) .network-intro.hero{grid-template-columns:1fr}body:not(.home-page) .hero figure>img,body:not(.home-page) .detail-hero figure>img{height:380px}.inclusions-list{grid-template-columns:repeat(2,minmax(0,1fr))}main>section:not(.hero):not(.detail-hero):not(.network-intro):not(.privacy){padding-top:40px;padding-bottom:40px}}
@media(max-width:500px){body:not(.home-page) .hero h1,body:not(.home-page) .detail-hero h1,body:not(.home-page) .network-intro h1{font-size:36px!important}body:not(.home-page) .hero figure>img,body:not(.home-page) .detail-hero figure>img{height:340px}.inclusions-list{grid-template-columns:1fr}.room-grid .room-photo .photo-open img{height:330px}}
.room-grid article:last-child .room-photo .photo-open img{height:350px}@media(max-width:500px){.room-grid article:last-child .room-photo .photo-open img{height:330px}}
body.journal-page .journal-card h2{font:400 clamp(25px,2.3vw,34px)/1.15 Georgia,serif;letter-spacing:-.025em}

/* Make founder project links clearly discoverable. */
.founder-story a.founder-project-link{color:inherit;text-decoration:underline;text-decoration-color:#c69a16;text-decoration-thickness:2px;text-underline-offset:4px;font-weight:600}.founder-story a.founder-project-link:hover{color:#76601c}.founder-story a.founder-project-link:focus-visible{outline:2px solid #17251e;outline-offset:4px}

/* Shared Beeloha opening and contact details across all destinations and audiences. */
.slogan-dot,.brand-dot{color:#f4ca52!important}
.brand-hero .eyebrow,.brand-hero .kicker,#membership .eyebrow{display:flex;align-items:center;gap:14px}
.brand-hero .sun,#membership .sun{color:#f4ca52;font:38px/1 Georgia,serif;flex:none;letter-spacing:0}
body .brand-hero{padding-top:28px!important;padding-bottom:36px!important;align-items:start!important}
body .brand-hero h1{margin:18px 0 22px!important}
body .brand-hero .lead,body .brand-hero .standfirst{font-size:clamp(18px,1.65vw,24px);line-height:1.5;margin:0 0 22px}
body .brand-hero .hero-actions,body .brand-hero .actions{margin:20px 0 22px}
body .brand-hero .journal-button,body .brand-hero .hero-copy>a.button{margin:0 0 20px}
body .journal-intro.brand-hero{gap:50px;align-items:start}
body .journal-intro.brand-hero figure{margin:0}
body .journal-intro.brand-hero figure img{height:470px;object-fit:cover}
body .beeloha-talk{position:fixed;bottom:20px;right:20px;z-index:90;display:inline-flex;align-items:center;gap:10px;background:#f4ca52;color:#17251e;border:0;border-radius:40px;padding:14px 22px;font:700 16px/1.3 Arial,sans-serif;text-decoration:none!important;box-shadow:0 5px 22px #17251e22}
body .beeloha-talk svg{width:25px;height:25px;fill:currentColor;flex:none}
.day-continuation{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin:36px 0 20px}.day-continuation article{border-top:2px solid #f4ca52;padding:24px 0}.day-continuation h3{font-size:30px;margin:12px 0}.day-continuation p{max-width:56ch}
@media(max-width:760px){body .brand-hero{padding-top:22px!important}body .beeloha-talk{bottom:16px;right:16px;font-size:14px;padding:12px 18px}.day-continuation{grid-template-columns:1fr;gap:10px}body .journal-intro.brand-hero figure img{height:340px}}

body h1 .slogan-dot,body h2 .slogan-dot{display:inline!important}

/* One opening rhythm, independent of each page's older stylesheet. */
body main>section.brand-hero{width:100%!important;max-width:none!important;margin:0!important;padding:28px var(--page-gutter,5%) 36px!important;align-items:start!important}
body main>section.brand-hero>div:first-child{margin-top:0!important;padding-top:0!important}
body main>section.brand-hero :is(.eyebrow,.kicker){display:flex!important;align-items:center!important;gap:14px!important;margin:0!important;padding:0!important;min-height:38px!important;font:700 11px/1.6 Arial,Helvetica,sans-serif!important;letter-spacing:2px!important;text-transform:uppercase}
body main>section.brand-hero .sun{display:inline-block!important;margin:0!important;padding:0!important;font:400 38px/1 Georgia,'Times New Roman',serif!important;letter-spacing:0!important;color:#f4ca52!important}
body main>section.brand-hero h1{font-family:Georgia,'Times New Roman',serif!important;font-weight:400!important;font-size:clamp(36px,4vw,60px)!important;line-height:1.07!important;letter-spacing:-.045em!important;margin:18px 0 22px!important;min-height:0!important;color:#17251e!important}
body main>section.brand-hero h1 :is(em,.accent,.headline-italic){font-family:inherit!important;font-size:inherit!important;font-weight:400!important;font-style:italic!important;line-height:inherit!important;letter-spacing:inherit!important}
body main>section.brand-hero h1 .slogan-dot{display:inline!important;color:#f4ca52!important}
body main>section.brand-hero :is(.lead,.standfirst){font:400 clamp(18px,1.65vw,24px)/1.5 Arial,Helvetica,sans-serif!important;color:#17251e!important;margin:0 0 22px!important}
body main>section.brand-hero :is(.opening-badge,.pill){margin:0 0 16px!important}
body main>section.brand-hero figure{margin-top:0!important}
body main>section.brand-hero .hero-actions{order:initial!important}
body main>section.brand-hero .intro{order:initial!important}
.sea-timeline{list-style:none;margin:38px 0 30px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:44px 80px;position:relative;align-items:start}
.sea-timeline:before{content:'';position:absolute;left:50%;top:26px;bottom:26px;width:2px;background:#d8dacd;transform:translateX(-50%)}
.timeline-stop{position:relative;min-width:0;background:#fffdf7;border:1px solid #d8dacd;border-radius:10px;overflow:visible}
.timeline-stop:nth-child(even){margin-top:100px}
.timeline-stop:before{content:'';position:absolute;width:12px;height:12px;right:-47px;top:20px;border-radius:50%;background:#f4ca52;border:3px solid #f6f4eb;z-index:1}
.timeline-stop:nth-child(even):before{right:auto;left:-47px}
.timeline-stop:after{content:'';position:absolute;right:-40px;top:26px;width:40px;height:1px;background:#d8dacd}
.timeline-stop:nth-child(even):after{right:auto;left:-40px}
.timeline-time{display:block;padding:12px 22px;background:#f4ca52;font:600 20px/1.3 Arial,Helvetica,sans-serif;border-radius:9px 9px 0 0}
.timeline-stop>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.timeline-copy{padding:24px}.timeline-copy .eyebrow{margin:0;font-size:10px}.timeline-copy h3{margin:12px 0;font:400 30px/1.15 Georgia,serif}.timeline-copy p:last-child{margin:0;font-size:15px;line-height:1.7}
.field-help{display:block;font-size:12px;line-height:1.5;color:#637267;margin-top:8px;max-width:65ch}
@media(max-width:760px){body main>section.brand-hero{padding-top:22px!important}body main>section.brand-hero h1{font-size:clamp(36px,8vw,52px)!important}.sea-timeline{grid-template-columns:1fr;gap:28px;padding-left:25px}.sea-timeline:before{left:6px;top:26px}.timeline-stop:nth-child(even){margin-top:0}.timeline-stop:before,.timeline-stop:nth-child(even):before{left:-26px;right:auto}.timeline-stop:after,.timeline-stop:nth-child(even):after{left:-19px;right:auto;width:19px}.timeline-copy{padding:20px}.timeline-copy h3{font-size:28px}}

html body main>section.brand-hero.brand-hero{padding-top:28px!important}
@media(max-width:760px){html body main>section.brand-hero.brand-hero{padding-top:22px!important}}
