/* Interior compositions. Deliberately varied by purpose, with one shared type system. */
.editorial-intro{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(36px,7vw,112px);align-items:center;padding-top:65px;padding-bottom:65px}
.editorial-intro>*,.program-layout>*,.reservation-layout>*{min-width:0}
.editorial-intro h1,.stay-intro h1,.people-intro h1,.details-intro h1,.reservation-layout h1{font-family:var(--serif);font-size:var(--type-page);font-weight:400;line-height:.99;letter-spacing:-.035em;margin:24px 0 28px;text-wrap:balance}
.intro-copy>p{font-size:var(--type-body);line-height:1.85;max-width:470px}
.intro-copy .text-link,.intro-copy .button{margin-top:22px}
.intro-photo{margin:0;align-self:stretch;display:flex;flex-direction:column;justify-content:flex-end}
.intro-photo img{display:block;width:100%;height:100%;min-height:380px;max-height:610px;object-fit:cover}
.intro-photo figcaption{display:flex;justify-content:space-between;gap:16px;margin-top:13px;font-size:var(--type-caption);line-height:1.6;color:var(--muted)}
.program-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:72px;border-top:1px solid var(--line);padding-top:40px}
.day-tabs{display:flex;flex-direction:column;align-self:start}
.day-tab{appearance:none;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:center;text-align:left;width:100%;padding:19px 13px 19px 0;color:var(--muted);font:500 var(--type-body)/1.35 var(--sans);cursor:pointer;transition:color .18s,background .18s}
.day-tab>span{font-size:var(--type-caption);font-weight:400}
.day-tab strong{font-weight:500}
.day-tab:hover{color:var(--ink)}
.day-tab[aria-selected="true"]{color:var(--rust);box-shadow:inset 3px 0 var(--rust);padding-left:16px;background:#eeeee7}
.day-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:38px;align-items:start}
.day-panel[hidden]{display:none}
.day-panel h2,.day-panel h3{font-family:var(--serif);font-size:var(--type-section);font-weight:400;line-height:1.05;letter-spacing:-.02em;margin:15px 0 20px}
.day-panel p{font-size:var(--type-body);line-height:1.85;color:var(--muted)}
.day-number,.day-date{font-size:var(--type-caption);line-height:1.5;letter-spacing:.09em;color:var(--rust)}
.day-panel ul,.day-activities{padding:0;margin:25px 0 0;list-style:none}
.day-panel li{font-size:var(--type-body);line-height:1.7;border-top:1px solid var(--line);padding:13px 0}
.day-panel figure{margin:0}
.day-panel figure img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}
.day-panel figcaption{font-size:var(--type-caption);line-height:1.6;margin-top:12px;color:var(--muted)}
.participation-band{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:60px;background:#e9ebe4;padding:40px 44px;margin-top:65px}
.participation-band h2,.participation-band h3{font-family:var(--serif);font-weight:400;font-size:var(--type-section);line-height:1.12;margin:0}
.participation-band p{font-size:var(--type-body);line-height:1.8;margin:0;color:var(--muted)}
.participation-band p+p{margin-top:12px}
.stay-intro{padding-top:68px;padding-bottom:70px;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.62fr);column-gap:100px;align-items:end}
.stay-intro>p{font-size:var(--type-body);line-height:1.85;max-width:440px;margin:0 0 5px}
.accommodation-list{border-top:1px solid var(--line)}
.accommodation{display:grid;grid-template-columns:42px minmax(0,1.3fr) minmax(0,1fr) 190px;gap:32px;align-items:start;padding:48px 0;border-bottom:1px solid var(--line)}
.accommodation h2{font-family:var(--serif);font-size:var(--type-section);font-weight:400;letter-spacing:-.025em;line-height:1.05;margin:12px 0 20px}
.accommodation p{font-size:var(--type-body);line-height:1.85;color:var(--muted);margin:0;max-width:430px}
.accommodation .number,.accommodation>span{font:var(--type-caption)/1.5 var(--sans);color:var(--rust);padding-top:6px}
.amenities{padding:0;margin:0;list-style:none}
.amenities li{font-size:var(--type-caption);line-height:1.8;padding:10px 0;border-bottom:1px solid var(--line)}
.amenities li:first-child{padding-top:0}
.price-block{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.price-block strong{font-family:var(--serif);font-weight:400;font-size:var(--type-section);letter-spacing:-.04em;line-height:1}
.price-block small{font-size:var(--type-caption);line-height:1.7;color:var(--muted)}
.price-block .button,.price-block .text-link{margin-top:16px}
.inclusions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:90px}
.inclusions h2,.inclusions h3{font-family:var(--serif);font-size:var(--type-section);font-weight:400;letter-spacing:-.02em;margin:17px 0 26px;line-height:1.1}
.inclusions ul{margin:0;padding:0;list-style:none}
.inclusions li{font-size:var(--type-body);line-height:1.75;border-top:1px solid var(--line);padding:12px 0;display:flex;justify-content:space-between;gap:24px}
.inclusions p{font-size:var(--type-body);line-height:1.85;color:var(--muted);margin-top:24px}
.gallery-strip{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:20px}
.gallery-strip figure{margin:0;min-width:0}
.gallery-strip img{width:100%;height:360px;object-fit:cover;display:block}
.gallery-strip figcaption{font-size:var(--type-caption);line-height:1.65;color:var(--muted);margin-top:12px}
.people-intro{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.65fr);gap:80px;align-items:end;padding-top:68px;padding-bottom:60px}
.people-intro>p{font-size:var(--type-body);line-height:1.85;margin:0 0 6px}
.founder-spread{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px}
.founder-profile{border-top:1px solid var(--line);padding-top:30px;display:grid;grid-template-columns:140px minmax(0,1fr);gap:30px;align-items:start}
.founder-profile>img{display:block;width:140px;height:140px;object-fit:contain}
.founder-profile h2{font-family:var(--serif);font-size:var(--type-section);font-weight:400;line-height:1.06;margin:9px 0 20px;letter-spacing:-.02em}
.founder-profile p{font-size:var(--type-body);line-height:1.85;color:var(--muted);margin:0}
.team-table{border-top:1px solid var(--line)}
.team-table article,.team-table .team-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr) minmax(0,1.3fr);gap:36px;padding:25px 0;border-bottom:1px solid var(--line);align-items:start}
.team-table h3{font-family:var(--serif);font-size:var(--type-card);font-weight:400;line-height:1.2;margin:0}
.team-table .role{font-size:var(--type-caption);line-height:1.6;color:var(--rust);padding-top:5px}
.team-table p{font-size:var(--type-body);line-height:1.8;color:var(--muted);margin:0}
.care-notes{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:100px;background:#e9ebe4;padding:60px}
.care-notes h2{font-family:var(--serif);font-size:var(--type-section);font-weight:400;line-height:1.04;letter-spacing:-.025em;margin:15px 0 26px}
.care-notes h3{font-family:var(--sans);font-size:var(--type-card);font-weight:600;line-height:1.6;margin:0 0 10px}
.care-notes p{font-size:var(--type-body);line-height:1.85;color:var(--muted)}
.care-notes article,.care-notes .care-step{border-top:1px solid var(--line);padding:19px 0}
.care-notes article:first-child,.care-notes .care-step:first-child{padding-top:0;border-top:0}
.details-intro{padding-top:68px;padding-bottom:45px;max-width:1000px}
.details-intro>p{font-size:var(--type-body);line-height:1.85;max-width:530px}
.faq-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:95px}
.faq-layout aside{align-self:start;position:sticky;top:140px;display:flex;flex-direction:column;gap:0}
.faq-layout aside h3{font-family:var(--sans);font-size:var(--type-card);font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin:0 0 22px}
.faq-layout aside a{font-size:var(--type-caption);line-height:1.65;border-top:1px solid var(--line);padding:14px 0;text-decoration:none;color:var(--muted)}
.faq-layout aside a:hover{color:var(--rust)}
.faq-group{margin-bottom:55px;scroll-margin-top:150px}
.faq-group:last-child{margin-bottom:0}
.faq-group h2{font-family:var(--serif);font-size:var(--type-section);font-weight:400;letter-spacing:-.02em;line-height:1.1;margin:0 0 26px}
.faq-group details{border-top:1px solid var(--line)}
.faq-group details:last-child{border-bottom:1px solid var(--line)}
.faq-group summary{list-style:none;display:flex;justify-content:space-between;gap:26px;align-items:center;font-size:var(--type-body);line-height:1.65;font-weight:500;padding:20px 0;cursor:pointer}
.faq-group summary::-webkit-details-marker{display:none}
.faq-group summary:after{content:'+';font-size:var(--type-body);line-height:1;font-weight:400;color:var(--rust);flex:none;width:20px;text-align:center}
.faq-group details[open] summary:after{content:'−'}
.faq-group details p{font-size:var(--type-body);line-height:1.9;color:var(--muted);max-width:730px;margin:0;padding:0 45px 25px 0}
.travel-route{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;border-top:1px solid var(--line);padding-top:30px}
.travel-route article{min-width:0}
.travel-route .number,.travel-route article>span{font-size:var(--type-caption);color:var(--rust);letter-spacing:.08em}
.travel-route h3,.travel-route h4{font-family:var(--serif);font-weight:400;font-size:var(--type-card);letter-spacing:-.02em;line-height:1.1;margin:19px 0 17px}
.travel-route p{font-size:var(--type-body);line-height:1.8;color:var(--muted);margin:0}
.reservation-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.8fr);gap:clamp(55px,9vw,144px);align-items:start;padding-top:70px;padding-bottom:100px}
.reservation-layout h1{font-size:var(--type-page);max-width:620px}
.reservation-layout .lede{font-size:var(--type-body);line-height:1.85;max-width:475px}
.reservation-steps{margin-top:40px;border-top:1px solid var(--line)}
.reservation-steps>div,.reservation-steps>li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:22px;padding:22px 0;border-bottom:1px solid var(--line)}
.reservation-steps .step-dot,.reservation-steps .number{font-size:var(--type-caption);color:var(--rust);padding-top:4px}
.reservation-steps h3{font-size:var(--type-card);line-height:1.6;font-weight:600;margin:0 0 8px}
.reservation-steps p{font-size:var(--type-body);line-height:1.8;color:var(--muted);margin:0}
.reservation-summary{background:#e9ebe4;padding:38px;position:sticky;top:135px;align-self:start;min-width:0}
.reservation-summary h2{font-family:var(--serif);font-size:var(--type-section);line-height:1.08;letter-spacing:-.02em;font-weight:400;margin:20px 0 20px}
.reservation-summary>p{font-size:var(--type-body);line-height:1.85;color:var(--muted)}
.choice-field{margin-top:25px}
.choice-field label{display:block;font-size:var(--type-caption);line-height:1.5;font-weight:600;margin-bottom:10px}
.choice-field select{display:block;width:100%;max-width:100%;min-width:0;background:var(--paper);border:1px solid var(--line);border-radius:0;min-height:52px;padding:12px 33px 12px 12px;color:var(--ink);font:var(--type-caption)/1.5 var(--sans)}
.toggle-field{display:flex;align-items:flex-start;gap:12px;font-size:var(--type-caption);line-height:1.7;margin:22px 0 26px;cursor:pointer}
.toggle-field input{margin:4px 0 0;width:16px;height:16px;flex:none;accent-color:var(--rust)}
.toggle-field .muted{font-size:var(--type-caption)}
.price-line{display:flex;align-items:baseline;justify-content:space-between;gap:24px;font-size:var(--type-caption);line-height:1.65;padding:12px 0;border-top:1px solid var(--line)}
.price-line[hidden]{display:none}
.price-line strong{font-size:var(--type-body);font-weight:500;white-space:nowrap}
.price-line.total{align-items:center;padding-top:20px;padding-bottom:16px}
.price-line.total strong{font-family:var(--serif);font-size:var(--type-section);line-height:1;letter-spacing:-.035em;font-weight:400}
.reservation-summary .button{width:100%;justify-content:space-between;margin-top:16px}
.reservation-summary .quiet-link{display:block;text-align:center;font-size:var(--type-body);padding:18px 0 9px}
.reservation-summary .form-note{font-size:var(--type-caption);line-height:1.8}
.demo-status{border:1px solid #b3b9ae;padding:22px;margin:0 0 30px;background:var(--paper)}
.demo-status h3{font-family:var(--serif);font-size:var(--type-card);font-weight:400;line-height:1.2;margin:12px 0}
.demo-status p{font-size:var(--type-body);line-height:1.8;color:var(--muted)}
.status-pill{font-size:var(--type-caption);line-height:1.7;letter-spacing:.035em;color:var(--rust)}
.secondary-paths{display:flex;flex-wrap:wrap;gap:20px 35px;margin-top:30px}
.secondary-paths button{font:var(--type-caption)/1.7 var(--sans);color:var(--ink);background:none;border:0;border-bottom:1px solid var(--ink);border-radius:0;padding:0 0 6px;cursor:pointer;text-align:left}
.invite-shell{min-height:calc(100svh - 32px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:55px var(--gutter) 70px;background:#e9ebe4;color:var(--ink)}
.invite-shell>.brand{margin-bottom:46px}
.invite-shell h1{font-family:var(--serif);font-size:var(--type-page);font-weight:400;line-height:1;letter-spacing:-.035em;margin:20px 0 24px}
.invite-shell>.intro{font-size:var(--type-body);line-height:1.9;max-width:370px;margin:0 0 30px;color:var(--muted)}
.envelope{position:relative;width:min(510px,100%);min-height:260px;padding:45px 25px;margin:15px 0 22px;border:1px solid #ccd0c8;background:#f7f7f2;color:var(--ink);box-shadow:0 8px 30px #17201c0b;font:var(--type-caption)/1.5 var(--sans);cursor:pointer;transition:transform .25s,box-shadow .25s;overflow:hidden}
.envelope:hover{transform:translateY(-3px);box-shadow:0 12px 35px #17201c12}
.envelope:before{content:'';position:absolute;inset:0 0 auto;height:53%;background:linear-gradient(29deg,transparent 49.65%,#d5d6ce 49.85%,#d5d6ce 50.1%,transparent 50.3%),linear-gradient(-29deg,transparent 49.65%,#d5d6ce 49.85%,#d5d6ce 50.1%,transparent 50.3%);pointer-events:none}
.envelope-title{position:absolute;left:24px;right:24px;bottom:30px;font-size:var(--type-caption);letter-spacing:.04em}
.seal{position:relative;margin:auto;display:flex;width:56px;height:56px;align-items:center;justify-content:center;background:var(--rust);border-radius:50%;color:#f7f7f2;font-family:var(--serif);font-size:var(--type-section);line-height:1;box-shadow:0 3px 6px #17201c20}
.invite-hint{font-size:var(--type-caption);line-height:1.7;color:var(--muted);margin:0 0 32px}
.invitation-card{width:min(590px,100%);background:var(--paper);border:1px solid var(--line);padding:48px 45px;margin:15px 0 30px;text-align:center}
.invitation-card h2{font-family:var(--serif);font-weight:400;font-size:var(--type-section);line-height:1.05;letter-spacing:-.025em;margin:24px 0}
.invitation-card p{font-size:var(--type-body);line-height:1.9;max-width:370px;margin:22px auto;color:var(--muted)}
.invite-details{font-size:var(--type-caption);line-height:2.2;letter-spacing:.07em;margin:28px 0}
.invite-return{font-size:var(--type-caption);line-height:1.65;text-underline-offset:5px;color:var(--muted)}
.reveal-card{animation:invitation-open .42s ease-out both}
@keyframes invitation-open{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:901px){.day-tab:focus-visible{outline-offset:3px}}
@media(max-width:1100px){.program-layout{gap:40px;grid-template-columns:205px minmax(0,1fr)}.day-panel{gap:25px}.accommodation{grid-template-columns:30px minmax(0,1.2fr) minmax(0,1fr) 155px;gap:22px}.founder-spread{gap:40px}.founder-profile{grid-template-columns:100px minmax(0,1fr);gap:20px}.founder-profile>img{width:100px;height:100px}.reservation-summary{padding:30px}.care-notes{gap:50px;padding:45px}.faq-layout{gap:60px}.gallery-strip img{height:290px}}
@media(max-width:900px){.editorial-intro{gap:40px;padding-top:45px;padding-bottom:50px}.editorial-intro h1,.stay-intro h1,.people-intro h1,.details-intro h1{font-size:var(--type-page)}.intro-photo img{min-height:340px}.program-layout{display:block;padding-top:25px}.day-tabs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:35px;border-bottom:1px solid var(--line)}.day-tab{display:block;text-align:left;padding:13px 7px 15px;border-bottom:0}.day-tab>span{display:block;margin-bottom:8px;font-size:var(--type-caption)}.day-tab strong{font-size:var(--type-caption)}.day-tab[aria-selected="true"]{box-shadow:inset 0 -2px var(--rust);padding-left:7px}.day-panel{gap:38px}.day-panel figure img{aspect-ratio:5/4}.participation-band{gap:35px;padding:32px}.stay-intro{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:45px}.accommodation{grid-template-columns:30px minmax(0,1.2fr) minmax(0,.8fr);gap:25px}.accommodation .price-block{grid-column:2/4;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end}.price-block small{grid-column:1;grid-row:2}.price-block .button,.price-block .text-link{grid-column:2;grid-row:1/3;margin-top:0;justify-self:end}.inclusions{gap:45px}.gallery-strip{gap:14px}.gallery-strip img{height:240px}.people-intro{gap:45px;grid-template-columns:minmax(0,1.2fr) minmax(0,.85fr)}.founder-spread{gap:40px}.founder-profile{display:block}.founder-profile>img{margin-bottom:26px;width:120px;height:120px}.team-table article,.team-table .team-row{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:12px 30px}.team-table p{grid-column:1/3}.care-notes{gap:40px;padding:35px}.faq-layout{grid-template-columns:185px minmax(0,1fr);gap:40px}.faq-layout aside{top:115px}.travel-route{gap:25px}.reservation-layout{gap:45px;grid-template-columns:minmax(0,1fr) minmax(0,.95fr)}.reservation-layout h1{font-size:var(--type-page)}.reservation-summary{padding:27px;top:115px}.reservation-summary h2{font-size:var(--type-section)}.secondary-paths{gap:16px}.price-line.total strong{font-size:var(--type-card)}}
@media(max-width:620px){.editorial-intro{display:flex;flex-direction:column;align-items:stretch;gap:32px;padding-top:35px;padding-bottom:40px}.editorial-intro h1,.stay-intro h1,.people-intro h1,.details-intro h1{font-size:var(--type-page);margin:20px 0 22px}.intro-copy>p{font-size:var(--type-body);line-height:1.8;max-width:100%}.intro-photo img{min-height:0;max-height:none;height:auto;aspect-ratio:5/4}.intro-photo figcaption{font-size:var(--type-caption);gap:15px}.program-layout{padding-top:20px}.day-tabs{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;margin-bottom:28px;padding-bottom:3px}.day-tab{flex:0 0 78px;min-height:66px;padding:11px 8px 12px}.day-tab strong{font-size:var(--type-caption)}.day-tab>span{margin-bottom:7px}.day-tab[aria-selected="true"]{padding-left:8px}.day-panel{display:flex;flex-direction:column;gap:27px}.day-panel>div,.day-panel>figure{width:100%;min-width:0}.day-panel h2,.day-panel h3{font-size:var(--type-section);margin:13px 0 18px}.day-panel p{font-size:var(--type-body);line-height:1.85}.day-panel li{font-size:var(--type-caption);padding:11px 0}.day-panel figure img{aspect-ratio:4/3}.day-panel figcaption{font-size:var(--type-caption)}.participation-band{display:block;padding:27px 23px;margin-top:38px}.participation-band h2,.participation-band h3{font-size:var(--type-section);margin-bottom:17px}.participation-band p{font-size:var(--type-body)}.stay-intro,.people-intro{display:block;padding-top:35px;padding-bottom:40px}.stay-intro>p,.people-intro>p{font-size:var(--type-body);max-width:none;margin:22px 0 0}.accommodation{grid-template-columns:24px minmax(0,1fr);gap:14px 14px;padding:30px 0}.accommodation h2{font-size:var(--type-section);margin:12px 0 19px}.accommodation p{font-size:var(--type-body)}.amenities{grid-column:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 15px;margin-top:7px}.amenities li{font-size:var(--type-caption);padding:10px 0}.amenities li:first-child{padding-top:10px}.accommodation .price-block{grid-column:2;display:flex;gap:8px;align-items:flex-start;margin-top:14px}.price-block strong{font-size:var(--type-section)}.price-block .button,.price-block .text-link{margin-top:13px;align-self:flex-start}.inclusions{display:block}.inclusions>div+div{margin-top:45px}.inclusions h2,.inclusions h3{font-size:var(--type-section);margin:15px 0 22px}.inclusions li{font-size:var(--type-caption);padding:11px 0}.inclusions p{font-size:var(--type-body)}.gallery-strip{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px 12px}.gallery-strip figure:first-child{grid-column:1/3}.gallery-strip img{height:auto;aspect-ratio:4/5}.gallery-strip figure:first-child img{aspect-ratio:3/2}.gallery-strip figcaption{font-size:var(--type-caption)}.founder-spread{display:block}.founder-profile{display:grid;grid-template-columns:90px minmax(0,1fr);gap:20px;padding-top:24px;margin-bottom:35px}.founder-profile>img{width:90px;height:90px;margin:0}.founder-profile h2{font-size:var(--type-section)}.founder-profile p{font-size:var(--type-body)}.team-table article,.team-table .team-row{display:block;padding:23px 0}.team-table h3{font-size:var(--type-card)}.team-table .role{font-size:var(--type-caption);margin-top:6px}.team-table p{font-size:var(--type-body);margin-top:13px}.care-notes{display:block;padding:29px 24px}.care-notes>div+div{margin-top:35px}.care-notes h2{font-size:var(--type-section)}.care-notes h3{font-size:var(--type-card)}.care-notes p{font-size:var(--type-body)}.details-intro{padding-top:35px;padding-bottom:32px}.details-intro>p{font-size:var(--type-body)}.faq-layout{display:block}.faq-layout aside{position:static;display:flex;flex-direction:row;flex-wrap:wrap;gap:8px 20px;margin-bottom:35px;padding-bottom:15px;border-bottom:1px solid var(--line)}.faq-layout aside h3{flex-basis:100%;margin-bottom:5px;font-size:var(--type-card)}.faq-layout aside a{border:0;font-size:var(--type-caption);padding:5px 0}.faq-group{scroll-margin-top:120px;margin-bottom:40px}.faq-group h2{font-size:var(--type-section);line-height:1.12;margin-bottom:22px}.faq-group summary{font-size:var(--type-body);line-height:1.7;padding:17px 0;gap:18px}.faq-group summary:after{font-size:var(--type-body)}.faq-group details p{font-size:var(--type-body);line-height:1.85;padding:0 20px 22px 0}.travel-route{display:block;padding-top:3px;border-top:0}.travel-route article{padding:24px 0;border-top:1px solid var(--line)}.travel-route h3,.travel-route h4{font-size:var(--type-card);margin:13px 0}.travel-route p{font-size:var(--type-body)}.reservation-layout{display:flex;flex-direction:column;gap:38px;padding-top:35px;padding-bottom:55px}.reservation-layout>div,.reservation-layout>aside{width:100%}.reservation-layout h1{font-size:var(--type-page);margin:20px 0 22px}.reservation-layout .lede{font-size:var(--type-body);line-height:1.8}.reservation-steps{margin-top:30px}.reservation-steps>div,.reservation-steps>li{gap:15px;grid-template-columns:24px minmax(0,1fr);padding:19px 0}.reservation-steps h3{font-size:var(--type-card)}.reservation-steps p{font-size:var(--type-body)}.reservation-summary{position:static;padding:28px 25px}.reservation-summary h2{font-size:var(--type-section)}.choice-field select{font-size:var(--type-caption)}.price-line{gap:15px}.price-line.total strong{font-size:var(--type-section)}.secondary-paths{margin-top:24px;gap:20px}.secondary-paths button{font-size:var(--type-caption)}.invite-shell{padding:34px var(--gutter) 45px;min-height:calc(100svh - 32px)}.invite-shell>.brand{margin-bottom:34px}.invite-shell h1{font-size:var(--type-page);margin:18px 0 22px}.invite-shell>.intro{font-size:var(--type-caption)}.envelope{min-height:215px;margin:8px 0 18px}.envelope-title{font-size:var(--type-caption);bottom:26px}.seal{width:49px;height:49px;font-size:var(--type-card)}.invite-hint{font-size:var(--type-caption);margin-bottom:24px}.invitation-card{padding:32px 23px;margin-top:10px}.invitation-card h2{font-size:var(--type-section)}.invitation-card p{font-size:var(--type-body)}.invite-details{font-size:var(--type-caption);line-height:2.2}.invite-return{font-size:var(--type-caption)}}
@media(max-width:380px){.editorial-intro h1,.stay-intro h1,.people-intro h1,.details-intro h1,.reservation-layout h1{font-size:var(--type-page)}.founder-profile{grid-template-columns:75px minmax(0,1fr);gap:16px}.founder-profile>img{width:75px;height:75px}.founder-profile h2{font-size:var(--type-section)}.reservation-summary{padding:24px 20px}.reservation-summary h2{font-size:var(--type-section)}.price-line{font-size:var(--type-caption)}.price-line.total strong{font-size:var(--type-card)}.amenities{display:block}.invite-shell h1{font-size:var(--type-page)}.envelope{min-height:190px}}
@media(prefers-reduced-motion:reduce){.envelope,.day-tab{transition:none}.reveal-card{animation:none}}

/* Exact compositions for the second edition markup. */
.editorial-intro .intro-photo{align-self:center}
.editorial-intro .intro-photo img{min-height:0;height:auto;aspect-ratio:1.12;object-position:center}
.editorial-intro .intro-photo figcaption{display:block}
.itinerary-section{scroll-margin-top:105px}
.program-layout{grid-template-columns:255px minmax(0,1fr);gap:60px}
.day-tab{grid-template-columns:41px minmax(0,1fr) 15px;gap:14px;padding-top:17px;padding-bottom:17px}
.day-tab .tab-date{font-family:var(--serif);font-size:var(--type-card);line-height:1.05;font-weight:400;letter-spacing:-.03em}
.tab-date small{display:block;font:var(--type-caption)/1.6 var(--sans);letter-spacing:.08em;margin-top:4px}
.day-tab .tab-label{font-size:var(--type-caption);line-height:1.5;color:var(--ink)}
.tab-label small{display:block;font-size:var(--type-caption);line-height:1.6;color:var(--muted);margin-bottom:4px}
.day-tab .tab-arrow{font-size:var(--type-body);text-align:right;opacity:0}
.day-tab[aria-selected="true"] .tab-label{color:var(--rust)}
.day-tab[aria-selected="true"] .tab-arrow{opacity:1}
.day-panel{grid-template-columns:minmax(0,.95fr) minmax(0,1fr);gap:34px}
.day-panel .day-photo img{aspect-ratio:4/5;min-height:390px;object-fit:cover}
.day-content{padding-top:7px;min-width:0}
.day-panel .activity-list{margin-top:22px}
.day-panel .day-alternative{font-size:var(--type-caption);line-height:1.85;margin:20px 0 0;padding-top:14px;border-top:1px solid var(--line)}
.participation-band{display:block;margin:0;padding:66px 0;background:var(--ink);color:var(--paper)}
.participation-band>.wrap{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.5fr);gap:70px;align-items:start}
.participation-band .kicker{color:#b5c1b6;padding-top:8px}
.participation-band h2{font-size:var(--type-section);letter-spacing:-.025em;margin:0 0 24px;line-height:1.03}
.participation-band p{max-width:630px;color:#c6ccc4;font-size:var(--type-body);line-height:1.85}
.participation-band p+p{margin-top:13px}
.participation-band .button{margin-top:26px}
.stay-intro>div:last-child{max-width:410px;padding-bottom:7px}
.stay-intro>div:last-child p{font-size:var(--type-body);line-height:1.85;margin:0 0 23px;color:var(--muted)}
.stay-landscape{margin-top:0;margin-bottom:0}
.stay-landscape img{width:100%;height:clamp(290px,34vw,470px);object-fit:cover;object-position:50% 65%;display:block}
.stay-landscape figcaption{font-size:var(--type-caption);line-height:1.7;color:var(--muted);margin-top:12px}
.accommodation-list{border-top:0;padding-top:65px}
.accommodation:first-child{border-top:1px solid var(--line)}
.accommodation{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) 190px;gap:clamp(30px,4vw,65px)}
.accommodation .capacity{display:block;margin-top:22px;font-size:var(--type-caption);line-height:1.6;color:var(--rust)}
.price-block>span{font-size:var(--type-caption);color:var(--muted);margin-bottom:3px}
.accommodation-list>.small-note{margin-top:20px}
.inclusions{display:block;padding:75px 0;background:#e9ebe4}
.inclusions>.wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:110px}
.inclusions h2{font-size:var(--type-section);line-height:1.05;margin-bottom:30px}
.people-intro{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:0 80px}
.people-intro>.kicker{grid-column:1/-1}
.people-intro>h1{grid-column:1;margin-bottom:0}
.people-intro>p{grid-column:2;align-self:end;margin:0 0 3px}
.founder-spread{gap:65px}
.founder-profile{display:block;padding:0;border-top:0;margin:0}
.portrait-field{display:flex;align-items:center;justify-content:center;width:100%;height:350px;padding:30px;background:#e9ebe4}
.portrait-field img{width:250px;height:250px;max-width:100%;object-fit:contain}
.founder-profile-copy{padding:28px 0 0;max-width:470px}
.founder-profile h2{font-size:var(--type-section);margin:14px 0 20px}
.founder-profile p{font-size:var(--type-body);line-height:1.85}
.team-table article{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:50px;align-items:center}
.team-table p{font-size:var(--type-body);line-height:1.8;color:var(--muted)}
.care-notes{display:block;padding:70px 0}
.care-notes>.wrap{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:105px}
.care-notes h2{font-size:var(--type-section)}
.care-notes>.wrap>div:first-child>p{max-width:440px}
.care-notes .text-link{margin-top:23px}
.care-points{padding-top:6px}
.details-intro{max-width:none;padding-bottom:62px}
.details-intro h1{font-size:var(--type-page)}
.details-intro>p{max-width:600px}
.faq-nav{align-self:start;position:sticky;top:135px;display:flex;flex-direction:column}
.faq-nav a{display:block;padding:17px 0;border-top:1px solid var(--line);font-size:var(--type-caption);line-height:1.7;text-decoration:none;color:var(--muted)}
.faq-nav a:last-child{border-bottom:1px solid var(--line)}
.faq-nav a:hover{color:var(--rust)}
.faq-group summary:after{display:none}
.faq-group summary>span{font-size:var(--type-body);font-weight:400;line-height:1;flex:none;width:20px;color:var(--rust);text-align:center;transition:transform .18s}
.faq-group details[open] summary>span{transform:rotate(45deg)}
.travel-route{grid-template-columns:minmax(0,.85fr) minmax(0,1.2fr);gap:100px;border-top:0;padding-top:95px}
.travel-route h2{font-family:var(--serif);font-weight:400;font-size:var(--type-section);letter-spacing:-.025em;line-height:1.04;margin:24px 0 25px}
.travel-route>div>p{max-width:390px}
.travel-route ol{margin:0;padding:0;list-style:none;min-width:0}
.travel-route li{display:grid;grid-template-columns:38px minmax(0,1fr);gap:24px;padding:24px 0;border-top:1px solid var(--line)}
.travel-route li:first-child{padding-top:24px}
.travel-route li>span{font-size:var(--type-caption);line-height:1.6;padding-top:6px;color:var(--rust)}
.travel-route li h3{font-size:var(--type-card);margin:0 0 15px}
.reservation-layout{padding-top:65px}
.reservation-lede{font-size:var(--type-body);line-height:1.85;color:var(--muted);max-width:450px}
.reservation-steps{padding:0;list-style:none}
.reservation-steps>li>span{font-size:var(--type-caption);line-height:1.6;color:var(--rust);padding-top:4px}
.reservation-summary{top:120px}
.toggle-field small{display:block;color:var(--muted);font-size:var(--type-caption);line-height:1.7;margin-top:3px}
.reservation-deposit{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 20px;border-top:1px solid #b5bbb0;margin-top:25px;padding-top:23px}
.reservation-deposit>span{font-size:var(--type-caption);line-height:1.6;align-self:center}
.reservation-deposit strong{font-family:var(--serif);font-size:var(--type-section);letter-spacing:-.02em;font-weight:400;line-height:1}
.reservation-deposit p{grid-column:1/-1;font-size:var(--type-body);color:var(--muted);line-height:1.8;margin:0 0 6px}
.reservation-summary>.demo-status{margin:26px 0 0}
.reservation-summary>.demo-status .text-link{font-size:var(--type-body)}
.invite-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100svh;align-items:stretch;justify-content:normal;padding:0;background:var(--paper);text-align:left}
.invite-image{position:relative;min-width:0;min-height:760px}
.invite-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.invite-image:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#17201c75);pointer-events:none}
.invite-image>span{position:absolute;left:45px;bottom:42px;z-index:1;color:var(--paper);font-size:var(--type-caption);letter-spacing:.06em}
.invite-letter{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:60px clamp(40px,6vw,100px);min-width:0}
.invite-letter>.brand{margin:0 0 80px}
.invite-letter h1{font-size:var(--type-page);line-height:1;white-space:nowrap;margin:22px 0 25px}
.invite-letter>p{font-size:var(--type-body);line-height:1.9;color:var(--muted);max-width:360px;margin:0}
.invite-event{font-size:var(--type-caption);line-height:1.9;margin:30px 0;color:var(--ink)}
.invite-letter .envelope{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:0;width:100%;margin:10px 0 15px;padding:19px 0;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;box-shadow:none;text-align:left;font-size:var(--type-caption)}
.invite-letter .envelope:before{display:none}
.invite-letter .envelope:hover{transform:none;background:#e9ebe450;box-shadow:none}
.invite-seal{display:flex;align-items:center;justify-content:center;width:39px;height:39px;background:var(--rust);color:var(--paper);border-radius:50%;font-size:var(--type-body);flex:none}
.invite-letter #invite-hint{font-size:var(--type-caption)}
.invite-direct{font-size:var(--type-caption);color:var(--muted);text-underline-offset:5px;margin-top:33px;line-height:1.65}
.invite-letter .invitation-card{border:0;border-top:1px solid var(--line);background:transparent;width:100%;padding:25px 0 0;margin:13px 0 0;text-align:left}
.invite-letter .invitation-card h2{font-size:var(--type-section);margin:0 0 22px}
.invite-letter .invitation-card p{font-size:var(--type-body);margin:0 0 24px;max-width:100%}
.invite-letter .invitation-card .small-note{font-size:var(--type-caption);margin:20px 0 0}
@media(max-width:1100px){.program-layout{grid-template-columns:215px minmax(0,1fr);gap:38px}.day-tab{gap:10px;grid-template-columns:34px minmax(0,1fr) 12px}.day-tab .tab-label{font-size:var(--type-caption)}.day-panel{gap:26px}.day-panel .day-photo img{min-height:340px}.accommodation{gap:35px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) 170px}.inclusions>.wrap{gap:75px}.founder-spread{gap:45px}.portrait-field{height:310px}.care-notes>.wrap{gap:65px}.travel-route{gap:70px}.invite-letter{padding:50px 45px}.invite-letter>.brand{margin-bottom:60px}}
@media(max-width:900px){.program-layout{display:block}.day-tabs{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;padding-bottom:4px}.day-tab{display:grid;grid-template-columns:31px minmax(0,1fr);flex:0 0 157px;gap:11px;text-align:left;padding:12px 10px 16px;min-height:88px}.day-tab[aria-selected="true"]{padding-left:10px}.day-tab .tab-date{font-size:var(--type-card);margin:0}.day-tab .tab-label{margin:0;font-size:var(--type-caption);line-height:1.5}.day-tab .tab-arrow{display:none}.tab-label small{font-size:var(--type-caption)}.tab-date small{font-size:var(--type-caption)}.day-panel{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1fr);gap:30px}.day-panel .day-photo img{min-height:330px;aspect-ratio:4/5}.day-panel h3{font-size:var(--type-card)}.participation-band>.wrap{gap:45px;grid-template-columns:minmax(0,.7fr) minmax(0,1.5fr)}.participation-band h2{font-size:var(--type-section)}.stay-intro>div:last-child{padding:0}.accommodation{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:26px 42px}.accommodation .price-block{grid-column:1/3;display:grid;grid-template-columns:1fr 1fr;gap:7px 30px;align-items:center}.price-block>span{grid-column:1;grid-row:1}.price-block strong{grid-column:1;grid-row:2}.price-block small{grid-column:1;grid-row:3}.price-block .button{grid-column:2;grid-row:1/4}.inclusions>.wrap{gap:48px}.inclusions h2{font-size:var(--type-section)}.people-intro{gap:0 45px}.people-intro h1{font-size:var(--type-page)}.founder-spread{gap:35px}.portrait-field{height:280px;padding:28px}.portrait-field img{width:220px;height:220px}.founder-profile h2{font-size:var(--type-section)}.team-table article{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.team-table p{grid-column:auto}.care-notes>.wrap{gap:42px}.care-notes h2{font-size:var(--type-section)}.faq-nav{top:115px}.faq-nav a{font-size:var(--type-caption)}.travel-route{grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);gap:40px;padding-top:75px}.travel-route h2{font-size:var(--type-section)}.travel-route li{grid-template-columns:25px minmax(0,1fr);gap:17px}.travel-route li h3{font-size:var(--type-card)}.reservation-lede{font-size:var(--type-body)}.invite-image{min-height:700px}.invite-image>span{left:28px;bottom:32px}.invite-letter{padding:44px 30px}.invite-letter>.brand{margin-bottom:50px}.invite-letter h1{font-size:var(--type-page)}.invite-letter>p{font-size:var(--type-body)}.invite-letter .invitation-card h2{font-size:var(--type-section)}}
@media(max-width:620px){.editorial-intro .intro-photo img{aspect-ratio:5/4}.itinerary-section{scroll-margin-top:95px}.day-tabs{margin-bottom:27px}.day-tab{flex-basis:153px;padding:12px 9px 14px;min-height:84px}.day-tab[aria-selected="true"]{padding-left:9px}.day-panel{display:flex;flex-direction:column;gap:26px}.day-content{order:-1;padding:0}.day-panel h3{font-size:var(--type-card);margin:13px 0 18px}.day-panel .day-photo img{min-height:0;aspect-ratio:4/3}.day-panel .day-alternative{font-size:var(--type-caption)}.participation-band{padding:45px 0;margin:0}.participation-band>.wrap{display:block}.participation-band .kicker{display:block;padding:0;margin-bottom:24px}.participation-band h2{font-size:var(--type-section);line-height:1.04;margin-bottom:23px}.participation-band p{font-size:var(--type-body);line-height:1.85}.participation-band .button{margin-top:24px}.stay-intro>div:last-child{max-width:none;margin-top:23px}.stay-intro>div:last-child p{font-size:var(--type-body)}.stay-landscape img{height:270px;object-position:50% 63%}.stay-landscape figcaption{font-size:var(--type-caption);line-height:1.7}.accommodation-list{padding-top:40px}.accommodation{display:block;padding:30px 0}.accommodation h2{font-size:var(--type-section)}.accommodation .capacity{margin-top:20px}.accommodation .amenities{margin-top:25px}.accommodation .price-block{display:flex;flex-direction:column;align-items:flex-start;margin-top:26px;gap:8px}.price-block .button{margin-top:16px}.accommodation-list>.small-note{font-size:var(--type-caption)}.inclusions{padding:48px 0}.inclusions>.wrap{display:block}.inclusions>.wrap>div+div{margin-top:45px}.inclusions h2{font-size:var(--type-section);margin-bottom:25px}.people-intro{display:block;padding-bottom:37px}.people-intro h1{font-size:var(--type-page);margin-bottom:23px}.people-intro>p{font-size:var(--type-body);margin:0}.founder-spread{display:block}.founder-profile{display:block;margin:0 0 40px}.founder-profile:last-child{margin-bottom:0}.portrait-field{height:290px;padding:30px}.portrait-field img{width:230px;height:230px}.founder-profile-copy{padding-top:24px}.founder-profile h2{font-size:var(--type-section);margin:13px 0 17px}.founder-profile p{font-size:var(--type-body);line-height:1.85}.team-table article{display:block;padding:22px 0}.team-table p{font-size:var(--type-body);margin-top:9px}.care-notes{padding:47px 0}.care-notes>.wrap{display:block}.care-notes>.wrap>div+div{margin-top:35px}.care-notes h2{font-size:var(--type-section);margin-bottom:24px}.care-notes p{font-size:var(--type-body)}.care-notes .text-link{margin-top:17px}.details-intro{padding-bottom:32px}.details-intro h1{font-size:var(--type-page)}.faq-nav{position:static;flex-direction:row;flex-wrap:wrap;gap:9px 20px;padding:0 0 25px;margin-bottom:35px;border-bottom:1px solid var(--line)}.faq-nav a,.faq-nav a:last-child{font-size:var(--type-caption);padding:0;border:0;line-height:1.75;text-decoration:underline;text-underline-offset:4px}.faq-group summary>span{font-size:var(--type-body)}.travel-route{display:block;padding-top:60px}.travel-route h2{font-size:var(--type-section);margin-top:20px}.travel-route>div>p{max-width:none}.travel-route ol{margin-top:30px}.travel-route li{padding:23px 0;grid-template-columns:24px minmax(0,1fr);gap:19px}.travel-route li h3{font-size:var(--type-card)}.reservation-layout{padding-top:35px}.reservation-lede{font-size:var(--type-body)}.reservation-steps>li>span{font-size:var(--type-caption)}.toggle-field small{font-size:var(--type-caption)}.reservation-deposit{margin-top:23px;padding-top:22px}.reservation-deposit strong{font-size:var(--type-card)}.invite-shell{display:flex;flex-direction:column;padding:0;min-height:100svh;justify-content:flex-start}.invite-image{min-height:0;flex:none;width:100%;height:210px}.invite-image img{object-position:50% 44%}.invite-image>span{left:24px;bottom:21px;font-size:var(--type-caption)}.invite-letter{padding:34px var(--gutter) 55px;align-items:flex-start;justify-content:flex-start}.invite-letter>.brand{margin:0 0 35px}.invite-letter h1{font-size:var(--type-page);margin:18px 0 23px;white-space:normal}.invite-letter>p{font-size:var(--type-body);max-width:100%}.invite-event{font-size:var(--type-caption);line-height:1.9;margin:24px 0}.invite-letter .envelope{padding:16px 0;font-size:var(--type-caption);margin-top:4px}.invite-seal{width:37px;height:37px;font-size:var(--type-body)}.invite-letter #invite-hint{font-size:var(--type-caption)}.invite-direct{font-size:var(--type-caption);margin-top:28px}.invite-letter .invitation-card{padding-top:25px;margin-top:10px}.invite-letter .invitation-card h2{font-size:var(--type-section)}.invite-letter .invitation-card p{font-size:var(--type-body)}.invite-letter .invitation-card .small-note{font-size:var(--type-caption)}}
@media(max-width:380px){.people-intro h1,.details-intro h1{font-size:var(--type-page)}.day-panel h3{font-size:var(--type-card)}.accommodation h2{font-size:var(--type-section)}.portrait-field{height:255px}.portrait-field img{width:200px;height:200px}.founder-profile h2{font-size:var(--type-section)}.invite-letter h1{font-size:var(--type-page)}.invite-letter .invitation-card h2{font-size:var(--type-section)}.invite-image{height:180px}}
.invite-letter .envelope[hidden],.invitation-card[hidden],.demo-status[hidden]{display:none!important}
