:root{--deep:#103740;--deepest:#092b34;--sea:#246d72;--mint:#dce9e3;--paper:#fffdf8;--sand:#f4efe4;--line:#d7ded7;--text:#193a40;--muted:#52666a;--copper:#b57955;--max:1210px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--paper);color:var(--text);font:400 17px/1.65 Arial,Helvetica,sans-serif}img{display:block;max-width:100%}a{color:inherit}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.09;letter-spacing:-.03em}h1{font-size:clamp(3.65rem,7.6vw,7rem)}h2{font-size:clamp(2.7rem,5vw,5rem)}h3{font-size:clamp(1.5rem,2vw,2.15rem)}em{font-weight:400}p{max-width:65ch}.wrap{width:min(var(--max),calc(100% - 60px));margin-inline:auto}.skip{position:absolute;top:-100px;left:12px;background:white;color:var(--deep);padding:10px 16px;z-index:100}.skip:focus{top:12px}.eyebrow{font:bold .71rem/1.35 Arial,sans-serif;letter-spacing:.19em;text-transform:uppercase;color:var(--sea)}.eyebrow.light{color:#c5e1db}.dot{margin-inline:.45rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:1.3rem;min-height:54px;padding:1rem 1.4rem;text-decoration:none;font-size:.84rem;font-weight:700;line-height:1.25;letter-spacing:.025em;transition:background .22s,transform .22s}.button:hover{transform:translateY(-2px)}.button-cream{background:var(--paper);color:var(--deep)}.button-cream:hover{background:#e4eeea}.text-link{display:inline-flex;gap:1.25rem;align-items:center;padding-bottom:.28rem;border-bottom:1px solid var(--copper);font-size:.87rem;letter-spacing:.025em;font-weight:700;text-decoration:none}.text-link:hover{color:var(--sea)}.lede{font:400 clamp(1.3rem,2vw,1.65rem)/1.5 Georgia,serif;color:var(--deep)}.section{padding-block:clamp(5.2rem,8vw,9.3rem)}
.site-header{position:sticky;top:0;background:var(--paper);z-index:50;border-bottom:1px solid #e7e9e2}.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{text-decoration:none;display:flex;align-items:center;gap:.75rem;color:var(--deep);font:400 1.48rem/1.03 Georgia,serif;white-space:nowrap}.brand-logo{width:52px;height:52px;flex:none}.brand-name{display:block}.brand-four{color:#5b9168}.brand small{display:block;font:bold .58rem/1.5 Arial,sans-serif;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin-top:5px}.desktop-nav{display:flex;align-items:center;gap:clamp(1rem,2vw,2.1rem)}.desktop-nav a{text-decoration:none;font-size:.79rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}.desktop-nav a:hover{color:var(--sea)}.desktop-nav .nav-button{background:var(--deep);color:white;padding:.68rem 1rem}.desktop-nav .nav-button:hover{background:var(--sea);color:white}.mobile-nav{display:none}
.hero{min-height:730px;height:min(760px,calc(100svh - 82px));position:relative;isolation:isolate;display:flex;align-items:center;background:var(--deep);color:#fff;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%;z-index:-2}.hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(4,35,45,.88) 0%,rgba(4,35,45,.65) 45%,rgba(4,35,45,.05) 100%),linear-gradient(0deg,rgba(4,35,45,.45),transparent 40%)}.hero-inner{padding:5.5rem 0 7rem}.hero h1{max-width:950px;margin:.8rem 0 1.6rem}.hero h1 em{color:#e5ede7}.hero-lede{font:400 clamp(1.27rem,2vw,1.7rem)/1.48 Georgia,serif;max-width:630px}.hero-actions{margin-top:2.4rem;display:flex;gap:1.7rem;align-items:center;flex-wrap:wrap}.quiet-link{font-size:.86rem;text-decoration:none;font-weight:700;border-bottom:1px solid #c7ded8;padding-bottom:.2rem}.quiet-link:hover{color:#d5e8e1}.hero-foot{position:absolute;bottom:0;left:0;right:0;border-top:1px solid #ffffff69}.hero-foot>.wrap{padding:1rem 0;display:flex;justify-content:space-between;gap:1rem;text-transform:uppercase;letter-spacing:.15em;font-size:.67rem;font-weight:700}
.intro-grid{display:grid;grid-template-columns:.95fr 1fr;align-items:center;gap:clamp(3rem,8vw,8rem)}.intro-copy h2{margin:.65rem 0 1.5rem}.intro-copy .lede{margin-bottom:1.1rem}.intro-copy>p:not(.eyebrow):not(.lede){color:var(--muted);margin-bottom:1.6rem}.intro-visual{position:relative;margin:0 0 2rem}.intro-visual:before{content:"";position:absolute;inset:1.4rem -1.3rem -1.4rem 1.3rem;background:#e4ebe2;z-index:-1}.intro-visual img{width:100%;height:clamp(440px,46vw,630px);object-fit:cover;object-position:center 38%}.intro-visual figcaption{position:absolute;bottom:0;right:0;background:var(--paper);padding:.85rem 1rem 0 1.4rem;font-size:.78rem;color:var(--muted);max-width:250px}.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;margin-top:clamp(5rem,8vw,8rem);padding-top:1.2rem;border-top:1px solid var(--line)}.pillars>div>span{font:400 1.5rem Georgia,serif;color:var(--copper)}.pillars h3{font-size:1.65rem;margin:.75rem 0 .45rem}.pillars p{font-size:.91rem;color:var(--muted)}
.photo-story{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:7px;height:380px;background:var(--deep)}.photo-story figure{position:relative;overflow:hidden}.photo-story img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.photo-story figure:hover img{transform:scale(1.035)}.photo-story figcaption{position:absolute;bottom:1.2rem;left:1.5rem;background:#103740cb;color:#fff;padding:.35rem .7rem;font:700 .68rem Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase}
.rhythm-section{background:var(--sand)}.rhythm-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,9vw,9rem)}.rhythm-intro h2{margin:.7rem 0 1.2rem}.rhythm-intro>p:not(.eyebrow){color:var(--muted)}.rhythm-photo{margin-top:3rem;max-width:460px}.rhythm-photo img{width:100%;height:315px;object-fit:cover}.day-list article{display:grid;grid-template-columns:48px 1fr;gap:1.5rem;border-top:1px solid #cbd5d0;padding:1.3rem 0 1.5rem}.day-list article:last-child{border-bottom:1px solid #cbd5d0}.day-number{font:400 1.5rem Georgia,serif;color:var(--copper);line-height:1.15}.day-date{text-transform:uppercase;letter-spacing:.14em;font-size:.67rem;font-weight:700;color:var(--sea)}.day-list h3{font-size:1.48rem;margin:.3rem 0 .45rem}.day-list p{font-size:.91rem;color:var(--muted)}.arrival-note{margin-top:2rem;font-size:.85rem;color:var(--muted)}.arrival-note span{font-weight:700;color:var(--deep)}.arrival-note span[aria-hidden]{padding:0 .65rem}
.hosts-section{background:var(--deep);color:var(--paper)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:3rem;margin-bottom:2.6rem}.section-heading h2{margin:.6rem 0 0}.section-heading>p{max-width:375px;color:#cfdddd;font-size:.96rem}.host-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:1rem}.host-card{background:#16434b;display:flex;flex-direction:column;min-width:0}.host-card img{width:100%;height:clamp(280px,30vw,390px);object-fit:cover;object-position:center 34%}.host-lead img{object-position:center 25%}.host-card>div{padding:1.55rem 1.55rem 1.8rem;flex:1}.host-role{color:#b6d8d2;font-size:.67rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase}.host-card h3{font-size:1.7rem;margin:.45rem 0 .75rem}.host-card p:not(.host-role){font-size:.88rem;line-height:1.6;color:#d4e3df}.host-link{display:inline-block;margin-top:1.3rem;text-decoration:none;border-bottom:1px solid #c49a79;font-size:.8rem;font-weight:700}.host-link:hover{color:white}
.stay-section{background:var(--paper)}.stay-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:clamp(3rem,7vw,7rem);align-items:center}.stay-photo{position:relative}.stay-photo img{width:100%;height:550px;object-fit:cover}.photo-label{position:absolute;left:0;bottom:0;background:var(--deep);color:white;text-transform:uppercase;font-size:.68rem;letter-spacing:.16em;font-weight:700;padding:1rem 1.4rem}.stay-copy h2{margin:.65rem 0 1.2rem}.stay-copy .lede{margin-bottom:1rem}.stay-copy>p:not(.eyebrow):not(.lede){color:var(--muted);margin-bottom:1.5rem}
.rooms-section{background:#eaf0eb}.section-heading.dark>p{color:var(--muted)}.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.room-card{background:var(--paper)}.room-image{height:250px;position:relative;overflow:hidden}.room-image img{width:100%;height:100%;object-fit:cover}.image-watermark{position:absolute;right:.65rem;bottom:.65rem;background:#103740d9;color:#fff;padding:.4rem .55rem;font-size:.63rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.room-body{padding:1.45rem 1.45rem 1.65rem}.room-index{font-size:.68rem;color:var(--sea);font-weight:700;letter-spacing:.13em}.room-body h3{margin:.5rem 0 .55rem}.room-body p{font-size:.88rem;color:var(--muted)}.price-strip{margin-top:2.5rem;border-top:1px solid #bbccc5;border-bottom:1px solid #bbccc5;padding:1.5rem 0;display:flex;justify-content:space-between;align-items:center;gap:2rem}.price-strip h3{font-size:1.55rem;margin:.4rem 0 0}.price-options{display:flex;gap:clamp(2rem,5vw,5rem)}.price-options p{display:flex;flex-direction:column;line-height:1.2;white-space:nowrap}.price-options span{font-size:.76rem;color:var(--muted);margin-bottom:.4rem}.price-options strong{font:400 2.25rem Georgia,serif;color:var(--deep)}
.practical-section{background:var(--paper)}.practical-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(3rem,8vw,8rem)}.practical-grid h2{margin:.6rem 0}.practical-items{display:grid;grid-template-columns:repeat(2,1fr);gap:2.5rem 2rem}.practical-items>div{border-top:1px solid var(--line);padding-top:1rem}.practical-items span{font:400 1.45rem Georgia,serif;color:var(--copper)}.practical-items h3{font-size:1.35rem;margin:.75rem 0 .45rem}.practical-items p{font-size:.9rem;color:var(--muted)}
.faq-section{background:var(--sand)}.faq-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(3rem,8vw,8rem)}.faq-grid h2{margin:.6rem 0 1rem}.faq-grid>div:first-child>p:not(.eyebrow){color:var(--muted)}.faq-list details{border-top:1px solid #cad3cd;padding:1.1rem 0}.faq-list details:last-child{border-bottom:1px solid #cad3cd}.faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:2rem;font-size:.96rem;font-weight:700;line-height:1.4}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';font:400 1.4rem/1 Georgia,serif;color:var(--sea)}.faq-list details[open] summary:after{content:'−'}.faq-list details p{font-size:.88rem;color:var(--muted);margin-top:.85rem;max-width:58ch}.faq-list a{text-decoration-thickness:1px;text-underline-offset:3px}
.join-section{background:var(--sea);color:white;padding:clamp(5rem,7vw,8rem) 0}.join-grid{display:flex;align-items:end;justify-content:space-between;gap:3rem}.join-grid h2{margin:.7rem 0 1rem}.join-grid p:not(.eyebrow){font:400 1.15rem/1.5 Georgia,serif;max-width:560px}.join-action{display:flex;flex-direction:column;gap:1rem;align-items:flex-start;min-width:250px}.join-action span{font-size:.8rem}.join-action span a{text-underline-offset:3px}.site-footer{background:var(--deepest);color:#dce7e3;padding:3.5rem 0 1.5rem}.footer-main{display:flex;justify-content:space-between;gap:2rem;padding-bottom:3rem}.footer-brand{display:flex;align-items:center;gap:1rem}.footer-brand img{width:60px;height:60px;flex:none}.footer-title{font:400 1.8rem Georgia,serif;color:white}.footer-main p{font-size:.85rem;margin-top:.35rem;color:#b5cdca}.footer-main>div:last-child{display:flex;gap:1.5rem;align-items:flex-start}.footer-main a{text-decoration:none;font-size:.8rem;font-weight:700}.footer-main a:hover{color:white}.footer-bottom{border-top:1px solid #446067;padding-top:1.3rem;display:flex;justify-content:space-between;gap:1rem;font-size:.72rem;color:#a9c1c0}
@media(max-width:1050px){.desktop-nav{gap:1rem}.desktop-nav a{font-size:.75rem}.host-grid{grid-template-columns:repeat(3,1fr)}.host-card>div{padding:1.25rem}.host-card h3{font-size:1.45rem}}
@media(max-width:850px){.desktop-nav{display:none}.mobile-nav{display:block;position:relative}.mobile-nav summary{list-style:none;cursor:pointer;padding:.6rem;font-weight:700;font-size:.85rem}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav nav{position:absolute;right:0;top:2.4rem;background:var(--paper);color:var(--deep);box-shadow:0 15px 35px #092b342c;min-width:210px;padding:.5rem;display:grid}.mobile-nav nav a{display:block;padding:.75rem;text-decoration:none;font-size:.88rem}.hero{height:auto;min-height:670px}.intro-grid,.rhythm-grid,.stay-grid,.practical-grid,.faq-grid{grid-template-columns:1fr;gap:3rem}.intro-visual{max-width:580px;margin-inline:auto}.intro-visual img{height:590px}.pillars{gap:1.5rem}.rhythm-photo{display:none}.host-grid{grid-template-columns:repeat(2,1fr)}.host-lead{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr}.host-lead img{height:100%}.stay-photo img{height:470px}.join-grid{display:block}.join-action{margin-top:2rem}.section-heading{align-items:start}.section-heading>p{max-width:290px}.room-image{height:190px}}
@media(max-width:600px){html{scroll-padding-top:82px}body{font-size:16px}.wrap{width:min(var(--max),calc(100% - 34px))}.header-inner{min-height:70px}.brand{font-size:1.13rem;gap:.45rem}.brand-logo{width:44px;height:44px}.brand small{font-size:.47rem;letter-spacing:.12em}.hero{min-height:720px;align-items:end}.hero-image{object-position:64% center}.hero:after{background:linear-gradient(0deg,rgba(4,35,45,.94) 0%,rgba(4,35,45,.66) 58%,rgba(4,35,45,.2) 100%)}.hero-inner{padding:8rem 0 7.2rem}.hero h1{font-size:clamp(3.35rem,14vw,5rem)}.hero-lede{font-size:1.28rem}.hero-actions{gap:1.25rem}.hero-foot>.wrap{font-size:.58rem}.hero-foot span:last-child{display:none}.section{padding-block:5rem}.intro-grid{gap:3rem}.intro-visual{width:calc(100% - 16px)}.intro-visual img{height:470px}.intro-visual:before{inset:1rem -1rem -1rem 1rem}.intro-visual figcaption{font-size:.68rem;max-width:180px}.pillars{margin-top:4.5rem;grid-template-columns:1fr;gap:1.3rem}.pillars>div{display:grid;grid-template-columns:40px 1fr;gap:.1rem 1rem;border-bottom:1px solid var(--line);padding-bottom:1.1rem}.pillars h3{margin:0}.pillars p{grid-column:2}.photo-story{grid-template-columns:1fr 1fr;height:260px}.photo-story figure:last-child{display:none}.photo-story figcaption{left:.5rem;bottom:.5rem}.day-list article{grid-template-columns:35px 1fr;gap:.9rem}.day-list h3{font-size:1.3rem}.arrival-note span[aria-hidden]{display:none}.arrival-note{display:grid;gap:.2rem}.hosts-section .section-heading,.rooms-section .section-heading{display:block}.section-heading>p{margin-top:1rem}.host-grid{display:block}.host-card,.host-lead{display:block;margin-top:1rem}.host-card img,.host-lead img{height:400px}.host-card>div{padding:1.4rem}.stay-photo img{height:330px}.room-grid{display:block}.room-card{margin-top:1rem}.room-image{height:230px}.price-strip{display:block}.price-options{justify-content:space-between;margin-top:1.5rem;gap:1rem}.price-options strong{font-size:2rem}.practical-items{grid-template-columns:1fr;gap:1.2rem}.faq-grid{gap:2.5rem}.join-section{padding-block:5rem}.join-grid h2{font-size:3.8rem}.footer-main{display:block}.footer-main>div:last-child{margin-top:2rem;flex-wrap:wrap}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:.35rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* V5: a warmer island palette and an opening with the retreat details in view. */
:root{--deep:#633f35;--deepest:#372721;--sea:#a2543d;--mint:#f1e4d5;--paper:#fffaf3;--sand:#f4e8d9;--line:#dfd0c3;--text:#422f2b;--muted:#6e5d55;--copper:#b46c4c}
.eyebrow.light{color:#fff2e3}
.button-cream:hover{background:#f7dcc5}
.button-warm{background:#ae5f43;color:#fff;border:1px solid #eac6ae;font:700 1rem/1.2 Arial,Helvetica,sans-serif;text-transform:uppercase;letter-spacing:.06em;padding:1.1rem 2rem;box-shadow:0 10px 35px #2c1b2040}
.button-warm:hover{background:#8e4935}
.site-header{border-color:#e9dcd0}
.desktop-nav .nav-button{background:var(--sea)}
.hero{height:min(780px,calc(100svh - 82px));min-height:670px;background:#614532;text-align:center}
.hero-image{object-position:center 55%}
.hero:after{background:linear-gradient(0deg,rgba(34,25,22,.65),rgba(45,29,23,.28) 35%,rgba(37,26,25,.28) 70%,rgba(34,25,22,.37)),linear-gradient(90deg,rgba(29,22,20,.26),transparent 35%,rgba(29,22,20,.22))}
.hero-inner{display:flex;flex-direction:column;align-items:center;padding:4.5rem 0 6.5rem;text-shadow:0 2px 16px #241717b8}
.hero h1{max-width:1150px;font-size:clamp(4.25rem,8.2vw,8.4rem);line-height:1.02;margin:.45rem 0 1rem}
.hero h1 em{color:#fff2dc;display:block}
.hero-date{font:400 clamp(1.35rem,2.6vw,2.45rem)/1.3 Georgia,serif;color:#fff4e7;letter-spacing:.01em}
.hero-date span{padding:0 .18em}
.hero-lede{font:400 clamp(1.07rem,1.8vw,1.45rem)/1.5 Georgia,serif;max-width:770px;color:#fff4e7;margin-top:.65rem}
.hero-actions{justify-content:center;margin-top:2rem;text-shadow:none}
.quiet-link{color:#fff;text-shadow:0 1px 8px #241717b8}
.hero-foot{border-color:#fff9;background:#2b1c1b35;text-align:left}
.intro-visual:before{background:#e9d9c7}
.intro-section{padding-bottom:clamp(2rem,3vw,3rem)}
.pillars h3{margin:.1rem 0 .45rem}
.photo-story{background:var(--deep)}
.photo-story figure:first-child img{object-position:center 58%}
.photo-story figure:nth-child(2) img{object-position:center 42%}
.photo-story figcaption{background:#57372bc9}
.day-list article,.day-list article:last-child{border-color:#d8c7b8}
.highlights-list article{display:block;padding:1.45rem 0 1.6rem}
.highlights-list h3{margin:0 0 .45rem}
.hosts-section{background:var(--deep)}
.host-grid{grid-template-columns:repeat(2,1fr);gap:1.2rem}
.host-card{background:#735044}
.host-card>div{padding:1.7rem 1.9rem 2rem}
.host-card img{height:370px}
.host-lead{grid-column:1/-1;display:grid;grid-template-columns:.78fr 1.22fr}
.host-lead img{height:100%;min-height:510px;object-position:center 22%}
.host-lead>div{padding:clamp(2rem,5vw,4.5rem);align-self:center}
.host-lead h3{font-size:clamp(2.4rem,4vw,4rem)}
.host-lead p:not(.host-role){font-size:1rem;line-height:1.7;max-width:62ch;margin-top:.8rem}
.host-card blockquote{font:italic 1.22rem/1.45 Georgia,serif;color:#fff1df;border-left:2px solid #d8a078;margin:1.5rem 0 0;padding-left:1.25rem;max-width:55ch}
.host-role{color:#f0cfb5}
.host-card p:not(.host-role){color:#f4e6de}
.host-link{border-color:#e0ac86}
.rooms-section{background:#f3e9dc}
.price-strip{border-color:#d2bda9}
.practical-items>div{border-color:var(--line)}
.faq-list details,.faq-list details:last-child{border-color:#d6c4b5}
.join-section{background:#a65b43}
.footer-bottom{border-color:#7a5b4d}
@media(max-width:850px){.hero{min-height:680px}.host-grid{grid-template-columns:1fr 1fr}.host-lead{grid-column:1/-1;grid-template-columns:.8fr 1.2fr}.host-lead img{height:100%;min-height:560px}.host-lead>div{padding:2rem}.host-lead h3{font-size:2.7rem}}
@media(max-width:600px){.hero{min-height:690px;align-items:center}.hero-image{object-position:48% center}.hero:after{background:linear-gradient(0deg,rgba(32,22,20,.77),rgba(33,22,19,.35) 50%,rgba(33,22,19,.3))}.hero-inner{padding:5rem 0 6rem}.hero h1{font-size:clamp(3.5rem,15vw,5.5rem)}.hero-date{font-size:1.28rem}.hero-lede{font-size:1.05rem}.hero-actions{flex-direction:column;gap:1.2rem}.hero-foot{font-size:.62rem}.host-grid{display:block}.host-lead{display:block}.host-lead img{height:420px;min-height:0}.host-lead>div{padding:1.6rem}.host-lead h3{font-size:2.35rem}.host-card blockquote{font-size:1.08rem}.host-card:not(.host-lead){margin-top:1rem}.photo-story figure:nth-child(2) img{object-position:center 65%}}
@media(max-width:600px){.pillars>div{display:block}.pillars p{grid-column:auto}}

/* V6: a compact, complete seven-day outline from arrival through departure. */
.rhythm-section{padding-block:clamp(4.5rem,6vw,6.5rem)}
.full-week-list article{grid-template-columns:35px 1fr;gap:1.2rem;padding:.83rem 0 .9rem}
.full-week-list .day-number{font-size:1.3rem}
.full-week-list h3{font-size:1.32rem;margin:.18rem 0 .24rem}
.full-week-list p{font-size:.84rem;line-height:1.45}
@media(max-width:600px){.full-week-list article{gap:.85rem;padding:.9rem 0 1rem}}
.room-body h3{margin:.1rem 0 .55rem}
.map-link{display:inline-block;margin-top:.6rem;border-bottom:1px solid var(--copper);font-size:.86rem;font-weight:700;text-decoration:none}.map-link:hover{color:var(--sea)}
@media(max-width:600px){.photo-story{display:flex;height:270px;gap:6px;overflow-x:auto;scroll-snap-type:x mandatory}.photo-story figure{flex:0 0 82%;scroll-snap-align:start}.photo-story figure:last-child{display:block}}

/* V8: content and imagery refinements within the warm visual system. */
.intro-visual img{object-position:center top}
.expect-section{background:#faf5ed;padding-block:clamp(4.5rem,6vw,6.5rem)}
.expect-grid{display:grid;grid-template-columns:1.05fr 1.2fr .9fr;gap:1rem;align-items:stretch}
.expect-panel{background:var(--paper);padding:clamp(1.45rem,2.6vw,2.25rem);border-top:3px solid #427985}
.expect-included{border-top-color:#5b9168}.expect-extra{border-top-color:#b57955}.expect-panel h3{font-size:1.65rem;margin-bottom:1rem}.expect-panel .panel-intro{color:var(--muted);font-size:.88rem;margin-bottom:1rem}
.expect-panel ul{margin:0;padding-left:1.15rem;display:grid;gap:.75rem}.expect-panel li{font-size:.88rem;line-height:1.5;padding-left:.12rem}.expect-panel li::marker{color:var(--sea)}
.day-flow>div{border-top:1px solid var(--line);padding:.75rem 0}.day-flow span{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--sea)}.day-flow p{font-size:.88rem;line-height:1.5;margin-top:.25rem}.day-flow-note{font-size:.84rem;color:var(--muted);margin-top:.6rem}
.meals-note{margin-top:1.3rem;color:var(--muted);font-size:.83rem;max-width:none}
.host-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.host-card{display:flex;flex-direction:column}.host-card img{width:100%;height:310px;min-height:0;object-fit:cover;object-position:center top}.host-kaiti img,.host-labros img{object-position:center top}.host-kaiti img{object-position:center 45%}.host-card>div{padding:1.5rem 1.45rem 1.8rem}.host-card h3{font-size:clamp(1.55rem,2vw,1.85rem)}.host-card p:not(.host-role){font-size:.89rem;line-height:1.62;margin-top:.7rem}.host-link{margin-top:1.1rem}
.stay-photo img{object-position:center 55%}
.rooms-section{padding-bottom:clamp(2.75rem,4vw,4rem)}.room-image img{object-position:center center}
.join-action .button{min-width:220px}.button-outline{background:transparent;color:white;border:1px solid #fff9}.button-outline:hover{background:#ffffff1c}.join-grid .join-question{font:400 .9rem/1.5 Arial,Helvetica,sans-serif;margin-top:1.4rem;color:#fff5ed}
@media(max-width:950px){.expect-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.expect-day{grid-column:1/-1}.host-grid{grid-template-columns:1fr}.host-card{display:grid;grid-template-columns:230px 1fr}.host-card img{height:100%;min-height:290px}}
@media(max-width:600px){.expect-grid{grid-template-columns:1fr}.expect-day{grid-column:auto}.expect-panel{padding:1.5rem}.host-grid{display:block}.host-card{display:block}.host-card img{height:320px;min-height:0}.host-card>div{padding:1.45rem}.host-card:not(:first-child){margin-top:1rem}.rooms-section{padding-bottom:2.5rem}}

/* Consolidated retreat themes. */
.intro-section{padding-bottom:clamp(5rem,7vw,8rem)}
.theme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,1.5rem);margin-top:clamp(4.5rem,7vw,7rem)}
.theme-card{min-width:0;border-top:1px solid #d7c8bb}
.theme-card h3{font-size:clamp(1.7rem,2.3vw,2.2rem);margin:1.1rem 0 1.15rem;color:#50382f}
.theme-card img{display:block;width:100%;height:clamp(300px,30vw,390px);object-fit:cover}
.theme-card:first-child img{object-position:center top}
.theme-card:nth-child(2) img{object-position:center 54%}
.theme-card:nth-child(3) img{object-position:center 55%}
.theme-card p{font-size:.93rem;line-height:1.6;color:var(--muted);padding-top:1.15rem;max-width:38ch}
@media(max-width:800px){.theme-grid{grid-template-columns:1fr;gap:2.25rem}.theme-card img{height:360px}.theme-card p{max-width:60ch}}
@media(max-width:600px){.theme-grid{margin-top:4rem}.theme-card img{height:330px}.intro-visual img{object-position:center center}}

/* V9: the retreat discipline is the hero headline. */
.hero h1{font-size:clamp(3.25rem,6.2vw,6.4rem);line-height:1.04;max-width:1100px}
@media(max-width:600px){.hero h1{font-size:clamp(2.5rem,9.5vw,3.5rem);line-height:1.07;margin:.55rem 0 1.15rem}}
.hero h1,.hero h1 em{color:#fff2dc}
.hero-date{color:#e3ded6}

/* V11: room deposit selection (preview only) */
.deposit-panel{margin-top:2.5rem;background:var(--paper);padding:clamp(1.3rem,3.6vw,3rem);border:1px solid #c4d0c8;scroll-margin-top:105px;display:grid;grid-template-columns:1fr 1.25fr;gap:1.7rem 3rem;align-items:start}
.deposit-heading h3{margin:.55rem 0 1rem;font-size:clamp(1.85rem,3vw,2.6rem)}.deposit-heading>p:not(.eyebrow){font-size:.92rem;color:var(--muted)}.deposit-heading .deposit-preview{margin-top:1rem;color:#915236!important;font-weight:700;font-size:.77rem!important}
.deposit-choices{border:0;padding:0;margin:0;min-width:0}.deposit-choices legend{font-size:.85rem;font-weight:700;margin-bottom:.75rem;color:var(--deep)}
.deposit-option{display:flex;align-items:center;gap:.85rem;border:1px solid #c9d7cf;margin-bottom:.6rem;padding:1rem;cursor:pointer;transition:border-color .2s,background .2s}.deposit-option:has(input:checked){border-color:var(--sea);background:#eaf0eb}.deposit-option input{accent-color:var(--sea);width:19px;height:19px;flex-shrink:0}.deposit-option-copy{flex:1;min-width:0}.deposit-option-copy strong{display:block;color:var(--deep);font-size:.92rem}.deposit-option-copy small,.deposit-option-price small{display:block;color:var(--muted);font-size:.73rem}.deposit-option-price{text-align:right;white-space:nowrap;color:var(--deep);font-weight:700;font-size:1rem}
.deposit-checkout{grid-column:2;border-top:1px solid #bdcbc3;padding-top:1.25rem}.deposit-checkout-label{color:var(--muted);font-size:.85rem}.deposit-amount{font:400 2.6rem Georgia,serif;color:var(--deep);margin:.35rem 0 1rem}.deposit-pay{background:var(--sea);color:#fff;min-width:210px;border:0;opacity:.55;cursor:not-allowed}.deposit-pay:hover{transform:none}.deposit-checkout #deposit-unavailable{font-size:.75rem;color:#8a503a;margin-top:.8rem}.deposit-payment-note{font-size:.78rem;color:var(--muted);margin-top:1rem}
@media(max-width:850px){.deposit-panel{grid-template-columns:1fr}.deposit-checkout{grid-column:1}}
@media(max-width:600px){.deposit-option{padding:.75rem;gap:.6rem}.deposit-option-price{font-size:.9rem}.deposit-amount{font-size:2.2rem}}

/* Registration cards */
.room-card{display:flex;flex-direction:column}.room-body{display:flex;flex-direction:column;flex:1}.room-body>p{min-height:3.8em}.room-rates{border-top:1px solid var(--line);padding-top:1rem;margin-top:auto}.room-rates p{margin:.3rem 0 1.3rem}.room-rates span,.room-rates small{display:block;font-size:.78rem}.room-rates strong{display:block;font:400 2rem Georgia,serif;color:var(--deep);margin:.35rem 0}.room-register{background:var(--sea);color:white;text-align:center;justify-content:center}.room-register:hover{background:var(--deep)}.registration-note{margin-top:2rem;border-top:1px solid #bbccc5;padding-top:1.8rem;width:100%;max-width:none}.registration-note h3{font-size:1.7rem}.registration-note p{font-size:.94rem;max-width:none;width:100%}.registration-preview{font-size:.8rem!important;color:var(--muted)}



/* V14 registration readability */
.registration-note{padding-top:2.2rem}
.registration-note>h3{margin:0 0 1.6rem}
.registration-steps{list-style:none;counter-reset:booking;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin:0;padding:0}
.registration-steps>li{counter-increment:booking;border-top:1px solid var(--line);padding-top:1rem;min-width:0}
.registration-steps>li:before{content:'0' counter(booking);display:block;font:400 1.45rem Georgia,serif;color:var(--copper);margin-bottom:.8rem}
.registration-note h4{font:400 1.3rem/1.3 Georgia,serif;color:var(--deep);margin:0 0 .8rem}
.registration-note .registration-steps p,.registration-note .registration-payment p{font-size:.94rem;line-height:1.65;margin:.7rem 0;max-width:65ch}
.registration-payment{margin:1.8rem 0 1.1rem;padding:1.4rem 1.6rem;background:var(--paper);border-left:2px solid var(--copper)}
.registration-payment h4{margin-bottom:.6rem}
.registration-note .registration-payment p{max-width:none}
#payment-faq{scroll-margin-top:110px}
@media(max-width:800px){.registration-steps{grid-template-columns:1fr;gap:1.2rem}.registration-steps>li{position:relative;padding-left:2.8rem}.registration-steps>li:before{position:absolute;left:0;top:1rem}.registration-payment{padding:1.1rem 1.2rem}}

/* Match the supplied lowercase, three-color logo lettering. */
.brand-ub{color:#a1afd9}.brand-well{color:#a2d291}.brand-life{color:#3e3e3e}.brand-case{text-transform:none}.footer-title{display:inline-block;background:#fff;padding:.15rem .4rem;border-radius:2px}

/* V16: compact payment / cancellation terms within the existing registration panel */
.registration-payment .policy-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.55fr);gap:1.55rem}
.registration-payment .policy-columns>div+div{border-left:1px solid var(--line);padding-left:1.55rem}
.registration-payment .policy-columns p{margin:.45rem 0;font-size:.92rem;line-height:1.58}
.registration-payment .policy-columns h4{font-size:1.18rem;margin:0 0 .55rem}
.registration-payment .payment-currency-note{border-top:1px solid var(--line);margin:1rem 0 0;padding-top:.85rem;font-size:.84rem;line-height:1.55}
@media(max-width:720px){.registration-payment .policy-columns{grid-template-columns:1fr;gap:1rem}.registration-payment .policy-columns>div+div{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:1rem}}
