.evening-rhythm{--rhythm-accent:#eecbc9;position:relative;padding-top:100px;padding-bottom:100px;scroll-margin-top:45px;isolation:isolate}
.evening-rhythm:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse 42% 44% at 58% 50%,#23302988 0%,#1b281f55 32%,#13201922 60%,#08080800 100%)}
.rhythm-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:38px;color:#99ac93}
.rhythm-top .eyebrow{margin:0}
.rhythm-hint{font-size:11px;color:#aab3a5}
.rhythm-stage{display:grid;grid-template-columns:.82fr 1.18fr;gap:65px;align-items:center}
.rhythm-copy{min-width:0}
.rhythm-heading{font-size:clamp(38px,4.3vw,58px);line-height:1.06;font-weight:500;letter-spacing:-.05em;margin:0 0 28px;color:#f2f0e8;text-transform:uppercase}
.rhythm-heading span{display:block;color:var(--rhythm-accent);transition:color .7s}
.rhythm-description{font-size:14px;line-height:1.9;color:#b6bfb0;max-width:300px;min-height:80px;margin:0 0 25px}
.rhythm-link{display:inline-flex;gap:22px;align-items:center;font-size:13px;color:#ead3cf;text-decoration:none;padding-bottom:10px;border-bottom:1px solid #ead3cf55}
.rhythm-link svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.3}
.rhythm-visual{position:relative;min-width:0;aspect-ratio:6/5;perspective:1000px}
.rhythm-image-stack{position:absolute;inset:0;overflow:hidden;background:#131713;clip-path:inset(0 0 0 0);transform:translate3d(var(--drift-x,0px),var(--drift-y,0px),0);transition:transform .8s cubic-bezier(.2,.65,.3,1)}
.rhythm-image-stack:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#08080805 45%,#08080899);pointer-events:none}
.rhythm-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.1);filter:brightness(.85) saturate(.78);transition:opacity .9s ease,transform 1.6s cubic-bezier(.2,.65,.3,1)}
.rhythm-image.is-active{opacity:1;transform:scale(1)}
.rhythm-image[data-scene="dinner"]{object-position:50% 52%;filter:brightness(1) saturate(.9)}
.rhythm-image[data-scene="music"]{object-position:65% 45%}
.rhythm-caption{position:absolute;left:25px;right:25px;bottom:25px;display:flex;justify-content:space-between;align-items:end;z-index:2;color:#fff0e9;pointer-events:none}
.rhythm-counter{font-size:70px;line-height:.9;letter-spacing:-.08em;font-weight:400;opacity:.8;font-variant-numeric:tabular-nums}
.rhythm-caption small{font-size:10px;letter-spacing:.14em;text-transform:uppercase;text-align:right;max-width:130px;line-height:1.7}
.rhythm-corner{position:absolute;inset:-12px 18px 18px -12px;border-top:1px solid #9cb4944d;border-left:1px solid #9cb4944d;pointer-events:none;z-index:-1}
.rhythm-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:42px}
.rhythm-tab{position:relative;display:flex;align-items:center;gap:16px;padding:20px 0;border:0;border-top:1px solid #9cb49440;background:transparent;color:#8f9c88;text-align:left;font:500 16px Manrope,Arial,sans-serif;cursor:pointer;transition:color .4s}
.rhythm-tab:before{content:"";position:absolute;left:0;right:0;top:-1px;height:1px;background:#eecbc9;transform:scaleX(0);transform-origin:left;transition:transform .6s cubic-bezier(.2,.65,.3,1)}
.rhythm-tab[aria-pressed="true"]{color:#f0d5d1}
.rhythm-tab[aria-pressed="true"]:before{transform:scaleX(1)}
.rhythm-tab small{font-size:10px;font-weight:400;letter-spacing:.08em}
.rhythm-tab svg{margin-left:auto;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.2}
.rhythm-tab:hover{color:#f2f0e8}
.rhythm-tab:focus-visible,.rhythm-link:focus-visible{outline:2px solid #9cb494;outline-offset:7px}
.rhythm-copy.is-switching{animation:rhythm-copy-in .65s ease both}
.rhythm-visual.is-visible .rhythm-image-stack{animation:rhythm-reveal 1.3s cubic-bezier(.2,.65,.3,1) both}
.rhythm-bars{display:flex;gap:4px;align-items:center;height:30px;margin-top:14px;opacity:0;transition:opacity .5s}
.evening-rhythm[data-active="music"] .rhythm-bars{opacity:.7}
.rhythm-bars i{width:2px;height:12px;background:#eecbc9;animation:rhythm-beat 1.3s ease-in-out infinite;animation-delay:calc(var(--i)*-.17s)}
.rhythm-preview-label{position:fixed;bottom:16px;left:16px;z-index:35;padding:10px 14px;background:#0c110ee8;border:1px solid #9cb49440;font-size:11px;color:#aab5a3;border-radius:5px}
.rhythm-preview-label a{color:#eecbc9;margin-left:20px;text-decoration:none}
@keyframes rhythm-copy-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes rhythm-reveal{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes rhythm-beat{0%,100%{transform:scaleY(.4)}50%{transform:scaleY(1.8)}}
@media(max-width:900px){.rhythm-stage{gap:35px}.rhythm-heading{font-size:40px}.rhythm-visual{aspect-ratio:4/5}.evening-rhythm{padding-top:65px;padding-bottom:65px}}
@media(max-width:640px){.rhythm-top{display:block;margin-bottom:25px}.rhythm-hint{display:block;margin-top:10px}.rhythm-stage{grid-template-columns:1fr;gap:28px}.rhythm-heading{font-size:38px;margin-bottom:18px}.rhythm-description{min-height:0;margin-bottom:18px;max-width:330px;font-size:13px}.rhythm-visual{aspect-ratio:6/5}.rhythm-counter{font-size:55px}.rhythm-caption{left:18px;right:18px;bottom:18px}.rhythm-tabs{gap:16px;margin-top:24px}.rhythm-tab{font-size:12px;gap:8px;padding:16px 0}.rhythm-tab svg{display:none}.rhythm-tab small{font-size:9px}.rhythm-bars{position:absolute;right:25px;top:45px}.rhythm-preview-label{font-size:10px;left:10px;bottom:10px}}
@media(prefers-reduced-motion:reduce){.evening-rhythm *,.evening-rhythm *:before{animation:none!important;transition:none!important}.rhythm-image-stack{transform:none}.rhythm-bars i{transform:none}}
