/* Isolated Roman composition. Existing site palette, buttons and shared shell retained. */
.roman-budget{--rx-surface:#eee4d5;--rx-paper:#f8f3ea;--rx-ink:#342a25;--rx-accent:#62452f}
.roman-budget .r-wrap{width:calc(100% - 64px);max-width:1280px;padding-inline:0}
.roman-budget h1{font-size:clamp(32px,4.4vw,62px);line-height:1.04;letter-spacing:-.035em;margin:0 0 24px}
.roman-budget h2{font-size:clamp(26px,3vw,40px);line-height:1.12;letter-spacing:-.025em;margin:0 0 24px;max-width:none}
.roman-budget h3{font-size:22px;letter-spacing:-.015em;line-height:1.25}
.roman-budget .r-section{padding-block:64px}.roman-budget .r-section+.r-section{border:0}
.roman-budget .rx-hero{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:48px;padding-block:40px 48px;align-items:center}
.roman-budget .rx-hero-copy{max-width:540px}.roman-budget .rx-hero .r-intro{font-size:21px;line-height:1.5}
.roman-budget .rx-hero-images{display:grid;grid-template-columns:minmax(0,3fr) minmax(100px,1fr);gap:12px;align-items:end}
.roman-budget .rx-hero figure{margin:0;min-width:0}.roman-budget .rx-hero .r-photo-open{border-radius:0}
.roman-budget .rx-hero .r-hero-photo .r-photo-open{height:460px}.roman-budget .rx-hero .r-hero-photo img{object-position:45% 50%}
.roman-budget .rx-detail-photo .r-photo-open{height:230px}.roman-budget .rx-detail-photo img{object-position:65% 50%}
.roman-budget figcaption{font-size:14px;line-height:1.45;color:#67574a}
.roman-budget .r-section:not(#roman-calculator) .r-note{font-size:14px;line-height:1.5;max-width:85ch}
.roman-budget .rx-text-link{display:inline-flex;align-items:center;min-height:44px;font-weight:600;font-size:16px;color:var(--rx-accent);text-underline-offset:5px}
.roman-budget .rx-path{display:flex;flex-wrap:wrap;gap:8px 32px;padding-block:16px;background:var(--rx-surface)}
.roman-budget .rx-path a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:5px;font-weight:600;font-size:16px;padding-inline:16px}
.roman-budget .r-system{display:block;background:var(--rx-surface);border:0;border-radius:0;padding:28px}
.roman-budget .r-system-photo{margin:20px 0}.roman-budget .r-system-photo img{border-radius:0;aspect-ratio:16/10;height:auto;object-fit:cover}
.roman-budget .r-system dl>div{border:0;gap:16px;padding-block:9px}.roman-budget .r-system dt,.roman-budget .r-system dd{font-size:16px}
.roman-budget .r-system .r-note{font-size:14px}.roman-budget .r-two{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.roman-budget #roman-motion{background:var(--rx-surface);padding:40px;margin-block:48px 0}
.roman-budget #roman-motion .r-two{max-width:none;min-height:350px;padding-right:340px}
.roman-budget #roman-motion .r-demo{width:280px}.roman-budget #roman-motion .r-demo-controls button{font-size:16px}
.roman-budget #roman-motion figcaption{font-size:14px;max-width:55ch}
.roman-budget #roman-photos .r-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.roman-budget .r-photo-grid .r-photo-open{border-radius:0;aspect-ratio:4/3}
.roman-budget #fabrics{background:var(--rx-surface);padding:40px}
.roman-budget .rf-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 18px}
.roman-budget .rf-card{border:0;border-radius:0;background:var(--rx-paper)}
.roman-budget .rf-copy{padding:18px}.roman-budget .rf-copy h3{font-size:19px;line-height:1.3;margin:10px 0}
.roman-budget .rf-photo img{aspect-ratio:4/3}.roman-budget .rf-copy .rf-category{font-size:14px;letter-spacing:0;text-transform:none;color:#62452f}
.roman-budget .rf-copy p{font-size:16px}.roman-budget .rf-copy .rf-meta{font-size:14px}
.roman-budget .rf-copy a{min-height:44px;display:inline-flex;align-items:center;font-size:15px}
.roman-budget #light .r-three article{background:none;border:0;border-radius:0;padding:0}
.roman-budget #details{background:var(--rx-surface);padding:40px}
.roman-budget #details .r-two{gap:48px}.roman-budget #details h3{font-size:21px}
.roman-budget .r-links>a{border:0;border-radius:0;background:var(--rx-surface)}
.roman-budget .r-links>a:focus-visible,.roman-budget :is(a,button,input,select,summary,[tabindex]):focus-visible{outline:3px solid #62452f;outline-offset:4px}
.roman-budget .rx-compare table{font-size:16px}.roman-budget .rx-compare th,.roman-budget .rx-compare td{font-size:16px;padding:16px;text-align:left}
.roman-budget .rx-compare th[scope=row]{width:30%;font-weight:600}
.roman-budget #faq{padding-top:32px}.roman-budget #faq summary{font-size:17px;min-height:48px;padding-block:14px}.roman-budget #faq details p{color:var(--rx-ink)}
@media(max-width:1100px){.roman-budget .rx-hero{gap:28px;grid-template-columns:1fr 1fr}.roman-budget .rx-hero-images{grid-template-columns:1fr}.roman-budget .rx-detail-photo{display:none}.roman-budget .rf-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.roman-budget #fabrics{padding:28px}.roman-budget #roman-motion .r-two{padding-right:300px}.roman-budget #roman-motion .r-demo{width:260px}}
@media(max-width:800px){.roman-budget .r-wrap{width:calc(100% - 40px)}.roman-budget .rx-hero{grid-template-columns:1fr 1fr;gap:24px}.roman-budget .rx-hero .r-intro{font-size:18px}.roman-budget .rx-hero .r-hero-photo .r-photo-open{height:400px}.roman-budget .rf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.roman-budget .r-system{padding:20px}.roman-budget .r-system dl>div{display:block}.roman-budget .r-system dd{text-align:left;max-width:none}.roman-budget #roman-motion{padding:28px}.roman-budget #roman-motion .r-two{display:grid;grid-template-columns:1fr 240px;padding:0;min-height:0;gap:20px}.roman-budget #roman-motion .r-hero-art{display:block}.roman-budget #roman-motion .r-demo{position:static;width:100%}.roman-budget #roman-motion .r-demo-controls{margin-top:14px}.roman-budget #details{padding:28px}}
@media(max-width:600px){.roman-budget .r-wrap{width:calc(100% - 32px)}.roman-budget h1{font-size:32px}.roman-budget h2{font-size:27px}.roman-budget .r-section{padding-block:40px}.roman-budget .rx-hero{grid-template-columns:1fr;padding-block:24px 28px;gap:24px}.roman-budget .rx-hero-copy{max-width:none}.roman-budget .rx-hero .r-hero-photo .r-photo-open{height:300px}.roman-budget .rx-hero .r-intro{font-size:18px}.roman-budget .rx-path{gap:0 8px;padding-block:12px}.roman-budget .rx-path a{font-size:14px;padding-inline:10px}.roman-budget .r-two{grid-template-columns:1fr}.roman-budget .r-system dl>div{display:flex}.roman-budget .r-system dd{text-align:right;max-width:60%}.roman-budget #roman-motion{margin-top:32px;padding:24px 18px}.roman-budget #roman-motion .r-two{grid-template-columns:1fr}.roman-budget #roman-motion .r-hero-art{width:min(100%,280px);justify-self:center}.roman-budget #roman-motion .r-demo-controls{justify-content:center}.roman-budget #roman-photos .r-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;overflow:visible}.roman-budget #roman-photos .r-photo-grid figure{min-width:0}.roman-budget #roman-photos figcaption{font-size:13px}.roman-budget #fabrics{padding:28px 16px}.roman-budget .rf-grid{grid-template-columns:1fr;gap:24px}.roman-budget .rf-card{display:grid;grid-template-columns:105px minmax(0,1fr);align-items:start}.roman-budget .rf-photo img{aspect-ratio:3/4}.roman-budget .rf-copy{padding:12px}.roman-budget .rf-copy h3{font-size:18px;margin:6px 0 10px}.roman-budget .rf-copy p{font-size:14px;margin-bottom:10px}.roman-budget .rf-copy a{font-size:14px;line-height:1.4}.roman-budget .rf-copy .rf-meta{font-size:13px}.roman-budget #details{padding:28px 20px}.roman-budget #details .r-two{gap:12px}.roman-budget .rx-compare th,.roman-budget .rx-compare td{font-size:14px;padding:10px 8px}.roman-budget .rx-compare th[scope=row]{width:28%}}
@media(prefers-reduced-motion:no-preference){.roman-budget .rx-hero-images{animation:rx-enter .55s cubic-bezier(.2,.7,.2,1)}.roman-budget .rx-hero-copy{animation:rx-enter .4s cubic-bezier(.2,.7,.2,1)}@keyframes rx-enter{from{transform:translateY(12px);opacity:.65}to{transform:translateY(0);opacity:1}}}
