/* Shared final integration: no external fonts, booking actions use the established gold. */
[hidden]{display:none!important}.has-dialog{overflow:hidden}.sr-only,.bot-field{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:8px;left:12px;z-index:1000;background:#e3c792;color:#122137;padding:12px 18px;transform:translateY(-160%)}.skip-link:focus{transform:none}button,a,input,select,textarea{touch-action:manipulation}button:disabled{cursor:default;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #ac7c35;outline-offset:4px}.gold{background:linear-gradient(125deg,#e3c792,#ccb079)}.extra-fields{margin-top:18px;font-size:12px}.extra-fields summary{min-height:44px;display:flex;align-items:center;cursor:pointer}.extra-fields .form-fields{padding-top:12px}.request-status{font-size:13px;line-height:1.7;padding:12px;border-left:2px solid #b48b4c;background:#e9e3d8}.request-status[data-state=success]{border-color:#417253}.request-status[data-state=error]{border-color:#a45a3c}#example-status{font-size:11px}#request-text{width:100%;min-height:160px;font:13px/1.7 Arial,sans-serif;border:1px solid #cbbda4;padding:12px;margin:12px 0}footer nav{flex-wrap:wrap}.copy .details-small,.details-small{font-size:11px;color:#7b7b75;line-height:1.7}.nav-links{gap:22px}
/* Existing two-photo gallery, including the complete portrait framing. */
.dj-gallery{min-width:0}.dj-photos{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;aspect-ratio:1.2}.dj-photos::-webkit-scrollbar{display:none}.dj-photos>a{flex:0 0 100%;width:100%;height:100%;scroll-snap-align:start;background:#eee9e0;overflow:hidden}.dj-photos .dj-photo{display:block;padding:0;border-radius:2px}.dj-photos img{display:block;width:100%;height:100%;object-fit:cover;object-position:55% 38%}.dj-photos svg{display:block;width:100%;height:100%;background:#fff}.dj-gallery-controls{display:flex;align-items:center;justify-content:space-between;padding:13px 0;color:#7e725f;font-size:11px}.dj-gallery-arrows{display:flex;align-items:center;gap:13px}.dj-gallery-arrows button{width:44px;height:44px;background:transparent;border:1px solid #cfc1a7;color:#67543a;border-radius:50%;font-size:19px}.dj-gallery-arrows span{min-width:35px;text-align:center}
/* Original interactive room remains an optional, in-page detail. */
.room-disclosure{max-width:1215px;width:calc(100% - 80px);margin:40px auto 0;border-top:1px solid #d9bd8650}.room-disclosure>summary{display:flex;justify-content:space-between;padding:20px 0;cursor:pointer;font-size:13px;color:#dfc99f}.room-section.wrap{width:100%;margin:0}.room-intro{display:flex;align-items:end;justify-content:space-between;gap:30px;margin:25px 0}.room-intro h3{font:400 32px Georgia,serif;margin:0}.room-intro>p{max-width:48ch;font-size:12px;color:#c3cbd5}.room-card{display:grid;grid-template-columns:1fr 260px;border:1px solid #d9bd8650;overflow:hidden;border-radius:8px}.room-stage{position:relative;min-height:380px;background:#111428}.room-badge{position:absolute;top:14px;left:14px;z-index:1;background:#111d31e8;padding:7px 10px;font-size:10px;color:#dbc49b;border-radius:3px}.room-cover{min-height:380px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:30px}.room-cover p{font-size:13px}.room-cover-orbit{font:40px Georgia,serif;color:#e3c792}#room-start{background:linear-gradient(125deg,#e3c792,#ccb079);padding:14px 18px;border:0;border-radius:4px;color:#122137;font-size:12px}#room-canvas{display:block;width:100%;height:380px;touch-action:none}.room-controls{padding:12px;display:flex;flex-wrap:wrap;gap:8px}.room-controls button{min-width:44px;min-height:44px;border:1px solid #d9bd8660;background:#102037;color:#eee3ce;padding:9px 12px}.room-controls button[aria-pressed=true]{background:#d9bd86;color:#122137}.room-positions,.room-look{display:flex;flex-wrap:wrap;gap:6px}.room-controls p{font-size:10px;color:#bdc8d6;margin:6px}.room-plan{padding:25px;background:#101d30}.room-plan .plan-size{font:35px Georgia,serif;color:#d9bd86}.room-plan .plan-size span{font:12px Arial,sans-serif}.room-plan svg{width:100%;max-height:280px;margin-top:15px}.room-plan svg text{fill:#dfc99f;font:12px Arial,sans-serif}.room-plan svg .plan-area{font-size:24px}.room-plan svg .plan-sub{font-size:9px}.room-plan>p:last-child,.room-disclaimer,.info-disclosure p{color:#b9c4d3;font-size:11px;line-height:1.8}.info-disclosure summary{padding:16px 0;font-size:11px;cursor:pointer}.info-disclosure{border-top:1px solid #d9bd8633;margin-top:12px}
/* The smallest YouTube viewport is 200 × 200. Never hide or cover the video. */
.music-dock{position:fixed;z-index:25;right:20px;bottom:20px;width:212px;max-width:calc(100vw - 24px);padding:5px;background:#102037;color:#f5f1e9;border:1px solid #d9bd8666;border-radius:8px;box-shadow:0 15px 45px #0004}.dock-bar{display:flex;align-items:center;justify-content:space-between;gap:4px;min-height:44px}.dock-bar>strong{font-size:10px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:66px}.dock-bar>div{display:flex;align-items:center}.dock-bar button{width:40px;height:44px;min-width:40px;border:0;background:transparent;color:#e3c792;font-size:21px;padding:0}.dock-video,.dock-video>iframe,.dock-video>div{display:block;width:200px;height:200px;border:0}.dock-intro{width:200px;min-height:200px;background:#091525;display:flex;align-items:center;justify-content:center;font-size:12px}.dock-details{display:none}.music-dock.is-left{left:20px;right:auto}.music-dock.is-expanded{width:min(500px,calc(100vw - 24px));padding:12px;max-height:calc(100dvh - 115px);overflow:auto}.is-expanded .dock-bar>strong{font-size:14px;max-width:calc(100% - 125px)}.is-expanded .dock-video,.is-expanded .dock-video>iframe,.is-expanded .dock-video>div{width:100%;height:max(200px,calc((min(500px,100vw - 24px) - 26px)*.5625))}.is-expanded .dock-intro{width:100%;min-height:200px}.is-expanded .dock-details{display:block}.dock-details>p{font-size:11px;line-height:1.6;margin:10px 0;color:#bfcbd9}.dock-transport{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.dock-transport>button{min-height:44px;padding:8px 13px;background:transparent;border:1px solid #d9bd8655;color:#e3c792;border-radius:4px;font-size:11px}.dock-transport label{display:flex;align-items:center;gap:10px;font-size:10px;color:#bfcbd9}.dock-transport input{width:110px;accent-color:#d9bd86}.dock-tracklist{border-top:1px solid #d9bd8633;margin-top:14px}.dock-tracklist summary{font-size:11px;cursor:pointer;padding:15px 0;min-height:44px}.dock-tracklist summary>span{float:right;color:#aab7c9}.dock-tracklist button{display:grid;grid-template-columns:22px 1fr 20px;gap:8px;width:100%;padding:10px 5px;text-align:left;background:transparent;border:0;border-top:1px solid #fff1;color:#e3e6eb;font-size:11px;min-height:44px}.dock-tracklist button[aria-pressed=true]{color:#e3c792;background:#e3c7920a}.dock-tracklist small{display:block;font-size:9px;color:#9dacc0}.dock-links{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #d9bd8633;margin-top:12px}.dock-links>*{font-size:10px;min-height:44px;background:transparent;border:0;color:#e3c792;padding:10px 0;display:flex;align-items:center}.youtube-choices #youtube-consent-accept{background:linear-gradient(125deg,#e3c792,#ccb079);color:#122137}.youtube-choices #youtube-consent-decline{background:transparent}
/* Authentic reviews: no sample testimonials, no invented aggregate score. */
.reviews-section{background:#eae5dc;padding:75px 0;color:#172438;border-top:1px solid #d8cebf}.review-intro{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:center}.review-intro h2{font:400 clamp(38px,4.5vw,60px)/1.08 Georgia,serif;letter-spacing:-.04em;margin:0 0 24px}.review-intro p:not(.eyebrow):not(.details-small){font-size:14px;color:#677078;max-width:42ch;line-height:1.8;margin-bottom:22px}.review-summary{border:1px solid #cfc0a8;min-height:245px;padding:35px;display:flex;flex-direction:column;align-items:start;justify-content:center;background:#f5f1e980}.review-outline-stars{color:#aa8241;font-size:27px;letter-spacing:3px;margin-bottom:20px}#review-score strong{display:block;font:400 31px/1.2 Georgia,serif;letter-spacing:-.025em;margin-bottom:14px}#review-score span{display:block;color:#777b7d;font-size:12px;max-width:28ch;line-height:1.7}.review-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:35px}.review-list:empty{margin:0}.review-card{padding:26px;background:#f8f5ef;border:1px solid #d9cebd}.review-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.review-stars{color:#a27a36;font-size:17px;letter-spacing:2px}.review-service{font-size:10px;color:#7e725f}.review-card blockquote{margin:25px 0;font:400 20px/1.5 Georgia,serif;white-space:pre-wrap;overflow-wrap:anywhere}.review-card-footer{border-top:1px solid #d8cebf;padding-top:15px;display:flex;flex-direction:column;gap:5px;font-size:12px}.review-card-footer time{font-size:10px;color:#7b7b75}.review-verified{font-size:9px;color:#51745c;margin-top:7px}.review-policy{font-size:10px;color:#7e7d76;line-height:1.8;max-width:95ch;margin-top:32px}.review-policy a,.review-rules a{color:#8c6b35;text-decoration:underline;text-underline-offset:3px}.review-rules{font-size:11px;color:#6d757c;line-height:1.8}.review-rules summary{min-height:44px;display:flex;align-items:center;cursor:pointer}.review-rules p{max-width:95ch}.review-more{min-height:44px;border:1px solid #b6a17e;color:#75592f;background:transparent;padding:10px 18px;margin-top:25px}.star-field{padding:0;border:0;margin:23px 0}.star-field legend{font-size:12px}.star-options{display:flex;gap:2px;margin-top:10px}.star-options label{position:relative;cursor:pointer;width:44px;height:48px;color:#c8c0b3;display:grid;place-items:center;font-size:36px}.star-options input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.star-options label.selected{color:#a77c31}.star-options label:focus-within{outline:2px solid #ac7c35;outline-offset:2px}.star-options+p{font-size:11px;color:#7b7b75;margin:4px 0 0}.review-consent{display:flex;align-items:start;gap:10px;margin:20px 0 12px;font-size:11px;line-height:1.8;color:#626d77}.review-consent input{flex:0 0 auto;width:18px;height:18px;accent-color:#a77c31;margin:1px 0 0}.review-dialog .legal-note{margin-bottom:20px}.review-dialog .legal-note a{text-decoration:underline}.admin-page{background:#f5f1e9;color:#172438}.admin-page main{max-width:1000px;padding:40px 0 90px}.admin-page h1{font:400 clamp(40px,5vw,65px)/1.1 Georgia,serif;letter-spacing:-.04em}.admin-page main>p{max-width:75ch;font-size:14px;line-height:1.8}.admin-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:30px 0}.admin-tabs button{min-height:44px;border:1px solid #cfc1a7;padding:10px 20px;background:transparent}.admin-tabs button[aria-pressed=true]{background:#122137;color:#f5f1e9}.admin-card{background:#fffaf2;border:1px solid #d2c3ab;padding:25px;margin:20px 0}.admin-card h2{font:28px Georgia,serif}.admin-card p{font-size:12px;overflow-wrap:anywhere}.admin-card blockquote{margin:25px 0;font:20px/1.6 Georgia,serif;white-space:pre-wrap;overflow-wrap:anywhere}.admin-card textarea{width:100%;min-height:90px;font:14px/1.7 Arial,sans-serif;border:1px solid #cfc1a7;padding:12px;margin:10px 0 20px}
@media(max-width:1040px){.nav-links{gap:13px}.nav{gap:18px}.nav>.gold{padding:12px 16px;font-size:11px}.review-intro{gap:35px}}
@media(max-width:760px){.room-disclosure{width:calc(100% - 40px);margin-top:25px}.room-intro{display:block}.room-intro>p{margin-top:15px}.room-card{grid-template-columns:1fr}.room-stage,.room-cover{min-height:280px}#room-canvas{height:280px}.room-plan{display:none}.music-dock{right:12px;bottom:86px}.music-dock.is-left{left:12px}.music-dock.is-expanded{bottom:86px;max-height:calc(100dvh - 175px)}.review-intro{grid-template-columns:1fr;gap:26px}.reviews-section{padding:45px 0}.review-intro h2{font-size:39px}.review-intro p:not(.eyebrow):not(.details-small){font-size:13px}.review-summary{min-height:190px;padding:25px}.review-outline-stars{font-size:24px;margin-bottom:15px}#review-score strong{font-size:27px}.review-list{grid-template-columns:1fr;gap:14px;margin-top:25px}.review-card{padding:23px}.review-card blockquote{font-size:20px}.review-policy{font-size:10px}.review-rules{font-size:11px}.review-dialog .intro{font-size:13px}.review-dialog form{padding:30px 22px}.admin-page .actions{flex-wrap:wrap}.request-dialog input,.request-dialog textarea,.request-dialog select{font-size:16px}.nav{gap:12px}.mobile-menu nav a{min-height:44px}footer nav{gap:16px}}

/* Keyboard focus remains visible beside the sticky header and music dock. */
html{scroll-padding-bottom:110px}a,button,input,select,textarea,summary{scroll-margin-block:120px 110px}.contact-list a{color:#e3c792}@media(max-width:760px){.room-plan{display:block;text-align:center}.room-plan svg{width:220px;max-height:230px;display:block;margin:15px auto}.room-plan .eyebrow{margin-top:0}}

/* A translucent frame surrounds the unmodified, fully visible YouTube video. */
.music-dock{background:rgba(16,32,55,.16);border-color:rgba(217,189,134,.32);box-shadow:0 6px 24px #08132222;backdrop-filter:none}.dock-bar{border-radius:5px;background:rgba(13,25,42,.64)}.dock-bar .dock-drag{display:flex;align-items:center;justify-content:flex-start;gap:4px;flex:1 1 auto;min-width:0;width:auto;padding:0 4px;cursor:grab;touch-action:none;user-select:none;color:#f5f1e9;text-align:left}.dock-drag .dock-grip{flex:none;font-size:19px;color:#e3c792}.dock-drag strong{font:400 10px/1.4 Arial,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.dock-bar>div{flex:none}.dock-bar>div>button{background:transparent}.is-dragging .dock-drag{cursor:grabbing}.music-dock.is-dragging{box-shadow:0 10px 30px #08132233}.music-dock.is-expanded{background:rgba(16,32,55,.88);max-height:none;overflow:visible}.is-expanded .dock-drag strong{font-size:14px}.is-expanded .dock-details{max-height:max(0px,calc(100dvh - 480px));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:0 3px}.music-dock.has-position{right:auto;bottom:auto}.music-dock .dock-video,.music-dock iframe{opacity:1;filter:none}.dock-transport #music-follow{border-color:#d9bd8680}.dock-transport #music-follow[aria-pressed=true]{background:#d9bd8615}.dock-drag:focus-visible{outline:2px solid #e3c792;outline-offset:2px}@media(prefers-reduced-transparency:reduce){.music-dock{background:#102037}.dock-bar{background:#0d192a}}

.dock-bar{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}

/* A direct review invitation and an optional radio switch, without a floating player. */
.review-summary{min-height:190px;padding:28px}.review-summary h3{font:400 26px/1.2 Georgia,serif;letter-spacing:-.025em;margin:0 0 18px}.review-intro .review-summary p{font-size:12px;line-height:1.6;margin:10px 0 0;color:#657078}.review-quick-stars{display:flex;gap:7px;max-width:100%}.review-quick-stars button{display:grid;place-items:center;width:48px;height:48px;padding:0;flex:0 0 48px;border:1px solid #b6a17e;background:#f8f5ef;color:#946a2d;font-size:31px;border-radius:4px;cursor:pointer}.review-quick-stars button:hover{background:#e7d4af}.review-quick-stars button:active{background:#d9bd86}.review-rating-result{display:flex;align-items:center;gap:14px;margin:0 0 20px}.review-rating-result .review-outline-stars{font-size:21px;letter-spacing:0;margin:0}.review-rating-result #review-score strong{font:600 17px/1.3 Arial,sans-serif;letter-spacing:0;margin:0}.review-rating-result #review-score span{font-size:11px}.review-intro>.review-summary .review-quick-stars+p{max-width:none}.radio-feedback{position:fixed;right:20px;top:100px;z-index:65;max-width:min(360px,calc(100vw - 40px));background:#142238;color:#eee7d9;padding:18px 42px 18px 18px;border:1px solid #d9bd8680;box-shadow:0 8px 30px #0002;font-size:13px;line-height:1.6}.radio-feedback a{display:block;color:#e3c792;margin-top:8px;text-decoration:underline}.radio-feedback button{position:absolute;right:2px;top:2px;width:36px;height:36px;color:#e3c792;background:transparent;border:0;font-size:24px}.youtube-choices #radio-consent-accept{background:linear-gradient(125deg,#e3c792,#ccb079);color:#122137}.youtube-choices #radio-consent-decline{background:transparent}.review-load-status{margin-top:16px}
@media(max-width:760px){.review-intro h2{font-size:35px;margin-bottom:18px}.review-intro{gap:22px}.review-intro>div>p:not(.eyebrow):not(.details-small){line-height:1.65;margin-bottom:20px}.review-summary{min-height:0;padding:22px}.review-summary h3{font-size:24px;margin-bottom:14px}.review-intro>div>.details-small{margin-top:12px;margin-bottom:0}.review-quick-stars{gap:6px}.review-quick-stars button{width:46px;height:46px;flex-basis:46px}.reviews-section{padding:38px 0}.review-policy{margin-top:22px}.radio-feedback{top:88px}}
@media(max-width:340px){.review-quick-stars{gap:4px}.review-quick-stars button{width:42px;height:44px;flex-basis:42px}.review-summary{padding:18px}}
