:root{--ink:#193f3b;--paper:#f7f5ef;--sand:#ead7ae;--muted:#52645d;--line:#d7dcd2;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:15px;line-height:1.8}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;object-fit:cover}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #b46a34;outline-offset:6px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.045em;line-height:1.08}h2{font-size:clamp(42px,4.6vw,66px)}h2 em{font-weight:400}h3{font-size:32px}em{font-family:var(--serif)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip{position:fixed;z-index:100;top:-100px;left:16px;background:var(--paper);padding:12px}.skip:focus{top:12px}.masthead{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:28px;background:#133a37;color:#fff}.wordmark{display:flex;align-items:center;gap:12px;flex-shrink:0}.wordmark img{width:57px;height:57px;object-fit:contain}.wordmark>span{font:26px/1.2 var(--serif);letter-spacing:-.7px}.wordmark small{display:block;font:8px/2.3 Manrope,sans-serif;letter-spacing:3.1px;margin-top:4px}.masthead nav{display:flex;align-items:center;gap:28px;font-size:12px}.masthead nav>a{padding:10px 0}.masthead nav>a:hover,.masthead nav>[aria-current]{color:var(--sand)}.masthead nav>[aria-current]{border-bottom:1px solid var(--sand)}.masthead .nav-cta{border:1px solid #879c8f;padding:12px 19px;margin-left:10px}.nav-cta span{margin-left:18px}.menu-toggle{display:none}.opening{position:relative;min-height:700px;height:calc(100svh - 100px);max-height:980px;color:#fff;isolation:isolate;background:#164c57}.opening-photo,.opening-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.opening-photo{object-position:center 55%}.opening-shade{z-index:-1;background:linear-gradient(90deg,rgba(5,34,39,.76),rgba(5,34,39,.38) 48%,rgba(5,34,39,.03) 80%),linear-gradient(0deg,rgba(5,34,39,.78),transparent 30%)}.opening-content{padding:104px 7% 150px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2.3px;text-transform:uppercase;line-height:1.6}.opening .eyebrow{display:flex;align-items:center;gap:16px;color:#f2e3c3}.tiny-line{width:36px;height:1px;background:currentColor}.opening h1{font-size:clamp(65px,7.6vw,112px);line-height:1.01;margin:27px 0 27px;max-width:950px;letter-spacing:-5px}.opening h1 em{color:#e9d3a7;font-weight:400}.opening-intro{font-size:15px;line-height:1.9;color:#f8f6ed;margin-bottom:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;padding:19px 27px;font-size:12px;font-weight:700;transition:background .2s,transform .2s}.button-sand{background:var(--sand);color:#143936}.button-sand:hover{background:#f8e8c8;transform:translateY(-3px)}.button span[aria-hidden]{font-size:22px;line-height:1}.opening-bottom{position:absolute;bottom:32px;left:7%;right:7%;display:flex;align-items:end;justify-content:space-between;font-size:11px;line-height:1.8}.opening-bottom strong{font-weight:400;color:var(--sand)}.opening-bottom>a{font-size:11px;border-bottom:1px solid #afbbb0;padding-bottom:8px}.opening-bottom>a span{margin-left:30px}.image-note{font-size:8px;letter-spacing:1.7px;text-align:right}.promise-bar{padding:29px 7%;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px}.promise-bar>span{font:19px var(--serif)}.promise-bar>div{display:flex;align-items:center;gap:23px;font-size:8px;letter-spacing:1.8px}.promise-bar i{font-size:19px;font-style:normal;color:#957e4e}.section-wrap{max-width:1440px;margin:auto;padding:105px 7%}.section-top{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:45px}.section-top .eyebrow,.personal .eyebrow{margin-bottom:23px;color:#556d5f}.section-aside{max-width:355px;font-size:13px;color:var(--muted);padding-bottom:5px}.text-link{display:inline-flex;align-items:center;gap:30px;font-size:11px;font-weight:700;border-bottom:1px solid #809084;padding:8px 0;color:var(--ink);margin-top:20px}.text-link span{font-size:20px}.text-link:hover{color:#8a592b;border-color:#8a592b}.experience-grid{display:grid;grid-template-columns:1.18fr 1fr 1fr;gap:22px}.experience-card{position:relative;isolation:isolate;height:460px;color:#fff;overflow:hidden;display:flex;align-items:end;padding:28px}.experience-card img{position:absolute;inset:0;width:100%;height:100%;z-index:-2;transition:transform .65s}.experience-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,28,29,.92),rgba(3,28,29,.3) 65%,transparent);z-index:-1}.experience-card:hover img{transform:scale(1.045)}.experience-card .eyebrow{font-size:8px;letter-spacing:1.8px;color:#f2e5cb}.experience-card h3{margin:15px 0 27px;font-size:clamp(25px,2.55vw,38px);line-height:1.12;letter-spacing:-1px}.card-content{width:100%}.card-link{border-top:1px solid #819590;display:flex;justify-content:space-between;align-items:center;padding-top:17px;font-size:10px}.card-link b{font-size:22px;font-weight:400}.personal{background:#eaece3}.personal-inner{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center;padding-top:105px;padding-bottom:105px}.personal-art{position:relative;padding:0 40px 55px 0;min-width:0}.personal-backdrop{width:100%;height:530px;object-position:center;border-radius:48% 48% 0 0}.family-photo{position:absolute;bottom:0;right:-15px;width:230px;padding:14px 14px 20px;background:#fcfaf3;transform:rotate(6deg);box-shadow:0 8px 28px #193f3b20}.family-photo img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:50%}.family-photo figcaption{font:italic 13px/1.6 var(--serif);text-align:center;padding-top:14px;white-space:nowrap}.postmark{position:absolute;left:-26px;bottom:13px;border:1px solid #7d9387;border-radius:50%;height:122px;width:122px;display:flex;flex-direction:column;justify-content:center;text-align:center;font-size:8px;letter-spacing:1px;line-height:2.5;transform:rotate(-15deg);background:#eaece3}.personal-copy h2{margin-bottom:26px}.personal-copy .lead{font:24px/1.45 var(--serif);margin-bottom:20px;color:var(--ink)}.personal-copy>p:not(.eyebrow):not(.lead){font-size:13px;line-height:1.9;color:#4a5c53;margin-top:14px;max-width:420px}.signature{font:italic 34px var(--serif);margin-top:27px}.signature span{font-size:25px;color:#8c713d}.trip-list{border-top:1px solid var(--line)}.trip{display:grid;grid-template-columns:45px 1fr 155px 135px;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding:30px 0;transition:padding .2s,background .2s}.trip:hover{background:#eeeee4;padding-left:12px;padding-right:12px}.trip-no{font:italic 20px var(--serif);color:#728071}.trip .eyebrow{font-size:8px;letter-spacing:1.6px;color:#52685b}.trip h3{font-size:32px;margin-top:8px}.trip-date{font-size:11px}.trip-action{font-size:10px;text-align:right}.trip-action b{font-size:23px;margin-left:20px;font-weight:400}.trip-footnote{font-size:10px;color:var(--muted);margin-top:20px}.testimonial{text-align:center;background:#eaece3;padding:78px 20px 85px}.testimonial .eyebrow{color:#546955}.quote-mark{display:block;font:80px/.9 var(--serif);color:#927b4e;margin-top:30px;height:50px}.testimonial blockquote{font:36px/1.4 var(--serif);max-width:860px;margin:10px auto 27px;letter-spacing:-.7px}.reviewer{font-size:8px;letter-spacing:1.6px}.reviewer span{padding:0 15px;color:#78856e}.testimonial .text-link{margin-top:23px}.closing{position:relative;isolation:isolate;text-align:center;overflow:hidden;color:#fff;background:#153b39}.closing>img{position:absolute;inset:0;width:100%;height:100%;z-index:-2;object-position:center 68%;transform:scale(1.05)}.closing:after{content:'';position:absolute;inset:0;background:#092e35c9;z-index:-1}.closing-inner{padding:92px 20px 85px}.closing .eyebrow{color:#ead7ae;font-size:9px}.closing h2{font-size:clamp(50px,6.4vw,86px);margin:25px 0 35px}.closing h2 em{color:#ead7ae}.closing-inner>p:last-child{font-size:10px;color:#e5e9dc;margin-top:18px}.concept-footer{background:#113632;color:#e7ebdf;padding:60px 7% 23px}.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr .6fr;gap:30px;padding-bottom:45px}.footer-top>.wordmark{align-self:start}.footer-top>p{font:italic 23px/1.5 var(--serif);color:var(--sand)}.footer-top>div{display:flex;flex-direction:column;align-items:start;gap:7px;font-size:11px}.footer-top a:hover{color:var(--sand)}.footer-bottom{border-top:1px solid #47645a;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:9px}.footer-bottom a{text-decoration:underline;text-underline-offset:3px}.registrations{font-size:8px;color:#bac9bd;margin-top:22px;line-height:1.8}
@media(min-width:1600px){.opening-content{padding-top:150px}}@media(max-width:1150px){.masthead{padding:0 4%;gap:15px}.masthead nav{gap:17px}.wordmark>span{font-size:22px}.masthead .nav-cta{margin-left:0;padding:10px}.promise-bar>div{gap:12px;font-size:7px}.experience-card{padding:22px;height:420px}.footer-top{grid-template-columns:1.3fr .8fr 1fr}.footer-top>div:last-child{display:none}}
@media(max-width:1000px){.masthead{height:auto;min-height:86px;flex-wrap:wrap;padding:14px 5%}.menu-toggle{display:flex;gap:18px;align-items:center;background:none;color:#fff;border:1px solid #80988c;padding:9px 14px;font-size:12px}.masthead nav{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:0;padding-bottom:10px}.masthead nav.is-open{display:flex}.masthead nav>a{padding:14px 4px;border-bottom:1px solid #486259}.masthead .nav-cta{margin-top:10px;padding:14px}.opening{height:auto;min-height:740px}.opening-content{padding-top:110px}.opening h1{font-size:80px;letter-spacing:-3px}.promise-bar{flex-direction:column;padding:25px 5%;gap:15px}.section-wrap{padding:80px 6%}.personal-inner{gap:8%}.personal-backdrop{height:470px}.family-photo{width:190px;right:-10px}.family-photo figcaption{font-size:10px}.postmark{width:95px;height:95px;font-size:6px;left:-10px}.trip{grid-template-columns:30px 1fr 130px}.trip-action{display:none}.experience-grid{gap:14px}.experience-card h3{font-size:29px}.experience-card .eyebrow{letter-spacing:1px;font-size:7px}.card-link{font-size:9px}.footer-top{grid-template-columns:1fr 1fr}.footer-top>p{display:none}}
@media(max-width:650px){.masthead .wordmark img{height:48px;width:48px}.wordmark>span{font-size:23px}.wordmark small{font-size:7px;letter-spacing:2.8px}.opening{min-height:740px}.opening-photo{object-position:65% center}.opening-shade{background:linear-gradient(90deg,#06292bc4,#06292b52),linear-gradient(0deg,#06292be6,transparent 45%)}.opening-content{padding:100px 7% 180px}.opening .eyebrow{font-size:8px;letter-spacing:1.6px;gap:12px}.tiny-line{width:18px}.opening h1{font-size:clamp(52px,11.5vw,74px);letter-spacing:-2.5px;line-height:1.09;margin:29px 0}.opening-intro{font-size:12px;line-height:1.9}.opening-intro br{display:none}.button{padding:18px 22px;font-size:11px;gap:25px}.opening-bottom{bottom:29px;font-size:10px}.opening-bottom>a{font-size:9px}.opening-bottom>a span{margin-left:13px}.image-note{display:none}.promise-bar>span{font-size:18px;text-align:center}.promise-bar>div{font-size:6px;letter-spacing:.7px;gap:11px}.promise-bar i{font-size:13px}.section-wrap{padding:65px 7%}.section-top{display:block;margin-bottom:32px}.section-top .eyebrow{margin-bottom:20px}.section-aside{margin-top:22px;font-size:12px}.section-aside br{display:none}.text-link{margin-top:12px}.experience-grid{grid-template-columns:1fr;gap:20px}.experience-card{height:440px;padding:30px}.experience-card h3{font-size:40px}.experience-card .eyebrow{font-size:9px}.card-link{font-size:11px}.personal-inner{display:flex;flex-direction:column;gap:50px}.personal-art{width:100%;padding-right:40px;padding-bottom:50px}.personal-backdrop{height:425px}.family-photo{width:195px;right:0}.postmark{left:-8px;bottom:5px}.personal-copy{width:100%}.personal-copy .lead{font-size:23px}.personal-copy>p:not(.eyebrow):not(.lead){font-size:13px}.trip{grid-template-columns:24px 1fr;gap:12px;padding:25px 0}.trip-no{grid-row:1/3;align-self:start;padding-top:14px}.trip-date{grid-column:2;font-size:10px}.trip h3{font-size:27px}.trip .eyebrow{font-size:7px;letter-spacing:1.1px}.trip-footnote{font-size:9px}.testimonial{padding:60px 7%}.testimonial blockquote{font-size:29px}.reviewer{font-size:7px;letter-spacing:1px}.reviewer span{padding:0 7px}.closing-inner{padding:75px 7%}.closing .eyebrow{font-size:8px;letter-spacing:1.3px}.closing h2{font-size:52px}.concept-footer{padding:45px 7% 25px}.footer-top{grid-template-columns:1fr;gap:25px;padding-bottom:30px}.footer-bottom{flex-direction:column;gap:12px}.registrations{font-size:7px}.footer-top>div:last-child{display:flex;flex-direction:row;gap:20px}}
.family-photo img{height:auto}.family-photo figcaption{white-space:normal}
@media(max-width:360px){.masthead{gap:10px}.masthead .wordmark{gap:8px}.masthead .wordmark img{width:38px;height:38px}.masthead .wordmark>span{font-size:20px}.masthead .wordmark small{font-size:6px;letter-spacing:2px}.menu-toggle{gap:9px;padding:8px 10px}.opening h1{font-size:48px}.opening-bottom{gap:15px}.opening-bottom>a{font-size:8px}.promise-bar>div{font-size:5.5px;gap:8px}}
/* Phone layouts scale with the available width, including in-app browsers. */
@media(max-width:650px){
  .opening{min-height:0;max-height:none}
  .opening-content{padding:64px 7% 44px}
  .opening h1{font-size:clamp(38px,12vw,70px);letter-spacing:-.045em}
  .opening-intro{font-size:14px}
  .opening-bottom{position:relative;inset:auto;margin:0 7%;padding:24px 0 28px;gap:20px}
  .opening-bottom>a{min-height:44px;display:flex;align-items:center;font-size:10px}
  .promise-bar>div{flex-wrap:wrap;justify-content:center;font-size:8px;gap:8px 12px}
  .section-wrap{padding-block:48px}
  .section-aside,.personal-copy>p:not(.eyebrow):not(.lead){font-size:14px}
  .experience-card{height:clamp(330px,90vw,400px);padding:26px}
  .experience-card h3{font-size:clamp(30px,9vw,40px)}
  .personal-inner{gap:30px}
  .personal-art{width:100%;max-width:400px;padding:0 12% 38px 0}
  .personal-backdrop{height:auto;aspect-ratio:1 / 1.05;border-radius:48% 48% 0 0}
  .family-photo{width:52%;max-width:190px;right:3%;bottom:0;padding:10px 10px 12px;transform:rotate(4deg)}
  .family-photo figcaption{font-size:12px;line-height:1.35;padding-top:10px}
  .postmark{left:0;bottom:4px;width:82px;height:82px;font-size:6px;letter-spacing:.4px;line-height:2.1}
  .personal-copy h2{margin-bottom:20px}
  .personal-copy .eyebrow{margin-bottom:16px}
  .trip .eyebrow{font-size:9px;letter-spacing:1px}
  .trip-date,.trip-footnote{font-size:12px}
  .text-link{font-size:12px;min-height:44px}
  .button{font-size:12px;min-height:48px}
  .menu-toggle{min-height:44px}
  .footer-top>div{font-size:13px;gap:4px}
  .footer-top>div a,.footer-bottom a{display:inline-flex;align-items:center;min-height:44px}
  .footer-top>div:last-child{flex-wrap:wrap;gap:4px 20px}
  .footer-bottom{font-size:11px}
  .registrations{font-size:10px}
}
.footer-connections{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:0 0 20px;font-size:11px}
.footer-connections nav{display:flex;gap:24px;flex-wrap:wrap}
.footer-connections a{display:inline-flex;align-items:center;min-height:44px}
.footer-connections a:hover{color:var(--sand)}
@media(max-width:650px){.footer-connections{flex-direction:column;align-items:flex-start;gap:2px;font-size:12px}.footer-connections nav{gap:20px}}
/* Keep branding and anchor destinations consistent beneath the sticky header. */
html{scroll-padding-top:160px}
.masthead{position:sticky;top:0;z-index:100;height:auto;min-height:144px;padding-block:12px}
.masthead .wordmark img,.concept-footer .wordmark img{width:120px;height:120px;max-width:none;flex-shrink:0}
.concept-footer .wordmark{flex-direction:column;align-items:flex-start;gap:12px}
.opening{height:calc(100svh - 144px)}
.skip{z-index:101}
@media(max-width:1000px){.opening{height:auto}.masthead nav{max-height:calc(100svh - 160px);overflow-y:auto;overscroll-behavior:contain}}
@media(max-width:650px){.masthead .wordmark>span{display:none}}
/* A compact header leaves more room for content on phones and tablets. */
@media(max-width:1000px){
  html{scroll-padding-top:116px}
  .masthead{min-height:100px;padding-block:10px}
  .masthead .wordmark img{width:80px;height:80px}
  .masthead nav{max-height:calc(100svh - 116px)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
