/* Residential listing marketing (/services/residential-listing-marketing/).
   Content is visible without JavaScript; .rl-armed (residential.js) arms the reveal states.
   Loops run only with prefers-reduced-motion: no-preference. */
.rl{--rl-ease:cubic-bezier(.32,.72,0,1);--rl-spring:cubic-bezier(.34,1.56,.64,1);--rl-paper2:#e9e7dc}
.rl em{font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:450;letter-spacing:-.05em;text-transform:none}
.rl .eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin:0 0 24px}
.rl .button{display:inline-flex;align-items:center;gap:12px;background:var(--ink);color:var(--paper);padding:16px 24px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .5s var(--rl-spring),background .4s var(--rl-ease),color .4s var(--rl-ease)}
.rl .button:hover{background:var(--acid);color:var(--ink);transform:translateY(-2px)}
.rl .button:active{transform:translateY(1px)}
.rl a:focus-visible,.rl summary:focus-visible{outline:2px solid var(--ink);outline-offset:4px}

/* Hero */
.rl-hero{padding-top:32px}
.rl-topline{display:flex;justify-content:space-between;gap:24px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid var(--ink);padding-bottom:12px}
.rl-topline a{color:inherit}
.rl-hero-row{display:grid;grid-template-columns:1.45fr .8fr;gap:48px;align-items:end;padding:64px 0 48px}
.rl-hero h1{font-family:var(--display);font-weight:900;font-size:clamp(52px,9.4vw,150px);line-height:.86;letter-spacing:-.068em;margin:0}
.rl-line{display:block;overflow:hidden;padding-block:.04em .02em;margin-block:-.04em -.02em}
.rl-hero h1 em{display:block;font-size:.5em;line-height:1.1;margin-top:12px}
.rl-hero-lede p{font-size:16px;line-height:1.7;margin:0 0 24px;max-width:44ch;text-wrap:pretty}
.rl-hero-lede .rl-hero-phone{font-size:13px;margin:16px 0 0;color:var(--muted)}
.rl-hero-phone a{color:var(--ink)}
@media(prefers-reduced-motion:no-preference){
 .rl-hero .mo-word{animation:mo-rise 1.1s var(--rl-ease) both}
 .rl-hero .rl-line+.rl-line .mo-word{animation-delay:.12s}
 .rl-hero h1 em,.rl-hero-lede{animation:mo-fade-up 1s .35s var(--rl-ease) both}
}

/* Hero scene */
.rl-scene{background:var(--ink);color:var(--paper);overflow:hidden}
.rl-scene-art{display:block;width:100%;height:auto;aspect-ratio:1200/500;max-height:78vh;margin-inline:auto}
.rl-scene-art .rl-draw{fill:none;stroke:var(--paper);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.rl-scene-art .rl-soft{stroke-opacity:.4;stroke-width:1.5}
.rl-scene-art .rl-glass{fill:var(--acid);opacity:0}
.rl-scene-art .rl-star{fill:var(--paper);opacity:0}
.rl-scene-art .rl-sun circle{fill:none;stroke:var(--acid);stroke-width:2}
.rl-scene-art .rl-ripple{fill:none;stroke:var(--acid);stroke-width:1.5;stroke-linecap:round;opacity:.7}
.rl-scene-art .rl-trail{fill:none;stroke:var(--paper);stroke-opacity:.22;stroke-width:1.2;stroke-dasharray:2 9}
.rl-scene-art .rl-drone path,.rl-scene-art .rl-drone rect{fill:var(--ink);stroke:var(--paper);stroke-width:1.6}
.rl-scene-art .rl-rotor{fill:none;stroke:var(--acid);stroke-width:1.4}
.rl-scene-art .rl-lens{fill:var(--acid)}
.rl-scene-art .rl-finder path{fill:none;stroke:var(--acid);stroke-width:2.5;stroke-linecap:square}
.rl-scene-art .rl-finder text,.rl-scene-art .rl-labels text{fill:var(--paper);font:600 13px var(--display);letter-spacing:.14em;text-transform:uppercase}
.rl-scene-art .rl-finder text{fill-opacity:.6;font-size:12px}
.rl-scene-art .rl-flash{fill:var(--paper);opacity:0}
.rl-scene-art pattern circle{fill:var(--acid)}
.rl-scene-art .rl-scan line{stroke:var(--acid);stroke-width:2.5}
.rl-scene-art .rl-labels path{fill:none;stroke:var(--paper);stroke-opacity:.5;stroke-width:1}
.rl-scene-art .rl-label{opacity:.35;transition:opacity .6s var(--rl-ease)}
.rl-scene-art .rl-palm,.rl-scene-art .rl-fronds{transform-box:fill-box;transform-origin:50% 100%}
.rl-scene-art .rl-fronds{transform-origin:40% 60%}
html.rl-armed .rl-scene .rl-draw{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.8s var(--rl-ease) var(--d,0s)}
html.rl-armed .rl-scene.is-in .rl-draw{stroke-dashoffset:0}
html.rl-armed .rl-scene .rl-finder,html.rl-armed .rl-scene .rl-drone,html.rl-armed .rl-scene .rl-trail,html.rl-armed .rl-scene .rl-labels,html.rl-armed .rl-scene .rl-ripple,html.rl-armed .rl-scene .rl-sun{opacity:0;transition:opacity 1s var(--rl-ease) 1.6s}
html.rl-armed .rl-scene.is-in .rl-finder,html.rl-armed .rl-scene.is-in .rl-drone,html.rl-armed .rl-scene.is-in .rl-labels,html.rl-armed .rl-scene.is-in .rl-sun{opacity:1}
html.rl-armed .rl-scene.is-in .rl-trail{opacity:1}
html.rl-armed .rl-scene.is-in .rl-ripple{opacity:.7}
@media(prefers-reduced-motion:reduce){.rl-scene-art .rl-glass{opacity:.8}.rl-scene-art .rl-label{opacity:1}}
@media(prefers-reduced-motion:no-preference){
 /* One 18 second story: photograph (0-28%), scan (30-56%), dusk (60-90%). */
 .rl-scene.is-in .rl-finder{animation:rl-finder 18s var(--rl-ease) infinite}
 .rl-scene.is-in .rl-flash{animation:rl-flash 18s linear infinite}
 .rl-scene.is-in .rl-label-photo{animation:rl-label-photo 18s var(--rl-ease) infinite}
 .rl-scene.is-in .rl-label-scan{animation:rl-label-scan 18s var(--rl-ease) infinite}
 .rl-scene.is-in .rl-label-dusk{animation:rl-label-dusk 18s var(--rl-ease) infinite}
 .rl-scene.is-in .rl-glass{animation:rl-glass 18s var(--rl-ease) infinite}
 .rl-scene.is-in .rl-glass+.rl-glass{animation-delay:.25s}.rl-scene.is-in .rl-glass+.rl-glass+.rl-glass{animation-delay:.5s}
 .rl-scene.is-in .rl-star{animation:rl-star 18s var(--rl-ease) infinite}
 .rl-scene.is-in .rl-sun circle{animation:rl-sun 18s var(--rl-ease) infinite}
 .rl-scene.is-in .rl-rotor{animation:rl-rotor .12s linear infinite alternate}
 .rl-scene.is-in .rl-palm{animation:rl-sway 6s ease-in-out infinite alternate}
 .rl-scene.is-in .rl-fronds{animation:rl-sway 4.2s ease-in-out infinite alternate-reverse}
 .rl-scene.is-in .rl-trail{animation:rl-dash 6s linear infinite}
 .rl-scene.is-paused *{animation-play-state:paused!important}
}
@keyframes rl-finder{0%,2%{opacity:0;transform:scale(1.07)}6%{opacity:1;transform:scale(1)}26%{opacity:1;transform:scale(1)}30%,100%{opacity:0;transform:scale(1.03)}}
.rl-scene-art .rl-finder{transform-box:fill-box;transform-origin:center}
@keyframes rl-flash{0%,11%{opacity:0}11.5%{opacity:.5}14%,19%{opacity:0}19.5%{opacity:.4}22%,100%{opacity:0}}
@keyframes rl-label-photo{0%,2%{opacity:.35}6%,26%{opacity:1}30%,100%{opacity:.35}}
@keyframes rl-label-scan{0%,29%{opacity:.35}33%,55%{opacity:1}59%,100%{opacity:.35}}
@keyframes rl-label-dusk{0%,59%{opacity:.35}64%,90%{opacity:1}95%,100%{opacity:.35}}
@keyframes rl-glass{0%,58%{opacity:0}66%,90%{opacity:.85}97%,100%{opacity:0}}
@keyframes rl-star{0%,60%{opacity:0}70%,88%{opacity:.8}96%,100%{opacity:0}}
@keyframes rl-sun{0%,56%{transform:translateY(0);opacity:1}72%{transform:translateY(190px);opacity:0}92%{transform:translateY(-40px);opacity:0}100%{transform:translateY(0);opacity:1}}
@keyframes rl-rotor{from{opacity:1}to{opacity:.25}}
@keyframes rl-sway{from{transform:rotate(-1.4deg)}to{transform:rotate(1.6deg)}}
@keyframes rl-dash{to{stroke-dashoffset:-110}}

.rl-legend{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--ink);border-top:0;margin-bottom:96px}
.rl-legend a{display:flex;gap:12px;align-items:baseline;padding:16px;font-size:14px;font-weight:600;color:var(--ink);text-decoration:none;border-right:1px solid var(--ink);transition:background .4s var(--rl-ease)}
.rl-legend a:last-child{border-right:0}
.rl-legend a span{font-size:12px;color:var(--muted)}
.rl-legend a:hover{background:var(--acid)}

/* Section heads */
.rl-head{display:grid;grid-template-columns:.45fr 1.25fr .75fr;gap:32px;align-items:end;margin-bottom:48px}
.rl-head .eyebrow{align-self:start;margin:0}
.rl-head h2{font-family:var(--display);font-weight:900;font-size:clamp(44px,6vw,96px);line-height:.9;letter-spacing:-.065em;margin:0}
.rl-head h2 em{font-size:1.02em}
.rl-head>p:last-child{font-size:15px;line-height:1.7;margin:0;color:var(--muted);text-wrap:pretty}
.rl-head-dark>p:last-child{color:rgba(242,240,231,.72)}

/* Package cards */
.rl-package{padding-bottom:96px}
.rl-cards{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--ink)}
.rl-card{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);display:flex;flex-direction:column;scroll-margin-top:96px;transition:background .5s var(--rl-ease)}
.rl-card:nth-child(3n){border-right:0}
.rl-card:nth-last-child(-n+3){border-bottom:0}
.rl-card-art{background:var(--rl-paper2);aspect-ratio:16/10;display:grid;place-items:center;overflow:hidden;transition:background .5s var(--rl-ease)}
.rl-card:hover .rl-card-art,.rl-card:target .rl-card-art{background:var(--acid)}
.rl-card-copy{display:grid;grid-template-columns:32px 1fr;gap:12px;padding:24px 24px 32px}
.rl-card-copy>span{font-size:12px;font-weight:700;padding-top:6px}
.rl-card h3{font-family:var(--display);font-weight:800;font-size:clamp(24px,2.2vw,32px);line-height:1.05;letter-spacing:-.04em;margin:0 0 12px}
.rl-card p{font-size:14px;line-height:1.7;margin:0;color:var(--muted);text-wrap:pretty}

/* Card artwork */
.rl-art{width:86%;height:auto;overflow:visible}
.rl-art path,.rl-art rect,.rl-art circle{fill:none;stroke:var(--ink);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.rl-art .rl-soft{stroke-opacity:.38}
.rl-art .rl-thirds{stroke-opacity:.3;stroke-dasharray:3 5}
.rl-art .rl-acc{fill:var(--acid)}
.rl-card:hover .rl-art .rl-acc,.rl-card:target .rl-art .rl-acc{fill:var(--paper)}
.rl-art .rl-acc-soft{fill:var(--acid);fill-opacity:.55;stroke:none}
.rl-art .rl-fill{fill:var(--paper)}
.rl-art text{fill:var(--ink);stroke:none;font:700 9px var(--display);letter-spacing:.12em}
.rl-art .rl-a-flash{fill:var(--paper);stroke:none;opacity:0}
.rl-art .rl-a-rec{fill:var(--ink);stroke:none}
.rl-art .rl-a-ring{stroke-opacity:.5}
.rl-art .rl-a-tag rect{fill:var(--ink)}
.rl-art .rl-a-tag text{fill:var(--paper);font-size:7px;letter-spacing:.08em}
.rl-art .rl-a-cta text{font-size:7px;letter-spacing:.08em}
.rl-art .rl-a-click{opacity:0;stroke-width:1.2}
.rl-art .rl-a-cursor{fill:var(--ink);stroke:var(--paper);stroke-width:1}
.rl-art .rl-a-progress{stroke-width:2.4;stroke-dasharray:1;stroke-dashoffset:1;transform-box:fill-box;transform-origin:center;transform:rotate(-90deg)}
.rl-art g,.rl-art path,.rl-art rect{transform-box:fill-box}
.rl-art .rl-a-page{transform-origin:0 50%}
.rl-art .rl-a-tile{transform-origin:center}
.rl-art .rl-a-focus{transform-origin:center}
.rl-art .rl-a-piece{transform-origin:50% 100%}
.rl-art .rl-a-post{transform-origin:50% 100%}
@media(prefers-reduced-motion:no-preference){
 .rl-card.is-in .rl-a-focus{animation:rl-focus 3.2s var(--rl-spring) infinite}
 .rl-card.is-in .rl-a-flash{animation:rl-a-flash 3.2s linear infinite}
 .rl-card.is-in .rl-a-needle{animation:rl-needle 3.2s var(--rl-ease) infinite alternate}
 .rl-card.is-in .rl-a-rec{animation:rl-blink 1.2s steps(1) infinite}
 .rl-card.is-in .rl-a-lift{animation:rl-lift 7s var(--rl-ease) infinite}
 .rl-card.is-in .rl-a-post{animation:rl-post 7s var(--rl-ease) infinite}
 .rl-card.is-in .rl-a-spin{animation:rl-spin 7s var(--rl-ease) infinite;transform-origin:center}
 .rl-card.is-in .rl-a-piece{animation:rl-piece 8s var(--rl-ease) calc(var(--i) * .18s) infinite}
 .rl-card.is-in .rl-a-tag{animation:rl-tag 8s var(--rl-ease) infinite}
 .rl-card.is-in .rl-a-hero{animation:rl-hero 6s var(--rl-ease) infinite}
 .rl-card.is-in .rl-a-line{animation:rl-line 6s var(--rl-ease) calc(var(--i) * .12s) infinite}
 .rl-card.is-in .rl-a-cursor{animation:rl-cursor 6s var(--rl-ease) infinite}
 .rl-card.is-in .rl-a-click{animation:rl-click 6s var(--rl-ease) infinite;transform-origin:center}
 .rl-card.is-in .rl-a-cta{animation:rl-cta 6s var(--rl-ease) infinite;transform-origin:center}
 .rl-card.is-in .rl-a-page{animation:rl-page 7s var(--rl-ease) infinite}
 .rl-card.is-in .rl-a-cover{animation:rl-cover 7s var(--rl-ease) infinite}
 .rl-card.is-in .rl-a-tile{animation:rl-tile 7s var(--rl-spring) calc(var(--i) * .09s) infinite}
 .rl-card.is-in .rl-a-progress{animation:rl-progress 7s linear infinite}
 .rl-card.is-in .rl-a-heart{animation:rl-heart 7s var(--rl-ease) infinite}
}
@keyframes rl-focus{0%{transform:scale(1.35);opacity:0}14%{transform:scale(1);opacity:1}100%{transform:scale(1);opacity:1}}
@keyframes rl-a-flash{0%,30%{opacity:0}31%{opacity:.9}44%,100%{opacity:0}}
@keyframes rl-needle{from{transform:translateX(-40px)}to{transform:translateX(34px)}}
@keyframes rl-blink{50%{opacity:0}}
@keyframes rl-lift{0%,8%{transform:translateY(26px)}30%,82%{transform:translateY(0)}100%{transform:translateY(26px)}}
@keyframes rl-post{0%,8%{transform:scaleY(0)}30%,82%{transform:scaleY(1)}100%{transform:scaleY(0)}}
@keyframes rl-spin{0%,30%{transform:rotate(0)}70%,100%{transform:rotate(360deg)}}
@keyframes rl-piece{0%,6%{opacity:0;transform:translateY(-14px)}18%,78%{opacity:1;transform:none}90%,100%{opacity:0;transform:none}}
@keyframes rl-tag{0%,26%{opacity:0;transform:translateY(-6px)}34%,78%{opacity:1;transform:none}90%,100%{opacity:0}}
@keyframes rl-hero{0%{opacity:0;transform:scale(.96)}14%,86%{opacity:1;transform:none}100%{opacity:0}}
@keyframes rl-line{0%,10%{opacity:0;transform:translateX(-12px)}22%,86%{opacity:1;transform:none}100%{opacity:0}}
@keyframes rl-cursor{0%,20%{transform:translate(150px,190px)}50%,62%{transform:translate(250px,134px)}64%{transform:translate(250px,136px)}72%,86%{transform:translate(250px,134px)}100%{transform:translate(150px,190px)}}
@keyframes rl-click{0%,62%{opacity:0;transform:scale(.3)}66%{opacity:1}80%,100%{opacity:0;transform:scale(1.8)}}
@keyframes rl-cta{0%,62%{transform:none}65%{transform:scale(.94)}70%,100%{transform:none}}
@keyframes rl-page{0%,10%{transform:scaleX(0)}34%,76%{transform:scaleX(1)}94%,100%{transform:scaleX(0)}}
@keyframes rl-cover{0%,10%{transform:translateX(45px)}34%,76%{transform:none}94%,100%{transform:translateX(45px)}}
@keyframes rl-tile{0%{opacity:0;transform:scale(.4)}12%,84%{opacity:1;transform:none}96%,100%{opacity:0;transform:scale(.9)}}
@keyframes rl-progress{0%,20%{stroke-dashoffset:1}70%,100%{stroke-dashoffset:0}}
@keyframes rl-heart{0%,40%{opacity:0;transform:translateY(20px) scale(.6)}52%{opacity:1;transform:translateY(0) scale(1.1)}70%{opacity:1;transform:translateY(-10px) scale(1)}84%,100%{opacity:0;transform:translateY(-26px)}}

/* Day-to-dusk comparison */
.rl-twilight{background:var(--ink);color:var(--paper);padding:96px 0}
.rl-twilight .eyebrow{color:var(--acid)}
.rl-compare{position:relative;border:1px solid rgba(242,240,231,.3);background:var(--paper);user-select:none;touch-action:pan-y;overflow:hidden}
.rl-dusk-art{display:block;width:100%;height:auto}
.rl-dusk-art path,.rl-dusk-art circle{fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.rl-day path{stroke:var(--ink)}
.rl-day .rl-soft,.rl-night .rl-soft{stroke-opacity:.35}
.rl-day-sky{fill:var(--paper)}
.rl-day-sun{fill:var(--acid);stroke:var(--ink)!important}
.rl-d-glass{fill:var(--rl-paper2)}
.rl-night path{stroke:var(--paper)}
.rl-night-sky{fill:var(--ink)}
.rl-night .rl-n-star{fill:var(--paper);stroke:none}
.rl-night .rl-n-moon{fill:var(--paper);stroke:none}
.rl-night .rl-n-glass{fill:var(--acid)}
.rl-night .rl-n-spill{fill:var(--acid);fill-opacity:.16;stroke:none}
.rl-night .rl-n-pool{fill:var(--acid);fill-opacity:.45}
.rl-night .rl-n-lamp{stroke:var(--ink);stroke-width:2.2}
@media(prefers-reduced-motion:no-preference){.rl-compare.is-in .rl-n-star{animation:rl-twinkle 3s ease-in-out infinite alternate}.rl-compare.is-in .rl-n-star:nth-child(odd){animation-duration:4.4s}}
@keyframes rl-twinkle{from{opacity:1}to{opacity:.25}}
.rl-handle{position:absolute;top:0;bottom:0;left:var(--pos);width:2px;margin-left:-1px;background:var(--acid);pointer-events:none}
.rl-handle span{position:absolute;top:50%;left:50%;width:56px;height:56px;margin:-28px 0 0 -28px;border-radius:50%;background:var(--acid);color:var(--ink);display:grid;place-items:center;font-weight:700;font-size:16px;letter-spacing:.1em;transition:transform .5s var(--rl-spring)}
.rl-compare:hover .rl-handle span,.rl-range:focus-visible~.rl-handle span{transform:scale(1.12)}
.rl-range:focus-visible~.rl-handle span{outline:2px solid var(--paper);outline-offset:4px}
.rl-range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;-webkit-appearance:none;appearance:none}
.rl-chip{position:absolute;top:16px;padding:8px 12px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;pointer-events:none}
.rl-chip-left{left:16px;background:var(--ink);color:var(--paper)}
.rl-chip-right{right:16px;background:var(--acid);color:var(--ink)}
.rl-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Word reveal */
.rl-statement{padding:128px 0;border-bottom:1px solid var(--ink)}
.rl-statement-text{font-family:var(--display);font-weight:800;font-size:clamp(34px,4.9vw,76px);line-height:1.02;letter-spacing:-.05em;max-width:18ch;margin:0;text-wrap:balance}
html.rl-armed .rl-word{color:rgba(24,26,23,.2);transition:color .9s var(--rl-ease) calc(var(--wi,0) * .06s)}
html.rl-armed .rl-word.is-lit{color:var(--ink)}

/* Process */
.rl-process{padding:96px 0}
.rl-steps{position:relative;list-style:none;margin:0;padding:48px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
.rl-track{position:absolute;top:0;left:0;right:0;height:2px;background:var(--ink);transform-origin:0 50%}
.rl-runner{position:absolute;top:-7px;left:0;width:16px;height:16px;background:var(--acid);border:2px solid var(--ink)}
.rl-steps li{position:relative}
.rl-step-dot{position:absolute;top:-55px;left:0;width:12px;height:12px;border-radius:50%;background:var(--paper);border:2px solid var(--ink)}
.rl-step-num{font-size:12px;font-weight:700;letter-spacing:.12em;margin:0 0 12px}
.rl-steps h3{font-family:var(--display);font-weight:800;font-size:clamp(26px,2.4vw,36px);letter-spacing:-.045em;line-height:1;margin:0 0 12px}
.rl-steps li>p:last-child{font-size:14px;line-height:1.7;color:var(--muted);margin:0;text-wrap:pretty}
html.rl-armed .rl-steps .rl-track{transform:scaleX(0);transition:transform 1.6s var(--rl-ease)}
html.rl-armed .rl-steps.is-in .rl-track{transform:none}
html.rl-armed .rl-steps li{opacity:0;transform:translateY(24px);filter:blur(6px);transition:opacity .9s var(--rl-ease),transform .9s var(--rl-ease),filter .9s var(--rl-ease);transition-delay:calc(.3s + var(--i) * .22s)}
html.rl-armed .rl-steps.is-in li{opacity:1;transform:none;filter:none}
html.rl-armed .rl-steps .rl-step-dot{transform:scale(0);transition:transform .6s var(--rl-spring) calc(.3s + var(--i) * .22s)}
html.rl-armed .rl-steps.is-in .rl-step-dot{transform:none}
@media(prefers-reduced-motion:no-preference){.rl-steps.is-in .rl-runner{animation:rl-run 9s var(--rl-ease) 1.2s infinite}}
@keyframes rl-run{0%{left:0}22%,30%{left:calc(25% + 8px)}47%,55%{left:calc(50% + 16px)}72%,80%{left:calc(75% + 24px)}97%,100%{left:calc(100% - 16px)}}

/* Pricing & FAQ */
.rl-pricing{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;padding:96px 0;border-top:1px solid var(--ink)}
.rl-price-card{background:var(--acid);padding:48px;align-self:start;position:sticky;top:96px}
.rl-price-card h2{font-family:var(--display);font-weight:900;font-size:clamp(44px,5.4vw,84px);line-height:.9;letter-spacing:-.065em;margin:0 0 24px}
.rl-price-card>p{font-size:15px;line-height:1.7;margin:0 0 24px}
.rl-price-card .rl-price-from{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:0 0 16px;font-size:14px;font-weight:600}
.rl-price-from strong{font-family:var(--display);font-weight:900;font-size:clamp(40px,4vw,60px);letter-spacing:-.05em;line-height:1}
.rl-price-card ul{list-style:none;margin:0 0 32px;padding:0;border-top:1px solid var(--ink)}
.rl-price-card li{display:flex;gap:16px;padding:12px 0;border-bottom:1px solid var(--ink);font-weight:600;font-size:15px}
.rl-price-card li span{font-size:12px;padding-top:2px}
.rl-faq details{border-top:1px solid var(--ink)}
.rl-faq details:last-child{border-bottom:1px solid var(--ink)}
.rl-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:24px;padding:24px 0;font-family:var(--display);font-weight:700;font-size:clamp(20px,1.8vw,24px);letter-spacing:-.03em;line-height:1.2}
.rl-faq summary::-webkit-details-marker{display:none}
.rl-faq summary span{flex:none;width:16px;height:16px;position:relative;margin-top:6px}
.rl-faq summary span::before,.rl-faq summary span::after{content:"";position:absolute;left:0;right:0;top:7px;height:2px;background:var(--ink);transition:transform .5s var(--rl-ease)}
.rl-faq summary span::after{transform:rotate(90deg)}
.rl-faq details[open] summary span::after{transform:rotate(0)}
.rl-faq summary:hover{color:var(--muted)}
.rl-faq details p{font-size:15px;line-height:1.7;margin:0 0 24px;max-width:60ch;color:var(--muted)}
.rl-faq details a{color:var(--ink)}

/* Work */
.rl-work{padding:96px 0}
.rl-work-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-bottom:64px}
.rl-work-card{color:var(--ink);text-decoration:none;display:block}
.rl-work-card img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;transition:transform .8s var(--rl-ease)}
.rl-work-card{overflow:hidden}
.rl-work-card:hover img{transform:scale(1.03)}
.rl-work-card div{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--ink);margin-top:16px;padding-top:12px;font-size:13px;font-weight:600}
.rl-work-card div span:last-child{color:var(--muted);text-align:right}
.rl-agents{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;border:1px solid var(--ink);padding:32px}
.rl-agents img{display:block;width:100%;height:auto}
.rl-agents h3{font-family:var(--display);font-weight:800;font-size:clamp(30px,3vw,44px);letter-spacing:-.05em;line-height:1;margin:0 0 16px}
.rl-agents p:not(.eyebrow){font-size:15px;line-height:1.7;color:var(--muted);margin:0 0 16px}

/* Reveal */
html.rl-armed .rl [data-rl]:not(.rl-scene):not(.rl-steps):not(.rl-compare){opacity:0;transform:translateY(48px);filter:blur(8px);transition:opacity 1s var(--rl-ease),transform 1s var(--rl-ease),filter 1s var(--rl-ease);transition-delay:var(--rl-delay,0s)}
html.rl-armed .rl [data-rl].is-in:not(.rl-scene):not(.rl-steps):not(.rl-compare){opacity:1;transform:none;filter:none}

@media(max-width:1000px){
 .rl-hero-row,.rl-head,.rl-pricing,.rl-agents{grid-template-columns:1fr;gap:24px}
 .rl-legend{grid-template-columns:repeat(3,1fr)}
 .rl-legend a:nth-child(3){border-right:0}
 .rl-legend a:nth-child(-n+3){border-bottom:1px solid var(--ink)}
 .rl-cards{grid-template-columns:1fr 1fr}
 .rl-card:nth-child(3n){border-right:1px solid var(--ink)}
 .rl-card:nth-child(2n){border-right:0}
 .rl-card:nth-last-child(-n+3){border-bottom:1px solid var(--ink)}
 .rl-card:nth-last-child(-n+2){border-bottom:0}
 .rl-steps{grid-template-columns:1fr 1fr;row-gap:48px}
 .rl-price-card{position:static}
}
@media(max-width:700px){
 .rl-hero{padding-top:16px}
 .rl-topline span{display:none}
 .rl-hero-row{padding:40px 0 32px}
 .rl-hero h1{font-size:16vw}
 .rl-scene-art{aspect-ratio:4/3}
 .rl-scene-art .rl-labels,.rl-scene-art .rl-finder text{display:none}
 .rl-legend{grid-template-columns:1fr 1fr;margin-bottom:64px}
 .rl-legend a{border-bottom:1px solid var(--ink);border-right:1px solid var(--ink)!important;padding:12px}
 .rl-legend a:nth-child(2n){border-right:0!important}
 .rl-legend a:nth-last-child(-n+2){border-bottom:0}
 .rl-cards{grid-template-columns:1fr}
 .rl-card{border-right:0!important;border-bottom:1px solid var(--ink)!important}
 .rl-card:last-child{border-bottom:0!important}
 .rl-twilight,.rl-process,.rl-pricing,.rl-work{padding:64px 0}
 .rl-statement{padding:80px 0}
 .rl-handle span{width:44px;height:44px;margin:-22px 0 0 -22px;font-size:13px}
 .rl-chip{font-size:10px;padding:6px 8px;top:8px}
 .rl-chip-left{left:8px}.rl-chip-right{right:8px}
 .rl-steps{grid-template-columns:1fr;padding:0 0 0 40px;row-gap:40px}
 .rl-track{top:0;bottom:0;left:6px;right:auto;width:2px;height:auto;transform-origin:50% 0}
 html.rl-armed .rl-steps .rl-track{transform:scaleY(0)}
 .rl-runner{display:none}
 .rl-step-dot{top:4px;left:-40px}
 .rl-price-card{padding:32px 24px}
 .rl-work-grid{grid-template-columns:1fr}
 .rl-work-card div{flex-direction:column;gap:4px}
 .rl-work-card div span:last-child{text-align:left}
 .rl-agents{padding:16px}
}
@media(prefers-reduced-motion:reduce){
 html.rl-armed .rl *{transition:none!important}
}
