/* Public hospitality presentation. Booking controls retain native behavior. */
body:not(.admin-body){--paper:#fffaf7;background:var(--paper)}
body:not(.admin-body) .site-header{position:sticky;top:0;z-index:20;transition:box-shadow .3s,padding .3s;background:#fffaf7f5}
body:not(.admin-body) .site-header.is-scrolled{box-shadow:0 5px 30px #4a16320c;padding-top:10px;padding-bottom:10px}
body:not(.admin-body) .site-header nav>a:not(.button){position:relative;padding-block:8px}
body:not(.admin-body) .site-header nav>a:not(.button):after{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:#ad824c;transform:scaleX(0);transform-origin:left;transition:transform .25s}
body:not(.admin-body) .site-header nav>a:hover:after{transform:scaleX(1)}
body:not(.admin-body) .hero{min-height:690px;grid-template-columns:1.03fr 1fr;background:#f9edf0;overflow:hidden}
body:not(.admin-body) .hero-copy{padding:76px 8% 90px 12%;justify-content:center}
body:not(.admin-body) .hero-copy:before{background-position:0 0;background-size:auto 110%;opacity:.14}
body:not(.admin-body) .hero h1{font-size:clamp(64px,6.1vw,96px);font-weight:400;line-height:.96;letter-spacing:-2px;margin:28px 0 30px}
.hero h1 em{font-weight:400;color:#a4617d}
body:not(.admin-body) .hero-art{margin:48px 7% 70px 0;padding:22px;background:#ebd8df;border-radius:240px 240px 6px 6px;align-items:center;position:relative;border:1px solid #d9bac9}
body:not(.admin-body) .hero-art:before{inset:12px;border:1px solid #fff9f2b0;background:none;height:auto;border-radius:230px 230px 0 0;pointer-events:none}
body:not(.admin-body) .hero-art img{border:0;box-shadow:0 20px 40px #54223b22;transform:rotate(-3deg);position:relative;z-index:1;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
body:not(.admin-body) .hero-art:hover img{transform:rotate(0deg) scale(1.025)}
body:not(.admin-body) .hero-caption{bottom:35px;left:35px;right:35px;border:0;letter-spacing:3px;font-size:8px}
.hero-seal{position:absolute;top:65px;left:50%;transform:translateX(-50%);color:#9d7652;font-family:var(--serif);font-size:28px;letter-spacing:10px;z-index:2}
.hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.hero-actions .button{padding:16px 26px}.hero-actions .text-link{font-weight:500}
body:not(.admin-body) .hero-index{margin-top:38px;letter-spacing:3px;font-size:8px}
body:not(.admin-body) .booking-wrap{max-width:1320px;margin-top:-32px;z-index:3;position:relative}
body:not(.admin-body) .booking-wrap .search-bar{padding:30px;box-shadow:0 18px 60px #5024380d;border-top:2px solid #b3905d}
.experience-strip{max-width:1180px;margin:42px auto 0;display:flex;justify-content:space-between;gap:20px;padding:22px 25px;border-block:1px solid #eadde0;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#836172}
.experience-strip span:before{content:'✦';color:#b89460;margin-right:16px}
body:not(.admin-body) .section{padding-top:100px;padding-bottom:100px}
body:not(.admin-body) .section-head{margin-bottom:48px}
body:not(.admin-body) .section-head h2{font-size:clamp(42px,4vw,64px)}
body:not(.admin-body) .room-grid{gap:34px}
body:not(.admin-body) .room-card{position:relative;padding-bottom:8px}
body:not(.admin-body) .room-card:nth-child(2){padding-top:48px}
body:not(.admin-body) .room-image{border:0;border-radius:150px 150px 0 0;overflow:hidden;background:#e8dedb}
body:not(.admin-body) .room-image img{aspect-ratio:1/1.05;object-fit:cover;transition:transform .8s cubic-bezier(.2,.65,.3,1)}
body:not(.admin-body) .room-image:hover img{transform:scale(1.07)}
body:not(.admin-body) .room-card h3{font-size:36px;margin-top:14px}
body:not(.admin-body) .room-card p{font-size:14px;line-height:1.8}
body:not(.admin-body) .room-bottom{padding-top:20px;margin-top:24px}
body:not(.admin-body) .about{max-width:none;padding:90px max(6%,calc((100vw - 1180px)/2));grid-template-columns:1fr 1fr;gap:80px;background:#56233d;color:#fff4ef;border:0}
body:not(.admin-body) .about .eyebrow{color:#d4b487}
body:not(.admin-body) .about h2{font-size:clamp(42px,4.6vw,68px);font-weight:400}
body:not(.admin-body) .about .lead{color:#ead2dd;font-family:var(--serif);font-size:27px;line-height:1.5}
body:not(.admin-body) .about .text-link{color:#e7c997;border-color:#c49c67}
body:not(.admin-body) .about:after{width:380px;opacity:.1}
#events>.lead{margin-bottom:44px}#events .event-grid{gap:28px}#events .event-card{display:grid;grid-template-columns:170px 1fr;margin:0;padding:0;overflow:hidden;background:#fffdfb;border:1px solid #ebd9df;transition:box-shadow .3s,transform .3s}
.event-card:hover{transform:translateY(-5px);box-shadow:0 18px 35px #54223b0d}.event-card-visual{display:block;overflow:hidden;background:#f0e1df}.event-card-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .6s}.event-card:hover img{transform:scale(1.04)}.event-card-copy{padding:24px}.event-card-copy h3{margin-top:5px}.event-card-copy p{font-size:12px;line-height:1.8}.event-card-copy .eyebrow{font-size:8px;letter-spacing:2px}.event-card-copy .text-link{font-size:11px;gap:10px}#events>.event-grid+p{margin-top:35px;max-width:780px;color:#80616e;font-size:13px}
#amenity{background:#f7edf0;max-width:none;padding-inline:max(6%,calc((100vw - 1180px)/2))}#amenity .room-grid{grid-template-columns:repeat(3,1fr);gap:0;margin-top:45px}#amenity article{padding:30px;border-top:1px solid #dfc7d3}#amenity article h3{font-size:29px}#amenity article p{font-size:12px;max-width:260px;color:#856d77}
body:not(.admin-body) footer{margin-top:0;padding-top:85px;padding-bottom:35px}body:not(.admin-body) footer h2{font-size:54px}body:not(.admin-body) .button,body:not(.admin-body) button{transition:background .25s,box-shadow .25s,transform .25s}body:not(.admin-body) .button:hover{box-shadow:0 8px 22px #64294218;transform:translateY(-2px)}
.reveal{opacity:1;transform:none}.motion-ready .reveal:not(.is-visible){opacity:0;transform:translateY(24px)}.motion-ready .reveal{transition:opacity .8s ease,transform .8s cubic-bezier(.2,.65,.3,1)}
@media(min-width:801px) and (prefers-reduced-motion:no-preference){.hero-copy>h1{animation:hero-in .9s both}.hero-copy>p{animation:hero-in .9s .12s both}.hero-actions{animation:hero-in .9s .22s both}.hero-art{animation:hero-in 1.1s .1s both}}@keyframes hero-in{from{opacity:0;translate:0 18px}to{opacity:1;translate:0 0}}
@media(max-width:1100px){body:not(.admin-body) .hero h1{font-size:70px}body:not(.admin-body) .hero-copy{padding-left:9%;padding-right:6%}body:not(.admin-body) .hero{min-height:620px}.hero-seal{top:60px;font-size:23px}#events .event-card{grid-template-columns:130px 1fr}.event-card-copy{padding:20px}}
@media(max-width:800px){body:not(.admin-body) .hero{grid-template-columns:1fr}body:not(.admin-body) .hero-copy{padding:48px 7% 28px}body:not(.admin-body) .hero h1{font-size:76px;max-width:630px}body:not(.admin-body) .hero-art{margin:10px 7% 65px;min-height:310px;padding:45px 35px 65px;border-radius:160px 160px 0 0}.hero-seal{display:none}body:not(.admin-body) .hero-art:before{border-radius:150px 150px 0 0}body:not(.admin-body) .hero-art img{max-width:600px}body:not(.admin-body) .hero-caption{bottom:15px}.experience-strip{margin:25px 5% 0;flex-wrap:wrap;justify-content:center;font-size:8px;gap:15px}body:not(.admin-body) .section{padding-block:65px}body:not(.admin-body) .about{gap:35px;padding:65px 7%}#events .event-grid{grid-template-columns:1fr}#events .event-card{grid-template-columns:170px 1fr}#amenity .room-grid{grid-template-columns:1fr 1fr}body:not(.admin-body) .room-card:nth-child(2){padding-top:0}}
@media(max-width:560px){body:not(.admin-body) .hero h1{font-size:61px;line-height:1;letter-spacing:-1.4px;margin-block:23px}body:not(.admin-body) .hero-copy{padding:38px 6% 28px}.hero-actions{gap:18px}.hero-actions .button{font-size:12px;padding:13px 19px}.hero-actions .text-link{font-size:11px;gap:14px}body:not(.admin-body) .hero-art{margin:0 6% 65px;min-height:230px;padding:35px 20px 55px;border-radius:120px 120px 0 0}body:not(.admin-body) .hero-art:before{border-radius:110px 110px 0 0}body:not(.admin-body) .hero-caption{font-size:6px;letter-spacing:1.5px;left:15px;right:15px}body:not(.admin-body) .booking-wrap{margin-top:-35px}body:not(.admin-body) .booking-wrap .search-bar{padding:20px}.experience-strip{display:none}body:not(.admin-body) .section-head{margin-bottom:30px}body:not(.admin-body) .section-head h2{font-size:43px}body:not(.admin-body) .room-image img{aspect-ratio:1.2}body:not(.admin-body) .room-image{border-radius:130px 130px 0 0}body:not(.admin-body) .room-grid{gap:36px}body:not(.admin-body) .about{grid-template-columns:1fr;gap:15px}body:not(.admin-body) .about h2{font-size:49px}body:not(.admin-body) .about .lead{font-size:24px}#events .event-card{grid-template-columns:110px 1fr}.event-card-copy{padding:18px 15px}.event-card-copy h3{font-size:30px}.event-card-copy p{font-size:11px}#amenity article{padding:20px 8px}#amenity article h3{font-size:26px}body:not(.admin-body) footer h2{font-size:42px}.motion-ready .reveal:not(.is-visible){transform:translateY(12px)}}
@media(prefers-reduced-motion:reduce){.motion-ready .reveal:not(.is-visible){opacity:1;transform:none}.hero-art img,.event-card,.button{transform:none!important}*{animation:none!important;transition:none!important}}
@media print{.motion-ready .reveal:not(.is-visible){opacity:1;transform:none}.experience-strip{display:none}}
