/* A shorter photo edit, a visible hotel link and optional sound. */
.hero .kicker a{color:inherit;text-decoration:none}.hero .kicker a:hover{text-decoration:underline;text-underline-offset:4px}
.villa-story .property-gallery-heading{max-width:680px}.villa-link{display:inline-flex;align-items:center;min-height:48px;margin-top:20px;color:#203b37;font-weight:600;font-size:1rem;text-underline-offset:5px}
.villa-photos{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;align-items:start}
.villa-photo{margin:0;min-width:0}.villa-photo img{position:static;display:block;width:100%;height:auto;border-radius:10px}.villa-photo figcaption{margin-top:12px;color:#46564e;font-size:.95rem;line-height:1.6}
.breakfast-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:500px;grid-auto-rows:auto}.breakfast-photo-featured{grid-column:auto;grid-row:auto}
.music-control{position:absolute;top:24px;left:clamp(28px,5vw,76px);z-index:2;max-width:calc(100% - 160px)}
#music-toggle{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid #a7afa5;border-radius:999px;background:transparent;color:#344c43;font:600 .85rem/1.3 Inter,Arial,sans-serif;cursor:pointer}
#music-toggle[hidden]{display:none}#music-toggle:hover{background:#e8e2d6}#music-toggle:focus-visible,.villa-link:focus-visible,.hero .kicker a:focus-visible{outline:3px solid #a77735;outline-offset:4px}
#music-toggle[aria-pressed="true"]{background:#e8d4ad;color:#203b37}.music-status{display:block;max-width:200px;font-size:.75rem;line-height:1.4;color:#43554b}.music-status:empty{display:none}
html[data-theme="dark"] .villa-link{color:#f6f1e7}html[data-theme="dark"] .villa-photo figcaption{color:#d1dbd3}
html[data-theme="dark"] #music-toggle{color:#e3ebe2;border-color:#9caf9f}html[data-theme="dark"] #music-toggle:hover{background:#30433a}html[data-theme="dark"] #music-toggle[aria-pressed="true"]{background:#e8d4ad;color:#203b37}html[data-theme="dark"] .music-status{color:#e3ebe2}
@media(max-width:1024px) and (min-width:769px){.music-control{left:28px}}
@media(max-width:768px){.villa-photos{grid-template-columns:minmax(0,1fr);gap:28px}.music-control{left:24px;top:20px}.breakfast-gallery-grid{grid-template-rows:420px}}
@media(max-width:520px){.breakfast-gallery-grid{display:flex;flex-direction:column}.breakfast-gallery-grid>.breakfast-photo{height:440px}}

/* Keep the requested stop control reachable while audio is active. */
.music-control.music-on{position:fixed;top:auto;left:16px;bottom:76px;z-index:30;max-width:calc(100vw - 32px)}

/* Quiet music control: same tap area and accessible name, less visual weight. */
#music-toggle{width:44px;height:44px;min-width:44px;min-height:44px;padding:0;justify-content:center;gap:0;border-color:#b8c0b7;background:#f7f4ee;color:#46564e;font-weight:400;box-shadow:none}
#music-toggle .music-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
#music-toggle>span[aria-hidden]{font-size:0;line-height:1}
#music-toggle>span[aria-hidden]::before{content:'♪';font-size:20px}
#music-toggle[aria-pressed="true"]{background:#f7f4ee;color:#46564e;border-color:#b8c0b7}
#music-toggle[aria-pressed="true"]>span[aria-hidden]::before{content:'Ⅱ';font-size:18px}
#music-toggle:hover,#music-toggle[aria-pressed="true"]:hover{background:#e8e2d6;color:#203b37;border-color:#84958a}
html[data-theme="dark"] #music-toggle,html[data-theme="dark"] #music-toggle[aria-pressed="true"]{background:#203b37;color:#d1dbd3;border-color:#607c6f}
html[data-theme="dark"] #music-toggle:hover,html[data-theme="dark"] #music-toggle[aria-pressed="true"]:hover{background:#30433a;color:#f6f1e7;border-color:#9caf9f}
