@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--ink:#102f45;--blue:#1b5273;--sand:#e5b87c;--paper:#fff;--muted:#566774;--pale:#f0f5f8;--line:#dce5eb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid #cd7d22;outline-offset:5px}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;line-height:1.02;letter-spacing:-.035em}h1{font-size:clamp(3.6rem,7.1vw,7rem)}h2{font-size:clamp(2.5rem,4.3vw,4.4rem)}h3{font-size:1.45rem;line-height:1.25;letter-spacing:-.035em}em{font-weight:400}p{color:var(--muted)}header{max-width:1600px;margin:auto;padding:25px 5%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{font-size:2rem;font-weight:600;letter-spacing:-.08em;line-height:1;display:inline-block}.brand>span{font-family:Georgia,serif;font-style:italic;color:var(--blue);font-weight:400}.brand small{display:block;font-size:.6rem;letter-spacing:.26em;margin-top:9px;line-height:1.4}nav{display:flex;gap:32px;font-size:.94rem}nav a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:7px}.nav-cta{border-bottom:1px solid var(--ink);padding-bottom:5px;font-size:.94rem}.nav-cta span{margin-left:22px}.wrap{max-width:1320px;padding:0 5%;margin:auto}.hero{display:grid;grid-template-columns:47% 53%;max-width:1600px;margin:auto;min-height:640px}.hero-copy{padding:68px 9% 36px 10.6%;background:var(--ink);color:#fff}.eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.18em;color:var(--blue);line-height:1.6}.hero .eyebrow{color:var(--sand);margin-bottom:30px}.hero h1{margin-bottom:26px;font-size:clamp(3.06rem,6.035vw,5.95rem)}.hero h1 em{color:#b7d6e8}.hero-copy>p:not(.eyebrow){max-width:410px;color:#dce5eb;font-size:1.06rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:16px 23px;background:var(--ink);color:#fff;font-size:.94rem;font-weight:500;min-height:54px;border:1px solid transparent}.button:hover{background:var(--blue)}.hero .button{background:var(--sand);color:var(--ink);margin-top:30px}.hero .button:hover{background:#f0ce9f}.hero-story{display:block;margin-top:18px;font-size:.9rem;text-decoration:underline;text-underline-offset:5px;color:#dce5eb}.hero-locations{font-size:.65rem;letter-spacing:.17em;margin-top:50px;color:#b7c7d2}.hero-locations span{margin:0 9px}.hero-image{position:relative;min-width:0}.hero-image>img{height:100%;position:absolute;inset:0;object-position:48% center}.hero-image:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(5,26,37,.8));pointer-events:none}.hero-image figcaption{position:absolute;bottom:34px;left:36px;right:25px;z-index:1;color:#fff;display:flex;flex-direction:column;gap:8px;font-size:.92rem}.hero-image figcaption>span{font-size:.67rem;letter-spacing:.19em;color:#e5eaf0}.collection{padding-top:96px;padding-bottom:100px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:43px}.section-heading .eyebrow{margin-bottom:17px}.section-heading>p{max-width:320px}.home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 26px}.photo-link{display:block;position:relative;overflow:hidden;aspect-ratio:1.35}.photo-link img{height:100%;transition:transform .35s ease}.photo-link:hover img{transform:scale(1.035)}.photo-label{position:absolute;left:14px;bottom:14px;background:#fff;padding:6px 11px;font-size:.72rem;color:var(--ink)}.card-content{padding:21px 0 0}.card-content .eyebrow{font-size:.68rem;margin-bottom:8px}.card-content h3{margin-bottom:11px}.specs{font-size:.82rem;color:var(--ink);margin-bottom:11px}.specs span{margin:0 5px;color:#8999a4}.card-content>p:not(.eyebrow):not(.specs){font-size:.93rem}.text-link{display:inline-flex;gap:20px;font-size:.87rem;font-weight:500;border-bottom:1px solid #aebfc9;padding-bottom:5px;margin-top:18px}.text-link:hover{border-color:var(--blue);color:var(--blue)}.collection-note{background:var(--pale);padding:28px;display:flex;flex-direction:column;justify-content:center;align-items:start}.large-number{font-family:'Libre Caslon Display',Georgia,serif;font-size:5rem;line-height:1;color:#81a9bf;margin-bottom:22px}.collection-note h3{font-size:1.8rem;margin-bottom:18px}.collection-note p{font-size:.95rem}.collection-note .text-link{font-size:.8rem}.stays{background:var(--pale);padding:80px 0}.stays .eyebrow{margin-bottom:20px}.stays h2 em{color:var(--blue)}.stay-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px;margin-top:50px}.stay-grid article{border-top:1px solid #adc3d1;padding-top:23px}.index{font-size:.68rem;letter-spacing:.16em;color:var(--blue)}.stay-grid h3{margin:20px 0 15px}.stay-grid p{font-size:.98rem;margin-bottom:20px}.stay-grid a{display:block;font-size:.9rem;margin-top:8px;text-decoration:underline;text-underline-offset:5px}.story{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:110px;padding-bottom:110px}.story .eyebrow{margin-bottom:25px}.story h2{font-size:clamp(2.5rem,4vw,4rem)}.story h2 em{color:var(--blue)}.signature{font-family:Georgia,serif;font-style:italic;font-size:2rem;margin-top:40px}.signature span{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:.64rem;letter-spacing:.17em;font-style:normal;margin-top:9px}.story-copy p{margin-bottom:19px}.story-copy .lead{font-size:1.23rem;color:var(--ink);line-height:1.65}.story-close{font-weight:600;color:var(--ink)}.closing{text-align:center;background:var(--ink);padding:73px 5%;color:#fff}.closing .eyebrow{color:var(--sand);margin-bottom:22px}.closing h2{margin-bottom:30px}.button.light{background:#fff;color:var(--ink)}.button.light:hover{background:#dceaf3}footer{max-width:1500px;margin:auto;padding:49px 5% 24px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;align-items:start}footer p{font-size:.88rem}footer>div{display:flex;flex-direction:column;align-items:end;gap:8px;font-size:.88rem}.copyright{grid-column:1/-1;border-top:1px solid var(--line);padding-top:22px;margin-top:14px;font-size:.72rem;color:var(--muted)}.skip{position:absolute;left:10px;top:-70px;padding:12px;background:#fff;z-index:10}.skip:focus{top:10px}.property{border-top:1px solid var(--line)}.back{display:inline-block;font-size:.9rem;margin:30px 0}.property-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;margin:12px 0 37px}.property-heading h1{font-size:clamp(3rem,5.3vw,5.5rem);margin:15px 0}.property-heading>div>p:last-child{font-size:1.1rem}.property-specs{display:flex;gap:30px;flex-shrink:0}.property-specs strong{font-family:Georgia,serif;font-size:2.3rem;font-weight:400;text-align:center}.property-specs span{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:.6rem;letter-spacing:.15em;margin-top:5px}.property-photo{aspect-ratio:2.1;max-height:620px}.property-layout{display:grid;grid-template-columns:1.55fr 1fr;gap:9%;padding:65px 0 90px}.property-layout section h2{font-size:2.7rem;margin:18px 0 25px}.description{font-size:1.08rem;margin-bottom:35px}.property-layout h3{font-size:1.22rem}.amenities{list-style:none;padding:0;margin:20px 0 34px}.amenities li{padding:12px 0;border-bottom:1px solid var(--line);font-size:.97rem}.amenities li:before{content:'✓';margin-right:13px;color:var(--blue)}.good-to-know p{margin-top:13px;font-size:.93rem}.booking{background:var(--pale);padding:32px;height:fit-content;position:sticky;top:30px}.booking h2{font-size:3rem;margin:20px 0}.booking .button{width:100%;margin:26px 0 16px}.booking .booking-note{font-size:.8rem;line-height:1.6}.booking>p:not(.eyebrow):not(.booking-note){font-size:.98rem}
@media(min-width:1500px){.hero-copy{padding-top:85px;padding-bottom:50px}}@media(max-width:1000px){header{gap:18px}nav{gap:18px}.hero{min-height:580px}.hero-copy{padding-top:48px}.hero h1{font-size:4.08rem}.hero-locations{letter-spacing:.06em;font-size:.61rem}.home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading{gap:28px}.property-heading{align-items:start;flex-direction:column}.property-specs{gap:35px}.property-layout{gap:5%;grid-template-columns:1.4fr 1fr}.booking{padding:24px}.property-layout section h2{font-size:2.3rem}}@media(max-width:680px){html{scroll-padding-top:20px}header{flex-wrap:wrap;padding:20px 6%;gap:22px}.brand{font-size:1.7rem}.brand small{font-size:.51rem}.nav-cta{font-size:.8rem;order:1}.nav-cta span{margin-left:10px}nav{order:2;width:100%;justify-content:space-between;font-size:.83rem;border-top:1px solid var(--line);padding-top:15px}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:40px 6% 30px}.hero h1{font-size:3.825rem}.hero .eyebrow{margin-bottom:24px}.hero-copy>p:not(.eyebrow){font-size:1rem;max-width:100%}.hero-locations{font-size:.61rem;letter-spacing:.12em;margin-top:30px}.hero-image{height:330px}.hero-image figcaption{left:22px;bottom:23px}.wrap{padding-left:6%;padding-right:6%}.collection{padding-top:56px;padding-bottom:56px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:22px;max-width:100%}.home-grid{grid-template-columns:1fr;gap:35px}.photo-link{aspect-ratio:1.4}.card-content{padding-top:18px}.collection-note{padding:26px}.large-number{font-size:3.5rem;margin-bottom:13px}.stays{padding:52px 0}.stay-grid{grid-template-columns:1fr;gap:30px;margin-top:32px}.stay-grid h3{margin-top:14px}.story{grid-template-columns:1fr;gap:35px;padding-top:60px;padding-bottom:60px}.signature{margin-top:24px}.story-copy .lead{font-size:1.15rem}.closing{padding:55px 6%}footer{grid-template-columns:1fr 1fr;padding:36px 6% 20px;gap:26px}footer>p{grid-column:1;grid-row:2}footer>div{grid-column:2;grid-row:1/3;font-size:.8rem}.copyright{font-size:.68rem}.property-heading h1{font-size:3.1rem}.property-specs strong{font-size:1.9rem}.property-photo{aspect-ratio:1.25}.property-layout{grid-template-columns:1fr;padding:38px 0 48px;gap:32px}.booking{position:static;padding:26px}.property-layout section h2{font-size:2.3rem}.property .closing h2{font-size:2.5rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo-link img{transition:none}}

/* Group the collection by destination. */
.city-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:54px 32px}.city-group{min-width:0}.city-group-wide{grid-column:1/-1}.city-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:22px}.city-heading h3{font-family:'Libre Caslon Display',Georgia,serif;font-size:2.3rem;font-weight:400;letter-spacing:-.025em}.city-heading>span{font-size:.9rem;color:var(--muted)}.city-homes{display:grid;grid-template-columns:1fr;gap:28px}.city-group-wide .city-homes{grid-template-columns:repeat(3,minmax(0,1fr))}.city-group:not(.city-group-wide) .photo-link{aspect-ratio:1.65}.collection-note{margin-top:50px;display:grid;grid-template-columns:auto 1fr 1.5fr;gap:18px 28px;align-items:center}.collection-note .large-number{margin:0;grid-row:1/3}.collection-note h3{margin:0;grid-row:1/3}.collection-note p{grid-column:3}.collection-note .text-link{grid-column:3;margin-top:0;justify-self:start}.signature span{font-size:.75rem;line-height:1.6;letter-spacing:.1em}
@media(max-width:900px){.city-group-wide .city-homes{grid-template-columns:1fr}.city-group-wide .home-card{display:grid;grid-template-columns:1fr 1fr;gap:24px}.city-group-wide .card-content{padding-top:0}.collection-note{grid-template-columns:auto 1fr}.collection-note .large-number{grid-row:1/4}.collection-note h3{grid-column:2;grid-row:auto}.collection-note p,.collection-note .text-link{grid-column:2}}
@media(max-width:680px){.city-groups{grid-template-columns:1fr;gap:42px}.city-heading h3{font-size:2rem}.city-group-wide{grid-column:auto}.city-group-wide .home-card{display:block}.city-group-wide .card-content{padding-top:18px}.city-group:not(.city-group-wide) .photo-link{aspect-ratio:1.4}.city-homes{gap:34px}.collection-note{gap:15px;margin-top:36px}.collection-note .large-number{font-size:3rem}.collection-note h3{font-size:1.4rem}}

.review-standard{font-size:1rem;line-height:1.7;margin:-10px 0 40px;padding:18px 22px;background:var(--pale);color:var(--ink);border-left:3px solid var(--blue)}

.team-page{border-top:1px solid var(--line);padding-top:62px;padding-bottom:85px;min-height:70vh}.team-page h1{margin:16px 0 24px}.team-intro{font-size:1.1rem}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:42px}.team-monogram{display:flex;align-items:center;justify-content:center;aspect-ratio:1.2;background:var(--pale);color:var(--blue);font-family:'Libre Caslon Display',Georgia,serif;font-size:5rem}.team-monogram:hover{background:#e2edf4}.team-member h2{font-size:2.3rem;margin:23px 0 10px}.team-role{font-size:1rem}.team-member .text-link{font-size:.94rem}
@media(max-width:900px){header{flex-wrap:wrap}header nav{order:2;width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){nav{gap:12px;font-size:.78rem}.team-page{padding-top:40px;padding-bottom:55px}.team-page h1{font-size:3.5rem}.team-grid{grid-template-columns:1fr;max-width:420px}.team-monogram{aspect-ratio:1.5}}

.bio-page{border-top:1px solid var(--line);padding-bottom:85px;min-height:75vh}.bio-layout{display:grid;grid-template-columns:1fr 2fr;gap:7%;margin-top:20px}.bio-identity .team-monogram{aspect-ratio:1;font-size:6rem}.bio-role{margin-top:24px;color:var(--ink);font-weight:600;font-size:1.1rem}.bio-role span{display:block;font-size:1rem;font-weight:400;color:var(--muted);margin-top:5px}.bio-copy h1{font-size:clamp(3rem,5vw,5rem);margin:12px 0 30px}.bio-copy>p:not(.eyebrow){font-size:1.06rem;line-height:1.85;margin-bottom:21px}.bio-copy .text-link{font-size:1rem}
@media(max-width:680px){.bio-layout{grid-template-columns:1fr;gap:35px;margin-top:5px}.bio-identity{display:grid;grid-template-columns:95px 1fr;align-items:center;gap:20px}.bio-identity .team-monogram{font-size:2.8rem}.bio-role{margin:0;font-size:1rem}.bio-role span{font-size:.9rem}.bio-copy h1{font-size:3.2rem}.bio-page{padding-bottom:55px}}

.coming-soon{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px 32px;align-items:center;border-top:1px solid var(--line);padding-top:25px;margin-top:35px}.coming-soon h3{font-size:1.1rem;letter-spacing:0;font-weight:500;color:var(--muted)}.coming-soon p{font-size:.9rem;line-height:1.7}.coming-soon strong{display:block;color:var(--ink);font-weight:500}.coming-soon span{display:block}@media(max-width:680px){.coming-soon{grid-template-columns:1fr 1fr;gap:16px 20px;margin-top:28px;padding-top:22px}.coming-soon h3{grid-column:1/-1;font-size:1rem}}

header .brand{flex-shrink:0}header .brand>span.brand-tagline{display:block;margin-top:13px;font-family:inherit;font-size:clamp(1rem,1.3vw,1.125rem);font-style:normal;font-weight:500;letter-spacing:0;line-height:1.45;color:var(--ink)}
@media(max-width:1100px){header{flex-wrap:wrap}header nav{order:2;width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px}}

header .brand small{font-size:.9375rem;font-weight:600;letter-spacing:.18em;line-height:1.5;margin-top:10px}

header .brand{font-size:2.6rem}header .brand small{font-size:1.125rem}header .brand>span.brand-tagline{font-size:clamp(1.2rem,1.7vw,1.4rem);line-height:1.4;font-weight:500}header .brand-tagline .gold-star,.stays .gold-star{color:#bd841b}header .brand-tagline .gold-star{font-size:1.1em}header .brand-tagline{max-width:100%}
@media(max-width:680px){header .brand{font-size:2.35rem;flex-shrink:1;max-width:100%}header .brand small{font-size:1.05rem}header .brand>span.brand-tagline{font-size:1.2rem}}

.hero .eyebrow{font-size:1.05rem}

.brand>span.brand-logo{position:relative;display:block;width:360px;max-width:100%;aspect-ratio:1536 / 416;overflow:hidden}
.brand-logo img{position:absolute;left:-7.8125%;top:-55.76923%;width:115.49479%;max-width:none;height:auto;object-fit:contain}
header .brand{width:360px;max-width:100%}
footer .brand{width:240px;max-width:100%}
footer .brand>span.brand-logo{width:100%}
@media(max-width:680px){header .brand{width:320px;max-width:100%}}

.fishing-card-link{display:block;width:fit-content;margin-top:14px;padding:6px 11px;background:#f6ead9;color:var(--ink);font-size:.85rem;font-weight:600;line-height:1.5}.fishing-card-link:hover{text-decoration:underline}
.fishing-packages{margin:0 0 80px;padding:40px;background:var(--pale);scroll-margin-top:30px}.fishing-heading{padding:35px;background:var(--ink);margin:-40px -40px 30px}.fishing-heading .eyebrow{color:var(--sand)}.fishing-heading h2{margin:16px 0 22px;color:#fff;font-size:clamp(2.5rem,4vw,4rem)}.fishing-heading h2 em{color:var(--sand)}.fishing-heading p{color:#e2edf4}.fishing-heading .fishing-slogan{font-size:1.25rem;font-weight:600;color:#fff;margin-bottom:8px}.fishing-options{display:grid;grid-template-columns:1fr 1fr;gap:24px}.fishing-options article{padding:28px;background:#fff}.fishing-options h3{font-size:1.5rem;margin:15px 0}.fishing-options .fishing-promise{color:var(--blue);font-weight:600;margin-bottom:15px}.fishing-own-boat{border-top:1px solid #cbdbe5;margin-top:28px;padding-top:25px}.fishing-own-boat h3{font-size:1.15rem;margin-bottom:10px}.fishing-actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:26px}.fishing-actions .text-link{margin-top:0}.fishing-note{font-size:.82rem;margin-top:18px;max-width:850px}
@media(max-width:680px){.fishing-packages{padding:22px;margin-bottom:50px}.fishing-heading{padding:25px 22px;margin:-22px -22px 22px}.fishing-options{grid-template-columns:1fr;gap:18px}.fishing-options article{padding:22px}.fishing-actions{gap:18px}.fishing-actions .button{width:100%;padding:15px 12px;font-size:.87rem}.fishing-heading .fishing-slogan{font-size:1.1rem}}
