.solstice{--pine:#173b38;--sand:#eee7da;--sun:#d6a76b;color:#223330;background:#f9f6ef;font-family:Manrope,sans-serif;overflow:hidden}.solstice *{box-sizing:border-box}.solstice h1,.solstice h2,.solstice blockquote{font-family:Newsreader,serif;font-weight:400}.demo{height:30px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;background:var(--pine);color:#fff;font-size:.6rem;text-transform:uppercase}.demo a{color:#fff}.solstice nav{height:82px;padding:0 5vw;display:flex;justify-content:space-between;align-items:center}.logo{letter-spacing:.18em;font-weight:600}.logo small{display:block;text-align:center;font-size:.45rem}.solstice nav>div{display:flex;gap:28px;align-items:center}.solstice nav a{font-size:.7rem}.book{padding:11px 15px;background:var(--pine);color:#fff!important}.hotel-hero{height:760px;position:relative;color:#fff}.hotel-hero>img{width:100%;height:100%;object-fit:cover}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,39,36,.7),rgba(15,39,36,.08))}.hero-copy{position:absolute;left:7vw;top:45%;transform:translateY(-50%);max-width:780px}.hero-copy>p,.hotel-intro>p,.suite-copy>p,.experiences header p,.dining>div>p,.booking p{font-size:.62rem;letter-spacing:.17em}.hero-copy h1,.hotel-intro h2,.suite-copy h2,.experiences h2,.dining h2,.booking h2{font-size:clamp(3.6rem,7vw,7rem);line-height:.9;margin:15px 0}.hero-copy h1 i,.booking h2 i{color:#f0cb9c}.hero-copy>span{display:block;max-width:510px;line-height:1.8}.hero-copy>a{display:inline-flex;margin-top:28px;padding:13px 19px;background:#fff;color:var(--pine)}.availability{position:absolute;left:7vw;right:7vw;bottom:0;transform:translateY(50%);display:grid;grid-template-columns:1fr 1fr 1fr auto;padding:20px;background:#fff;color:#223330;box-shadow:0 20px 50px rgba(20,40,35,.15)}.availability label{display:grid;padding:0 18px;border-right:1px solid #ddd;font-size:.58rem;text-transform:uppercase}.availability input,.availability select{border:0;padding:7px 0;background:#fff}.availability button{border:0;background:var(--pine);color:#fff;padding:0 25px}.hotel-intro{padding:150px 7vw 110px;display:grid;grid-template-columns:160px 1fr .65fr;gap:50px}.hotel-intro>div{padding-top:40px;line-height:1.8;color:#65736f}.hotel-intro>div span{display:block;margin-top:20px;color:var(--pine);font-size:.7rem}.suite{display:grid;grid-template-columns:1.1fr .9fr;background:var(--sand)}.suite-image{min-height:720px;position:relative}.suite-image img{width:100%;height:100%;object-fit:cover}.suite-image>span{position:absolute;left:22px;bottom:22px;padding:10px 13px;background:#fff;font-size:.6rem}.suite-copy{padding:clamp(50px,7vw,110px);display:flex;flex-direction:column;justify-content:center}.suite-copy>span{color:#68746f;line-height:1.8}.suite-copy ul{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:25px 0;list-style:none;border-block:1px solid #cfc5b4}.suite-copy>div{display:flex;justify-content:space-between}.suite-copy a{border-bottom:1px solid}.experiences{padding:110px 6vw;background:var(--pine);color:#fff}.experiences header{display:flex;justify-content:space-between}.experiences>div{display:grid;grid-template-columns:repeat(4,1fr);margin-top:50px}.experiences article{padding:28px;border:1px solid #41615d;min-height:280px;display:flex;flex-direction:column}.experiences article span{color:var(--sun)}.experiences article b{margin:auto 0 10px;font:1.5rem Newsreader}.experiences article p{color:#b3c3c0}.dining{padding:110px 7vw;display:grid;grid-template-columns:1fr .8fr;gap:80px}.dining>div>span{display:block;color:#68746f;line-height:1.8}.dining a{display:inline-flex;margin-top:25px;border-bottom:1px solid}.menu article{padding:22px 0;border-bottom:1px solid #ccc;display:grid}.menu b{font:1.3rem Newsreader}.menu span{color:#78817e}.hotel-review{padding:110px 10vw;text-align:center;background:#d5b386}.hotel-review blockquote{max-width:1000px;margin:20px auto;font-size:clamp(2.3rem,4.5vw,4.5rem);line-height:1.1}.booking{padding:110px 7vw;display:grid;grid-template-columns:1fr .8fr;gap:80px;background:#e7e0d3}.booking>div>span{display:block;max-width:450px;color:#65736f}.booking form{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:center}.booking input,.booking select{padding:14px;border:0;border-bottom:1px solid #aaa;background:transparent}.booking button{grid-column:1/-1;padding:15px;border:0;background:var(--pine);color:#fff}.solstice footer{padding:30px 5vw;display:flex;justify-content:space-between;background:#102c29;color:#fff;font-size:.65rem}@media(max-width:800px){.solstice nav>div a:not(.book){display:none}.availability{grid-template-columns:1fr 1fr}.availability button{min-height:45px}.hotel-intro,.suite,.dining,.booking{grid-template-columns:1fr}.suite-image{min-height:520px}.experiences>div{grid-template-columns:1fr 1fr}}@media(max-width:520px){.hotel-hero{height:720px}.hero-copy{left:20px;right:20px}.availability{display:none}.hotel-intro,.experiences,.dining,.booking{padding-top:75px;padding-bottom:75px}.hotel-intro{display:block}.experiences header{display:block}.experiences>div{grid-template-columns:1fr}.booking form{grid-template-columns:1fr}.booking form>*{grid-column:1}.solstice footer{gap:15px;flex-wrap:wrap}}
/* Explicit contrast for the pine experiences panel and footer. */
.solstice .experiences h2,.solstice .experiences h3,.solstice footer h2,.solstice footer h3{color:#fff}
.solstice .experiences p{color:#d7e1de}
