/* Santa Rosa identity: the original rose, editorial compositions, quiet movement. */
:root{--paper:#eeeade;--ink:#283d32;--sand:#cdbb99}
.site-header{border-bottom-color:#bbc1ad;background:#eeeade}.header-contact{border-radius:30px;padding:11px 21px}.brand img{width:140px;height:108px}.site-header{height:115px}
.opening-film{border-radius:0 0 0 72px;height:clamp(530px,77svh,950px)}
.opening-type{padding-top:38px;padding-left:7%;padding-right:7%;background:linear-gradient(#172b245c,transparent)}
.wordmark h1{font-size:clamp(70px,8.8vw,130px);letter-spacing:-2px}.wordmark>span{letter-spacing:6px;margin-top:20px}
.opening-note{border-left:1px solid #ffffff80;padding:7px 0 7px 22px}.opening-note p{font-size:22px}.opening-note .eyebrow{font-size:8px;letter-spacing:1.5px}
.intro{position:relative;isolation:isolate;overflow:hidden;max-width:1300px;padding:65px 9%;grid-template-columns:1.05fr 1fr;gap:10%}
.rose-mark{width:180px;height:83px;overflow:hidden;pointer-events:none}.rose-mark img{width:180px;height:auto;max-width:none;object-fit:initial}
.intro>.rose-mark{position:absolute;left:0;top:4px;width:310px;height:148px;z-index:-1;opacity:.065;transform:rotate(-12deg)}.intro>.rose-mark img{width:310px}
.intro h2{font-size:clamp(28px,3vw,40px);letter-spacing:-.6px;line-height:1.35}.intro p{font-size:12px;line-height:2;color:#42563f}.intro-address{border-top:1px solid #acb69d;padding-top:14px;display:inline-block;font-size:9px;letter-spacing:1.1px}
.stays{position:relative;background:#2b4033;padding:32px 6% 42px;overflow:hidden}.stays:before{content:'SANTA ROSA';position:absolute;bottom:0;left:5%;font:400 clamp(80px,14vw,200px)/.8 var(--display);letter-spacing:6px;color:#ffffff03;pointer-events:none}
.section-line{border-bottom-color:#ffffff29}.stays-title h2{font-size:clamp(30px,3.3vw,45px)}.stays-title{margin:25px auto 30px}.stays-title p{color:#d4decb}
.room-experience{max-width:1230px;grid-template-columns:220px minmax(0,1fr);gap:50px;position:relative}
.room-choice{position:relative;border-bottom-color:#ffffff25;padding:18px 0;color:#c9d4c1}.room-choice.is-active{border-bottom-color:#ddc8a0}.room-choice.is-active:before{content:'';position:absolute;left:-14px;top:calc(50% - 3px);width:5px;height:5px;background:#ddc8a0;border-radius:50%}.choice-name{font-size:37px}.choice-index{font-size:8px}.selector-note{color:#d0dbc9;font-size:10px;line-height:1.8}
.room-preview{padding-right:65px;padding-bottom:25px;background:none;min-width:0}
.preview-image-link{border-radius:3px 70px 3px 3px;isolation:isolate}.preview-image-link img{height:clamp(325px,45svh,430px);object-position:center}.preview-image-link:after{background:linear-gradient(transparent,#14271eba)}
.preview-caption{right:65px;bottom:25px;padding:22px 25px}.preview-caption h3{font-size:40px;margin-bottom:8px}.preview-caption p{font-size:11px;max-width:360px}.preview-caption .eyebrow{font-size:8px;letter-spacing:2px}.round-cta>span:first-child{max-width:100px;line-height:1.6;font-size:10px}
.room-detail{position:absolute;right:0;top:25px;width:155px;z-index:3;background:#eeeade;padding:6px;color:#283d32;box-shadow:0 8px 22px #10251d22;transform:rotate(2deg);transition:transform .3s}.room-detail:hover{transform:rotate(0)}.room-detail img{width:100%;height:180px;object-fit:cover;object-position:40% center}.room-detail>span{font-size:8px;display:block;padding:7px 2px 2px;letter-spacing:.2px}
.details{max-width:1250px;grid-template-columns:1fr 230px 1fr;gap:7%;padding:62px 8% 58px;align-items:center}.detail-tile:first-child{transform:translateY(-13px)}.detail-tile:last-child{transform:translateY(20px)}.detail-tile img{height:345px;width:100%;object-fit:contain;filter:saturate(.9) contrast(.96)}.detail-tile:last-child img{filter:saturate(.85) contrast(.92);border-radius:0}.detail-tile>span{font-size:9px;letter-spacing:.6px;margin-top:3px;text-align:left;padding-left:6px}
.detail-statement{position:relative;text-align:center}.detail-statement>.rose-mark{width:80px;height:38px;margin:0 auto 24px;opacity:.75}.detail-statement>.rose-mark img{width:80px;height:auto;margin:0;border:0;border-radius:0;outline:0;object-fit:initial}.detail-statement>img{width:170px;height:240px;border-radius:85px 85px 2px 2px;outline-offset:6px;margin:0 auto 22px}.detail-statement p{font-size:23px;line-height:1.4;letter-spacing:-.4px}
.coastal-ending{border-top:1px solid #bac4b0}.coastal-ending:before{background:radial-gradient(ellipse 60% 62% at 50% 53%,#eeeadeee 0%,#eeeadecf 27%,#eeeade8a 53%,#eeeade46 80%,#eeeade30 100%),url('assets/coastal-banner.webp') center/cover no-repeat}
.coastal-ending .neighbourhood{padding:72px 8% 25px}.coastal-ending .neighbourhood-copy h2{font-size:clamp(30px,3.1vw,43px);letter-spacing:-.6px}.coastal-ending .neighbourhood-copy p{line-height:2;max-width:470px}.coastal-ending .line-link{max-width:250px}.coastal-ending .invitation{padding:25px 8% 55px}.coastal-ending .invitation>a{font-size:35px}.coastal-ending .invitation p{font-size:12px;max-width:380px}.coastal-ending .invitation:before{content:'';display:block;width:45px;height:1px;background:#7b8e70;margin:0 auto 25px}
footer{background:#243b2c}.inner-page .detail-heading h1{letter-spacing:-1.5px}.inner-page .detail-cover{border-radius:0 70px 0 0}.inner-page .detail-gallery a:nth-child(2n){padding-top:45px}.inner-page .detail-copy h2{font-size:33px}
.arrival{opacity:1;transform:none}.arrival:not(.arrived){opacity:0;transform:translateY(18px)}.arrival{transition:opacity .65s ease,transform .65s cubic-bezier(.2,.65,.25,1)}
@media(max-width:1050px){.room-experience{grid-template-columns:180px minmax(0,1fr);gap:28px}.choice-name{font-size:31px}.room-preview{padding-right:45px}.preview-caption{right:45px;padding:20px}.room-detail{width:123px;top:25px}.room-detail img{height:150px}.preview-caption h3{font-size:35px}.details{grid-template-columns:1fr 175px 1fr;gap:5%}.detail-statement>img{width:145px;height:210px}.detail-tile img{height:280px}.detail-statement p{font-size:20px}}
@media(max-width:650px){.site-header{height:99px}.brand img{width:119px;height:91px}.opening-film{height:72svh;min-height:520px;max-height:760px;border-radius:0 0 0 40px}.opening-type{padding:30px 7%}.wordmark h1{font-size:19vw;letter-spacing:-1.5px}.wordmark>span{font-size:8px;letter-spacing:4px}.opening-note{border-left:0;padding:22px 0 0}.opening-note p{font-size:17px}.intro{padding:39px 8%;display:block}.intro>.rose-mark{width:230px;height:110px;left:-25px;top:0}.intro>.rose-mark img{width:230px}.intro h2{font-size:29px}.intro p{font-size:11px}.intro-address{font-size:8px}.stays{padding:26px 6% 30px}.stays-title h2{font-size:29px}.stays-title{margin:23px 0}.room-experience{display:block}.room-choice{padding:8px 0 13px}.room-choice.is-active:before{display:none}.choice-name{font-size:23px}.room-preview{padding-right:24px;padding-bottom:16px}.preview-image-link{border-radius:2px 40px 2px 2px}.preview-image-link img{height:315px}.preview-caption{right:24px;bottom:16px;padding:18px 15px;gap:10px}.preview-caption h3{font-size:33px}.preview-caption p{font-size:10px;max-width:220px}.room-detail{width:93px;top:17px;padding:4px;transform:rotate(2deg)}.room-detail img{height:113px}.room-detail>span{font-size:6px;padding:5px 1px 1px}.details{grid-template-columns:1fr 1fr;padding:35px 7% 40px;gap:18px}.detail-statement{grid-row:1;grid-column:1/-1;display:grid;grid-template-columns:125px 1fr;align-items:center;gap:25px;text-align:left;max-width:340px;margin:auto}.detail-statement>.rose-mark{display:none}.detail-statement>img{width:125px;height:180px;margin:0;grid-column:1;grid-row:1}.detail-statement p{font-size:23px;grid-column:2}.detail-tile:first-child{transform:translateY(12px)}.detail-tile:last-child{transform:translateY(30px)}.detail-tile img{height:auto;aspect-ratio:9/16;object-fit:contain}.detail-tile>span{font-size:8px;padding-left:0}.coastal-ending{margin-top:20px}.coastal-ending .neighbourhood{padding:45px 8% 20px}.coastal-ending .neighbourhood-copy h2{font-size:29px}.coastal-ending .invitation{padding:20px 8% 42px}.coastal-ending .invitation>a{font-size:29px}.coastal-ending:before{background:radial-gradient(ellipse 90% 68% at 50% 53%,#eeeadeee 0%,#eeeadec9 34%,#eeeade94 65%,#eeeade45 100%),url('assets/coastal-banner.webp') center/cover no-repeat}.inner-page .detail-cover{border-radius:0 40px 0 0}.inner-page .detail-gallery a:nth-child(2n){padding-top:0}.inner-page .detail-copy h2{font-size:28px}}
@media(max-width:360px){.choice-name{font-size:20px}.room-detail{width:83px}.room-detail img{height:100px}.preview-caption p{font-size:9px}.detail-statement{gap:18px}.detail-statement p{font-size:20px}}
@media(prefers-reduced-motion:reduce){.arrival:not(.arrived){opacity:1;transform:none}.arrival{transition:none}.room-detail{transform:none}}

/* One aligned photographic composition, one shared caption. */
.arrival-triptych{padding:42px 7% 35px;max-width:1000px;margin:auto}
.arrival-triptych-images{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;align-items:stretch;max-width:760px;margin:auto}
.arrival-triptych-images img{display:block;width:100%;height:310px;object-fit:cover;object-position:center;border:0;outline:0;border-radius:0;filter:saturate(.85) contrast(.94)}
.arrival-triptych-images img:nth-child(2){object-position:50% 55%;filter:none}
.arrival-triptych-images img:last-child{filter:saturate(.82) contrast(.88) brightness(1.06)}
.arrival-triptych>p{font:400 23px/1.5 var(--serif);letter-spacing:-.3px;text-align:center;margin:24px auto 0;max-width:700px;color:#334b39}
@media(max-width:650px){.arrival-triptych{padding:30px 6%}.arrival-triptych-images{gap:8px}.arrival-triptych-images img{height:clamp(155px,45vw,235px)}.arrival-triptych>p{font-size:19px;line-height:1.6;margin-top:19px;max-width:310px}}

/* Room pages: natural image proportions and a quiet olive gallery frame. */
.room-page .detail-heading p,.room-page .detail-copy p{color:#161616;font-size:15px;line-height:1.85;font-weight:500}
.room-page .detail-copy h2{color:#161616}
.room-page .detail-copy strong{color:#080808;font-weight:600}
.room-page .detail-copy .line-link{color:#161616;border-color:#73795f}
.room-page .detail-cover{display:block;box-sizing:border-box;width:88%;max-width:1180px;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;border:1px solid #92977e;border-radius:0;padding:9px;background:#f5f2e9}
.room-page .detail-gallery{max-width:1180px;gap:28px;align-items:start}
.room-page .detail-gallery a,.room-page .detail-gallery a:nth-child(2n){display:block;box-sizing:border-box;padding:8px;border:1px solid #92977e;background:#f5f2e9;border-radius:0;transition:border-color .2s}
.room-page .detail-gallery a:hover,.room-page .detail-gallery a:focus-visible{border-color:#3d4b35;outline:2px solid #3d4b35;outline-offset:4px}
.room-page .detail-gallery img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;border-radius:0}
.room-page .detail-copy{max-width:1180px;box-sizing:border-box;gap:45px}
@media(max-width:650px){.room-page .detail-cover{width:88%;padding:5px}.room-page .detail-gallery{gap:20px}.room-page .detail-gallery a,.room-page .detail-gallery a:nth-child(2n){padding:5px}.room-page .detail-copy{gap:20px}.room-page .detail-heading p,.room-page .detail-copy p{font-size:14px}}


/* Refined spacing for the Didot display face. */
.wordmark h1{letter-spacing:-.02em}
.inner-page .detail-heading h1{letter-spacing:-.025em}
