/* RHYVIA rhythm bed: an editorial continuation of the chair collection. */
.rhythm-bed{background:#f1ede5;border-top:1px solid #ddd5c7;position:relative;overflow:hidden}
.bed-heading{text-align:center;max-width:960px;margin:0 auto 48px}
.bed-heading .eyebrow{justify-content:center;gap:18px}
.bed-heading .eyebrow::before,.bed-heading .eyebrow::after{content:"";width:40px;height:1px;background:#bba88880}
.bed-heading h2{margin:25px 0 22px;font-size:clamp(36px,4.1vw,62px);line-height:1.22}
.bed-heading .section-lead{max-width:750px;margin:auto}
.bed-scene{position:relative;aspect-ratio:1.55;overflow:hidden;border-radius:8px;background:#e6ddce;isolation:isolate}
.bed-scene .bed-photo{object-position:center;transition:transform 1.4s var(--ease)}
.bed-scene::after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#302b243d);pointer-events:none}
.bed-order-tag,.bed-view{position:absolute;display:flex;align-items:center;gap:16px;z-index:1;padding:13px 19px;border:1px solid #fff8;border-radius:30px;background:rgba(247,245,240,.66);backdrop-filter:blur(24px) saturate(115%);-webkit-backdrop-filter:blur(24px) saturate(115%);color:var(--ink);font-size:11px;letter-spacing:.08em;min-height:44px;transition:background .3s,box-shadow .3s}
.bed-order-tag{right:25px;top:25px}
.bed-view{right:25px;bottom:25px;letter-spacing:0;font-size:12px}
.bed-view[hidden]{display:none}
.bed-view svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.3}
.bed-scene-caption{position:absolute;bottom:37px;left:30px;color:#fffaf0;z-index:1;font-size:11px;letter-spacing:.16em;text-shadow:0 1px 12px #302b2480}
.bed-experience{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;padding:80px 0 40px}
.bed-experience h2{margin-top:18px}
.bed-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.bed-feature{position:relative;padding:32px 30px 36px;border:1px solid #fff9;border-radius:8px;background:linear-gradient(135deg,#fffdf891,#f8f4ec55);box-shadow:inset 0 1px #fff8}
.bed-feature-number{position:absolute;right:24px;top:23px;font-family:var(--serif);font-size:14px;color:#a49376}
.bed-feature-icon{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;border:1px solid #aa927460;color:#967b52;background:#f7f1e6;transition:transform .6s var(--ease),background .6s}
.bed-feature-icon svg{width:36px;height:36px;stroke:currentColor;stroke-width:1.3;fill:none;stroke-linecap:round;stroke-linejoin:round}
.bed-feature h3{font-family:var(--serif);font-size:25px;margin:23px 0 12px}
.bed-feature p{font-size:14px;line-height:1.85;color:var(--muted);max-width:280px}
.bed-inquiry{display:flex;justify-content:space-between;align-items:center;gap:50px;margin-top:55px;padding:48px 0 0;border-top:1px solid #b8a68b70;scroll-margin-top:110px}
.bed-inquiry h2{font-size:clamp(30px,3.1vw,44px);margin:14px 0 18px}
.bed-inquiry .section-lead{max-width:610px}
.bed-inquiry .button{flex-shrink:0;margin:0;background:#92764f;color:#fffaf0;gap:30px}
.bed-inquiry .button span:last-child{transition:transform .35s var(--ease)}
.bed-dialog{border:1px solid #d9cfbe;border-radius:10px;padding:0;background:var(--paper);color:var(--ink);width:min(1180px,94vw);max-width:94vw;max-height:92vh;max-height:92svh;box-shadow:0 30px 100px #25221c55}
.bed-dialog::backdrop{background:#29271f99;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.bed-dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 20px;font-size:12px;letter-spacing:.05em}
.bed-dialog-bar button{display:flex;align-items:center;gap:14px;min-height:44px;padding:0 10px}
.bed-dialog-bar button span:last-child{font-size:27px;font-weight:300}
.bed-dialog>img{display:block;width:100%;height:auto;max-height:calc(92svh - 65px);object-fit:contain}
.rhythm-bed :is(a,button):focus-visible,.bed-dialog button:focus-visible{outline:2px solid #82643d;outline-offset:4px}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .bed-scene:hover .bed-photo{transform:scale(1.025)}
 .bed-order-tag:hover,.bed-view:hover{background:#faf7eeeb;box-shadow:0 6px 22px #302b241a}
 .bed-feature:hover .bed-feature-icon{transform:translateY(-4px);background:#ede0cb}
 .bed-inquiry .button:hover span:last-child{transform:translate(3px,-3px)}
}
@media(prefers-reduced-motion:no-preference){.bed-dialog[open]{animation:bed-dialog-enter .35s var(--ease)}@keyframes bed-dialog-enter{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}}
@media(max-width:900px){.bed-feature{padding:26px 21px}.bed-feature h3{font-size:22px}.bed-inquiry{align-items:flex-start;gap:30px;flex-direction:column}}
@media(max-width:760px){
 .bed-heading{margin-bottom:30px}.bed-heading h2{font-size:34px;line-height:1.3;margin:20px 0}.bed-heading .section-lead br{display:none}
 .bed-scene{aspect-ratio:1.45;margin:0 calc(-1 * var(--gutter))!important;border-radius:0}.bed-scene .bed-photo{object-position:center}
 .bed-order-tag{top:16px;right:16px;padding:9px 15px;font-size:10px}.bed-view{right:16px;bottom:16px;padding:9px 13px;font-size:11px;gap:8px}
 .bed-scene-caption{left:20px;bottom:31px;font-size:9px;letter-spacing:.09em}
 .bed-experience{grid-template-columns:1fr;gap:20px;padding:45px 0 28px}.bed-experience h2{font-size:31px;margin-top:15px}
 .bed-features{grid-template-columns:1fr;gap:12px}.bed-feature{padding:23px 22px 23px 99px;min-height:116px}.bed-feature-icon{position:absolute;left:22px;top:25px;width:56px;height:56px}.bed-feature h3{font-size:23px;margin:0 22px 8px 0}.bed-feature p{font-size:14px;max-width:none}.bed-feature-number{right:17px;top:20px;font-size:11px}
 .bed-inquiry{margin-top:35px;padding-top:32px;gap:25px}.bed-inquiry h2{font-size:31px}.bed-inquiry .button{width:100%;justify-content:space-between;font-size:13px;padding:19px 22px}
 .bed-dialog-bar{padding:6px 10px}.bed-dialog-bar button{gap:10px}
}

/* Special-order collections: full product compositions, three across. */
.product-ranges{margin-top:80px}
.product-range{scroll-margin-top:110px}
.product-range+.product-range{margin-top:58px;padding-top:48px;border-top:1px solid #b8a68b70}
.product-range-heading{text-align:center;margin:0 auto 30px;max-width:1000px}
.product-range-heading h3{font:400 clamp(28px,3vw,46px)/1.22 var(--serif);letter-spacing:.025em}
.product-range-heading .section-lead{margin:12px auto 20px;font-size:16px;max-width:760px}
.product-range-heading .button{margin:0;background:transparent;color:var(--ink);border:1px solid #ad9f8b;border-radius:30px;padding:12px 24px;min-height:44px;font-size:11px;letter-spacing:.12em;gap:25px}
.product-range-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.product-range-card{position:relative;display:block;aspect-ratio:4/3;border-radius:8px;overflow:hidden;background:#e6ddce;isolation:isolate}
.product-range-card>img{display:block;width:100%;height:100%;object-fit:cover}
.product-range-view{position:absolute;bottom:14px;right:14px;display:flex;align-items:center;gap:12px;padding:9px 14px;border-radius:24px;border:1px solid #fff8;background:rgba(247,245,240,.78);backdrop-filter:blur(16px);font-size:11px;color:var(--ink)}
.product-range-view>span:last-child{font-size:18px;line-height:1}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
.product-range-card>img{transition:transform 1s var(--ease)}
.product-range-card:hover>img{transform:scale(1.035)}
.product-range-view{transition:background .3s,transform .4s var(--ease)}
.product-range-card:hover .product-range-view{background:#faf7eef2;transform:translateY(-3px)}
}
@media(max-width:760px){
.product-ranges{margin-top:48px}
.product-range+.product-range{margin-top:38px;padding-top:36px}
.product-range-heading{margin-bottom:24px}
.product-range-heading h3{font-size:29px}
.product-range-heading .section-lead{font-size:14px;margin:12px auto 18px}
.product-range-grid{grid-template-columns:1fr;gap:16px}
.product-range-view{bottom:12px;right:12px}
}
