/* Rooms: ivory paper, burgundy accents and muted sage. */
.hr-page { color: #492331; background: #fbf8f1; font-family: 'DM Sans',Arial,sans-serif; overflow: hidden; padding-top: var(--hr-header,120px); }
.hr-page *, .hr-page *::before,.hr-page *::after { box-sizing: border-box; }
.hr-page figure { margin: 0; }.hr-page img { display: block; width: 100%; height: 100%; object-fit: cover; }
.hr-page h1,.hr-page h2,.hr-page h3 { font-family: 'Bodoni Moda',Georgia,serif; font-weight: 500; margin: 0; letter-spacing: -1px; }
.hr-page h1 { font-size: 64px; line-height: 1.12; }.hr-page h2 { font-size: 46px; line-height: 1.2; }.hr-page h3 { font-size: 30px; line-height: 1.25; }
.hr-page p { font-size: 17px; line-height: 1.85; color: #70645c; margin: 24px 0; }.hr-page a { color: inherit; text-decoration: none; }.hr-page a:focus-visible,.hr-page button:focus-visible { outline: 2px solid #996e49; outline-offset: 5px; }
.hr-wrap,.hr-collection { max-width: 1280px; margin: auto; padding: 85px 40px; }
.hr-kicker { display: block; font-size: 15px; line-height: 1.7; letter-spacing: 1.6px; text-transform: uppercase; color: #977550; }
.hr-link { display: inline-flex; align-items: center; gap: 25px; padding: 10px 0; border-bottom: 1px solid #b9a083; font-size: 15px; }
.hr-button { display: inline-flex; align-items: center; justify-content: center; padding: 17px 23px; gap: 30px; background: #4a1d2d; color: #fff6e6 !important; font-size: 15px; line-height: 1.5; border: 1px solid #4a1d2d; transition: background .3s, transform .3s; }.hr-button:hover { background: #653346; transform: translateY(-2px); }
.hr-list-hero { max-width: 1440px; padding: 65px 80px 90px; margin: auto; display: flex; align-items: center; gap: 80px; }
.hr-hero-copy { flex: 1; }.hr-hero-copy h1 { margin: 23px 0; max-width: 570px; }.hr-hero-copy p { max-width: 560px; }
.hr-hero-photo { width: 47%; height: 590px; position: relative; border-radius: 220px 220px 4px 4px; background: #e7dbc8; padding: 12px; }
.hr-hero-photo img { border-radius: 210px 210px 2px 2px; }.hr-orbit { position: absolute; left: -30px; bottom: 40px; height: 82px; width: 82px; border-radius: 50%; border: 1px solid #ad926c; background: #fbf8f1; font-size: 42px; display: flex; align-items: center; justify-content: center; animation: hr-orbit 25s linear infinite; }
.hr-collection { max-width: none; background: #f0e8dc; padding: 85px max(40px,calc((100% - 1200px)/2)); }
.hr-section-heading { max-width: 680px; margin-bottom: 65px; }.hr-section-heading h2 { margin-top: 14px; }
.hr-room-row { display: flex; gap: 65px; align-items: center; padding: 0 0 75px; margin-bottom: 75px; border-bottom: 1px solid #d6c5af; perspective: 1500px; }
.hr-room-row:last-child { margin: 0; padding-bottom: 0; border: 0; }.hr-room-row:nth-of-type(even) { flex-direction: row-reverse; }
.hr-row-photo { position: relative; width: 52%; height: 500px; overflow: hidden; border: 9px solid #fffaf1; box-shadow: 0 16px 35px #35152116; }.hr-row-photo img { transition: transform 1.3s cubic-bezier(.2,.7,.2,1); }.hr-row-photo:hover img { transform: scale(1.045); }
.hr-room-number { position: absolute; left: 22px; top: 20px; width: 52px; height: 52px; border: 1px solid #e1caa6; background: #421b2bd9; color: #fff7e8; font-size: 22px; display: flex; align-items: center; justify-content: center; }
.hr-row-copy { flex: 1; }.hr-row-copy h2 { margin: 15px 0; }.hr-area { display: block; color: #876b4c; font-size: 15px; }.hr-row-copy p { font-size: 16px; }.hr-rate { display: flex; align-items: baseline; gap: 20px; margin: 25px 0; }.hr-rate span { font-size: 15px; color: #7e6e5b; }.hr-rate strong { font-size: 29px; font-weight: 500; }.hr-actions { display: flex; flex-wrap: wrap; gap: 20px; align-items: center; }
.hr-single-heading { text-align: center; max-width: 1050px; padding: 45px 40px 55px; margin: auto; }.hr-single-heading > a { margin-bottom: 30px; }.hr-single-heading h1 { margin: 18px 0; }.hr-single-heading p { max-width: 700px; margin: 20px auto 0; }
.hr-single-hero { height: 620px; width: calc(100% - 80px); max-width: 1360px; margin: auto !important; overflow: hidden; }.hr-single-hero img { animation: hr-breathe 16s ease-in-out infinite alternate; }
.hr-room-story { display: flex; align-items: flex-start; gap: 90px; }.hr-story-copy { flex: 1; }.hr-story-copy h2 { margin: 20px 0; font-size: 40px; }.hr-reserve-card { width: 340px; flex-shrink: 0; background: #b28b50; padding: 34px; position: sticky; top: 125px; border: 1px solid #9c733c; }.hr-reserve-card > strong { display: block; font-size: 34px; margin-top: 15px; font-weight: 500; }.hr-reserve-card p { font-size: 15px; }.hr-reserve-card .hr-button { width: 100%; padding: 15px; }.hr-ornament { display: block; width: 40px; height: 40px; font-size: 35px; color: #9c8057; margin: 20px 0; animation: hr-orbit 25s linear infinite; }
.hr-features { background: #a17b43; }.hr-features h2 { margin-top: 15px; }.hr-features ul { display: flex; flex-wrap: wrap; list-style: none; padding: 0; margin: 35px 0 0; gap: 0 40px; }.hr-features li { width: calc(50% - 20px); padding: 20px 0; display: flex; gap: 17px; font-size: 16px; border-bottom: 1px solid #c4a16e; }.hr-features li span { color: #866847; }
.hr-gallery-heading { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 35px; }.hr-gallery button { border: 1px solid #a58c6a; border-radius: 50%; background: transparent; width: 48px; height: 48px; font-size: 22px; color: #4a1d2d; cursor: pointer; margin-left: 8px; }.hr-gallery-track { display: flex; overflow-x: auto; gap: 24px; scroll-snap-type: x mandatory; scrollbar-width: none; }.hr-gallery-track::-webkit-scrollbar { display: none; }.hr-gallery-track figure { flex: 0 0 78%; height: 500px; scroll-snap-align: start; }
.hr-enquiry { background: #442130; color: #fff7e7; }.hr-enquiry > .hr-wrap { display: flex; gap: 85px; align-items: flex-start; }.hr-enquiry-copy { flex: 1; }.hr-enquiry-copy h2 { margin-top: 16px; }.hr-enquiry p { color: #ddcdc6; }.hr-reservation-contact { margin-top: 30px; display: flex; flex-direction: column; gap: 8px; }.hr-reservation-contact span { font-size: 15px; color: #d5b987; margin-top: 12px; }.hr-reservation-contact a { font-size: 17px; overflow-wrap: anywhere; }.hr-enquiry-form { flex: 1; min-width: 0; background: #fcf8ee; color: #492331; padding: 32px; }
.hr-related-row { display: flex; gap: 35px; margin-top: 35px; }.hr-related-row > a { flex: 1; min-width: 0; }.hr-related-row figure { height: 330px; overflow: hidden; margin-bottom: 25px; }.hr-related-row img { transition: transform 1s; }.hr-related-row a:hover img { transform: scale(1.04); }.hr-related-row h3 { margin-top: 12px; }
.hr-page .hr-cf7-row { display: flex; gap: 18px; }.hr-page .hr-cf7-row > p { flex: 1; min-width: 0; }.hr-page .hr-enquiry-form p { margin: 0 0 17px; font-size: 15px; line-height: 1.5; color: #68574e; }.hr-page .hr-enquiry-form label { display: block; font-size: 15px; }.hr-page .hr-enquiry-form input:not([type=submit]),.hr-page .hr-enquiry-form textarea,.hr-page .hr-enquiry-form select { width: 100%; min-height: 46px; border: 1px solid #cdbb9e; background: #fffdf8; border-radius: 0; padding: 10px 12px; margin-top: 7px; font: 16px 'DM Sans',Arial,sans-serif; color: #422533; }.hr-page .hr-enquiry-form textarea { min-height: 90px; }.hr-page .hr-enquiry-form input[type=submit] { background: #4a1d2d; color: #fff6e9; font: 500 15px 'DM Sans',Arial,sans-serif; border: 0; padding: 16px 24px; cursor: pointer; }.hr-page .hr-enquiry-form .wpcf7-not-valid-tip { font-size: 15px; }.hr-page .hr-enquiry-form .wpcf7-response-output { font-size: 15px; margin: 20px 0 0; }
.hr-motion [data-hr-reveal] { transition: opacity 1s, translate 1s cubic-bezier(.2,.7,.2,1); }.hr-motion [data-hr-reveal].hr-pending { opacity: 0; translate: 0 35px; }
@keyframes hr-orbit { to { transform: rotate(360deg); } }@keyframes hr-breathe { from { transform: scale(1); } to { transform: scale(1.055); } }
@media(max-width:1000px){.hr-list-hero { padding: 50px 35px 70px; gap: 40px; }.hr-page h1 { font-size: 52px; }.hr-page h2 { font-size: 40px; }.hr-hero-photo { height: 490px; }.hr-room-row { gap: 35px; }.hr-row-photo { height: 450px; }.hr-room-story { gap: 40px; }.hr-reserve-card { width: 290px; padding: 25px; }.hr-enquiry > .hr-wrap { gap: 35px; }}
@media(max-width:700px){.hr-page { padding-top: var(--hr-header,95px); }.hr-page h1 { font-size: 40px; }.hr-page h2,.hr-page .hr-story-copy h2 { font-size: 34px; }.hr-page h3 { font-size: 27px; }.hr-page p { font-size: 16px; }.hr-wrap,.hr-collection { padding: 60px 22px; }.hr-list-hero { padding: 35px 22px 60px; flex-direction: column; gap: 35px; }.hr-hero-photo { width: calc(100% - 18px); height: 420px; margin-left: 18px !important; }.hr-orbit { width: 65px; height: 65px; font-size: 34px; left: -24px; }.hr-room-row,.hr-room-row:nth-of-type(even) { flex-direction: column; gap: 28px; padding-bottom: 45px; margin-bottom: 45px; }.hr-row-photo { width: 100%; height: 330px; }.hr-row-copy { width: 100%; }.hr-section-heading { margin-bottom: 40px; }.hr-single-heading { padding: 30px 22px 40px; }.hr-single-hero { height: 380px; width: calc(100% - 28px); }.hr-room-story { flex-direction: column; gap: 30px; }.hr-reserve-card { width: 100%; position: relative; top: auto; }.hr-features li { width: 100%; }.hr-gallery-track figure { flex-basis: 100%; height: 330px; }.hr-gallery-heading h2 { font-size: 30px; }.hr-enquiry > .hr-wrap { flex-direction: column; }.hr-enquiry-form { width: 100%; padding: 24px; }.hr-related-row { flex-direction: column; }.hr-related-row figure { height: 300px; }.hr-page .hr-cf7-row { flex-direction: column; gap: 0; }}
@media(prefers-reduced-motion:reduce){.hr-page * { animation: none !important; scroll-behavior: auto !important; }.hr-motion [data-hr-reveal] { opacity: 1; translate: none; transition: none; }}

/* 6.1: burnished brass, burgundy and ivory — no green panels. */
.hr-reserve-card { background: #b28b50; color: #321d25; border: 1px solid #9d773f; box-shadow: 10px 12px 0 #d1b88d55; }
.hr-reserve-card .hr-kicker,.hr-reserve-card p,.hr-reserve-card .hr-ornament { color: #3d2630; }
.hr-features { background: #9e783f; color: #fff8e9; border-top: 1px solid #bd9a62; border-bottom: 1px solid #805c2c; }
.hr-features .hr-kicker,.hr-features li span { color: #f3dfb8; }.hr-features li { border-color: #d7ba8a55; }
.hr-room-row:nth-of-type(even) .hr-row-copy { background: #482332; color: #fbf1df; padding: 38px; }
.hr-room-row:nth-of-type(even) p { color: #e3d3c9; }.hr-room-row:nth-of-type(even) .hr-kicker,.hr-room-row:nth-of-type(even) .hr-area,.hr-room-row:nth-of-type(even) .hr-rate span { color: #d9bd8c; }
.hr-room-row:nth-of-type(even) .hr-button { background: #d9ba83; color: #3e2230 !important; border-color: #d9ba83; }
.hr-rituals { background: #3c1e2b; color: #fff6e5; overflow: hidden; }
.hr-ritual-heading { position: relative; padding-right: 150px; margin-bottom: 55px; }.hr-ritual-heading h2 { max-width: 700px; margin-top: 18px; }.hr-ritual-heading .hr-kicker { color: #d7b780; }
.hr-brass-orbit { position: absolute; right: 12px; top: 10px; width: 90px; height: 90px; display: flex; align-items: center; justify-content: center; color: #d3b17a; font-size: 35px; border: 1px solid #c39e6466; border-radius: 50%; animation: hr-orbit 25s linear infinite; }
.hr-brass-orbit i { position: absolute; top: -5px; left: 40px; width: 9px; height: 9px; border-radius: 50%; background: #e6ca9a; }
.hr-ritual-cards { display: flex; gap: 28px; perspective: 1700px; }.hr-ritual-card { flex: 1; min-width: 0; background: #fbf5e9; color: #492331; transform-origin: center bottom; }.hr-ritual-card figure { height: 265px; overflow: hidden; }.hr-ritual-card img { animation: hr-breathe 15s ease-in-out infinite alternate; }.hr-ritual-card:nth-child(2) img { animation-delay: -5s; }.hr-ritual-card:nth-child(3) img { animation-delay: -10s; }
.hr-ritual-card > div { padding: 26px; }.hr-ritual-card h3 { font-size: 29px; }.hr-ritual-card p { font-size: 16px; margin-bottom: 0; }.hr-ritual-number { display: block; font-size: 15px; letter-spacing: 2px; color: #a17a43; margin-bottom: 16px; }
.hr-compare { background: #fbf8f1; }.hr-compare h2 { margin-top: 15px; }.hr-compare-row { display: flex; gap: 25px; margin-top: 40px; }.hr-compare-row > a { flex: 1; padding: 28px; border: 1px solid #d4c1a0; background: #f0e5d2; display: flex; flex-direction: column; }.hr-compare-row h3 { margin: 16px 0 0; }.hr-compare-row p { font-size: 15px; flex: 1; }.hr-compare-row strong { display: block; font-size: 25px; font-weight: 500; margin-bottom: 18px; }.hr-compare-row .hr-link { align-self: flex-start; }
.hr-private-view { display: flex; align-items: center; gap: 75px; background: #eadbc1; padding: 90px max(40px,calc((100% - 1200px)/2)); perspective: 1700px; }.hr-private-view figure { width: 48%; height: 530px; border: 10px solid #fbf7ed; box-shadow: 15px 18px 0 #b9986555; }.hr-private-view > div { flex: 1; }.hr-private-view h2 { margin-top: 18px; }
.hr-motion [data-hr-3d] { will-change: transform; }
@media(max-width:1000px){.hr-ritual-cards { gap: 18px; }.hr-ritual-card > div { padding: 22px; }.hr-ritual-card h3 { font-size: 25px; }.hr-private-view { gap: 40px; }.hr-compare-row { gap: 15px; }.hr-compare-row > a { padding: 22px; }}
@media(max-width:700px){.hr-room-row:nth-of-type(even) .hr-row-copy { padding: 25px; }.hr-ritual-heading { padding-right: 0; }.hr-brass-orbit { position: relative; right: auto; top: auto; width: 65px; height: 65px; margin-top: 25px; font-size: 27px; }.hr-brass-orbit i { left: 27px; }.hr-ritual-cards,.hr-compare-row { flex-direction: column; }.hr-ritual-card figure { height: 300px; }.hr-private-view { flex-direction: column; padding: 65px 22px; gap: 40px; }.hr-private-view figure { width: calc(100% - 15px); height: 380px; }.hr-private-view > div { width: 100%; }.hr-compare-row > a { padding: 25px; }}
@media(prefers-reduced-motion:reduce){.hr-page [data-hr-3d] { transform: none !important; will-change: auto; }}
