.homepage-section{--home-ground:#f3f7fc;--home-silver:#b7c3d7;padding-inline:clamp(20px,5.5vw,80px);padding-block:clamp(72px,8vw,120px);scroll-margin-top:var(--nav-h);color:#000;font-family:var(--font);font-size:20px;font-weight:500;line-height:1.55}.homepage-inner{display:flex;flex-direction:column;gap:clamp(32px,4vw,52px);max-width:1280px;margin-inline:auto;min-width:0}.homepage-section :is(h2,h3,p,ol,ul,figure){margin:0}.homepage-section h2{color:var(--navy);font-size:clamp(44px,6vw,88px);font-weight:400;line-height:1.08;letter-spacing:0;text-wrap:balance}.homepage-services .text-gleam{--gleam-base:var(--ivory)}.homepage-section h2.text-gleam{margin-block:-.05em -.2em}.homepage-section h3{letter-spacing:0}.homepage-section :is(a,button):focus-visible{outline:2px solid var(--royal);outline-offset:5px}.homepage-section .btn{min-height:52px;padding:0 28px;margin:0;font-size:20px;font-weight:600;line-height:1.2;white-space:normal;text-align:center}.homepage-link{display:inline-block;align-self:flex-start;padding:10px 0;color:var(--navy);font-size:20px;font-weight:600;line-height:1.35;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px}.homepage-link:hover{text-decoration-thickness:2px}.homepage-lede{color:var(--navy);font-size:clamp(30px,3.4vw,50px);font-weight:400;line-height:1.18;text-wrap:pretty}.homepage-intro-copy{font-size:clamp(20px,1.55vw,23px)}.homepage-rich{overflow-wrap:anywhere}.homepage-rich>*+*{margin-top:20px}.homepage-rich :is(h2,h3){font-size:1.5em;line-height:1.15}.homepage-rich a{text-decoration:underline;text-underline-offset:4px}.homepage-rich :is(ul,ol){padding-left:1.25em}.homepage-rich strong{font-weight:700}.homepage-story{background:var(--home-ground);padding-block:clamp(64px,8vw,112px)}.homepage-story-row{flex-direction:row;flex-wrap:wrap;gap:32px 80px;align-items:start}.homepage-story-row>.homepage-lede{flex:1 1 480px;min-width:0}.homepage-story-copy{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:20px}.homepage-story-copy .homepage-intro-copy{max-width:36em}.homepage-services{background:var(--navy);color:var(--sky)}.homepage-services h2{color:var(--ivory)}.homepage-services :is(a,button):focus-visible{outline-color:var(--ivory)}.homepage-intro{display:flex;flex-wrap:wrap;align-items:start;justify-content:space-between;gap:24px 64px}.homepage-intro>h2{flex:1 1 440px;min-width:0}.homepage-intro>.homepage-intro-copy{flex:0 1 440px;min-width:0;line-height:1.5}.homepage-service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:0;list-style:none;column-gap:64px;border-top:1px solid #b7c3d766}.homepage-service-list li{display:flex;align-items:baseline;gap:18px;min-width:0;padding:16px 0;border-bottom:1px solid #b7c3d766}.homepage-service-number{flex:0 0 24px;color:var(--home-silver);font-size:17px;font-weight:500}.homepage-service-name{font-size:clamp(22px,1.85vw,28px);font-weight:500;line-height:1.3}.homepage-services-close{display:flex;justify-content:flex-start}.homepage-hotels{background:var(--sky)}.homepage-guests-intro{align-items:center}.homepage-guests-intro>div{flex:1 1 540px;min-width:0}.homepage-guests-intro .homepage-intro-copy{margin-top:24px;max-width:36em}.homepage-portfolio-button{flex-shrink:0;gap:24px;min-height:60px!important;padding-inline:30px!important;font-size:22px!important}.homepage-properties{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.homepage-property{display:flex;flex-direction:column;gap:16px;min-width:0;color:var(--navy)}.homepage-property img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:#dce5f0}.homepage-property-meta{display:flex;flex-direction:column;gap:6px}.homepage-property h3{color:var(--navy);font-size:clamp(26px,2.2vw,32px);font-weight:500;line-height:1.1}.homepage-property-meta p{color:#000;font-size:18px;font-weight:500}.homepage-property:is(:hover,:focus-visible) h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}.homepage-brands{padding-top:32px;border-top:1px solid var(--home-silver)}.homepage-brands ul{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:24px 32px;align-items:center;padding:0;list-style:none}.homepage-brands li{min-width:0;display:flex;align-items:center;justify-content:center}.homepage-brands img{display:block;width:100%;max-width:156px;height:76px;object-fit:contain}.homepage-brands span{font-size:24px;color:var(--navy);text-align:center}.homepage-giving{background:#dce5f0}.homepage-giving .homepage-inner{gap:36px}.homepage-giving-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:32px 80px}.homepage-giving-row>.homepage-lede{flex:1 1 520px;min-width:0;text-wrap:balance}.homepage-giving-copy{flex:1 1 380px;min-width:0;display:flex;flex-direction:column;gap:20px}.homepage-contact{background:var(--home-ground);padding-block:clamp(80px,10vw,144px);text-align:center}.homepage-contact .homepage-inner{align-items:center;gap:40px}.homepage-contact h2{color:var(--navy);font-size:clamp(46px,7vw,104px);line-height:1.1}.homepage-contact-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:20px}body.home .page-nav .name{font-size:14px;font-weight:500;letter-spacing:.07em;line-height:1.2;text-transform:uppercase}@media(min-width:769px){body.home .home-navigation :is(.page-nav-left,.page-nav-right){top:auto;bottom:clamp(22px,5vh,52px);transform:none}}@media(max-width:768px){body.home .hero{justify-content:flex-start;padding-top:calc(var(--nav-h) + env(safe-area-inset-top,0px) + 24px);padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}body.home .hero-text{margin-block:auto;padding-block:20px}body.home .home-navigation{margin:24px auto 0;flex-shrink:0}body.home .page-nav{min-height:80px}body.home .page-nav .name{font-size:13px}}@media(max-width:1024px){.homepage-brands ul{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:768px){.homepage-section{scroll-margin-top:calc(64px + env(safe-area-inset-top,0px))}.homepage-properties{grid-template-columns:1fr;gap:36px}.homepage-property img{aspect-ratio:16/10}.homepage-service-list{grid-template-columns:1fr}.homepage-guests-intro{align-items:stretch}.homepage-portfolio-button{justify-content:space-between;width:100%;text-align:left}}@media(max-width:540px){.homepage-brands ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px}.homepage-brands img{height:66px;max-width:140px}.homepage-contact-row{width:100%}.homepage-contact-row .btn{width:100%;max-width:340px}}
