/* About-only layouts. Shared theme tokens keep the page in step with light and dark mode. */
.rr-about{overflow:clip}
.rr-about-section{padding:clamp(4.5rem,8vw,8rem) 0;border-bottom:1px solid hsl(var(--border));background:hsl(var(--background));color:hsl(var(--foreground))}
.rr-about-wrap{width:min(100% - 2.5rem,80rem);margin-inline:auto}
.rr-about-eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:hsl(var(--accent));margin:0 0 1.5rem}
.rr-about h1{font-size:clamp(3.4rem,6vw,6.5rem);line-height:.98;letter-spacing:-.035em;max-width:25ch;margin:0}
.rr-about h2{font-size:clamp(2.7rem,5vw,5.2rem);line-height:1;letter-spacing:-.025em;max-width:20ch;margin:0 0 2.5rem}
.rr-about h3{font-size:clamp(1.8rem,2.5vw,2.5rem);line-height:1.1;margin:0 0 1rem}
.rr-about p{line-height:1.8}
.rr-about p:not(.rr-about-eyebrow){color:hsl(var(--muted-foreground))}
.rr-about .rr-about-lead{font-size:clamp(1.1rem,1.7vw,1.35rem);line-height:1.75;max-width:52ch}
.rr-about a:focus-visible{outline:2px solid hsl(var(--accent));outline-offset:5px}
.rr-about-hero{position:relative;background:radial-gradient(ellipse at 95% 20%,hsl(var(--accent) / .14),transparent 48%),hsl(var(--background));padding-top:clamp(5rem,10vw,9rem)}
.rr-about-hero .rr-about-lead{margin:2.5rem 0 3.5rem}
.rr-about-hero-line{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid hsl(var(--border));padding-top:1.2rem;color:hsl(var(--muted-foreground));font-size:.65rem;letter-spacing:.16em}
.rr-about-hero-line span:first-child{font-family:Georgia,serif;font-size:2rem;color:hsl(var(--accent));letter-spacing:-.06em}
.rr-about-red{background:hsl(347 80% 47%);color:white;--foreground:0 0% 100%;--muted-foreground:0 0% 100%;--accent:0 0% 100%;--border:0 0% 100%}
html[data-theme=light] .rr-about-red{background:#a3141c}
.rr-about-red .rr-about-eyebrow{color:white;opacity:.85}
.rr-about-owner-grid{display:grid;grid-template-columns:14rem 1fr;gap:clamp(2rem,6vw,7rem);align-items:start}
.rr-about-owner-grid p:first-child{margin-top:0}
.rr-about-owner-mark{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;border:1px solid rgb(255 255 255 / .5);border-radius:50%;background:rgb(0 0 0 / .08)}
.rr-about-owner-mark svg{width:3rem;height:3rem}
.rr-about-owner-mark span{font-size:1.4rem;letter-spacing:.18em;font-weight:600}
.rr-about-owner-mark small{font-size:.6rem;letter-spacing:.16em}
.rr-about-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem;border-top:1px solid rgb(255 255 255 / .4);margin:3rem 0 0;padding-top:2rem}
.rr-about-facts dt{font-family:Georgia,serif;font-size:clamp(2.2rem,4vw,4rem);line-height:1.15;overflow-wrap:anywhere}
.rr-about-facts dd{margin:.5rem 0 0;font-size:.9rem}
.rr-about-diagram{margin-top:3rem;display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.rr-about-tool{border:1px solid hsl(var(--border));padding:clamp(1.5rem,3vw,2.5rem);background:hsl(var(--secondary));position:relative}
.rr-about-tool svg{color:hsl(var(--accent));margin-bottom:1.5rem}
.rr-about-tool p{max-width:40ch;margin-bottom:0}
.rr-about-vehicle{grid-column:1/-1;text-align:center;border:1px solid hsl(var(--accent));border-radius:1rem;max-width:48rem;width:100%;margin:1rem auto 0;padding:2rem;position:relative}
.rr-about-vehicle:before{content:'';position:absolute;height:2.6rem;width:1px;background:hsl(var(--accent));top:-2.6rem;left:50%}
.rr-about-vehicle svg{display:block;margin:0 auto 1rem;color:hsl(var(--accent))}
.rr-about-vehicle strong{font-family:Georgia,serif;font-size:1.8rem}
.rr-about-vehicle>span{display:block;color:hsl(var(--accent));font-size:1.5rem;margin:.8rem 0}
.rr-about-vehicle p{max-width:54ch;margin:0 auto}
.rr-about-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin:3rem 0 0;gap:2rem}
.rr-about-steps li{border-top:1px solid rgb(255 255 255 / .55);padding-top:1.3rem}
.rr-about-step-number{font-family:Georgia,serif;font-size:3.5rem;line-height:1;display:block;margin-bottom:2.5rem;color:rgb(255 255 255 / .65)}
.rr-about-steps h3{font-size:1.9rem}
.rr-about-steps p{font-size:.95rem;margin-bottom:0}
.rr-about-check{background:hsl(var(--secondary))}
.rr-about-check-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(2rem,6vw,6rem)}
.rr-about-check-intro>svg{width:3rem;height:3rem;color:hsl(var(--accent))}
.rr-about .rr-about-note{font-size:.85rem;max-width:56ch;margin-top:2rem}
.rr-about-check-list{margin:0}
.rr-about-check-list>div{padding:1.5rem 0;border-top:1px solid hsl(var(--border))}
.rr-about-check-list dt{font-size:1.1rem;font-weight:600}
.rr-about-check-list dd{margin:.6rem 0 0;color:hsl(var(--muted-foreground));line-height:1.7}
.rr-about-scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.rr-about-scope-card{display:flex;flex-direction:column;border:1px solid hsl(var(--border));padding:2rem;text-decoration:none;color:inherit;background:hsl(var(--secondary));transition:border-color .18s ease}
.rr-about-scope-card:hover,.rr-about-scope-card:active{border-color:hsl(var(--accent))}
.rr-about-scope-card p{font-size:.95rem;margin-bottom:2rem}
.rr-about-card-link{display:flex;justify-content:space-between;gap:1rem;color:hsl(var(--accent));font-size:.8rem;font-weight:600;margin-top:auto}
.rr-about-limit{max-width:70ch;padding-left:1.5rem;border-left:2px solid hsl(var(--accent));margin:2.5rem 0 0;font-size:.95rem}
.rr-about-jobs{background:hsl(var(--secondary))}
.rr-about-job{display:grid;grid-template-columns:4rem 1fr 13rem;gap:2rem;align-items:start;padding:2.5rem 1rem;border-top:1px solid hsl(var(--border));text-decoration:none;color:inherit;transition:background .18s ease,outline-color .18s ease}
.rr-about-job:last-child{border-bottom:1px solid hsl(var(--border))}
.rr-about-job:hover,.rr-about-job:active{outline:1px solid hsl(var(--accent));background:hsl(var(--background))}
.rr-about-job-num{font-family:Georgia,serif;font-size:2rem;color:hsl(var(--accent))}
.rr-about-job h3{margin-bottom:.5rem}
.rr-about .rr-about-job-type{font-size:.75rem;letter-spacing:.04em;margin:0 0 1rem;color:hsl(var(--accent))}
.rr-about-job p:last-child{margin-bottom:0;max-width:58ch;font-size:.95rem}
.rr-about-job .rr-about-card-link{margin-top:.5rem}
.rr-about-area-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:3rem}
/* Keep the map card level with the section eyebrow; stack it after the copy on mobile. */
@media(min-width:901px){
.rr-about-area>.rr-about-wrap{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:min-content min-content 1fr;column-gap:3rem;align-items:start}
.rr-about-area>.rr-about-wrap>.rr-about-eyebrow{grid-column:1;grid-row:1}
.rr-about-area>.rr-about-wrap>h2{grid-column:1;grid-row:2}
.rr-about-area-grid{display:contents}
.rr-about-area-grid>div:first-child{grid-column:1;grid-row:3}
.rr-about-area .rr-about-end{grid-column:2;grid-row:1 / 4;margin-top:0}
}
@media(max-width:900px){.rr-about-area-grid{row-gap:3rem}.rr-about-area .rr-about-end{margin-top:0}}
.rr-about-area-grid p:first-child{margin-top:0}
.rr-about-area-grid p{max-width:54ch}
.rr-about-inline-link{display:inline-block;color:inherit;text-underline-offset:.3em;line-height:1.6}
.rr-about-end{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:1.5rem;padding:2rem;border:1px solid rgb(255 255 255 / .4)}
.rr-about-end>span>svg{width:2rem;height:2rem}
.rr-about-cta{display:inline-flex;align-items:center;gap:2rem;padding:1.1rem 1.5rem;background:#0c0c0e;color:white;font-weight:600;border-color:transparent}
@media(min-width:640px){.rr-about-wrap{width:min(100% - 4rem,80rem)}}
@media(max-width:900px){.rr-about-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.rr-about-scope-grid{grid-template-columns:1fr}.rr-about-scope-card{padding:1.75rem}.rr-about-job{grid-template-columns:3rem 1fr}.rr-about-job>.rr-about-card-link{grid-column:2}.rr-about-area-grid{grid-template-columns:1fr}.rr-about-end{max-width:30rem}.rr-about-owner-grid{grid-template-columns:10rem 1fr;gap:2rem}}
@media(max-width:600px){.rr-about-owner-grid,.rr-about-check-grid{grid-template-columns:1fr}.rr-about-owner-mark{width:10rem}.rr-about-facts{grid-template-columns:1fr 1fr;gap:1.5rem}.rr-about-diagram{gap:1rem}.rr-about-tool{padding:1.2rem}.rr-about-tool h3{font-size:1.45rem}.rr-about-tool p{font-size:.85rem}.rr-about-vehicle{padding:1.5rem}.rr-about-steps{grid-template-columns:1fr;gap:2rem}.rr-about-steps li{display:grid;grid-template-columns:3rem 1fr;column-gap:1rem}.rr-about-step-number{font-size:2.4rem;grid-row:1/3;margin:0}.rr-about-steps h3{font-size:1.8rem}.rr-about-steps p{grid-column:2}.rr-about-job{padding:2rem 0;gap:1rem}.rr-about h1{font-size:clamp(2.8rem,11.5vw,4rem)}.rr-about-hero-line{letter-spacing:.08em}}
@media(prefers-reduced-motion:reduce){.rr-about *{transition:none!important}}
/* A real work photo replaces the owner placeholder. */
.rr-about-owner-grid{grid-template-columns:1.05fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:start}
.rr-about-owner-photo{margin:0;min-width:0}
.rr-about-owner-photo img{display:block;width:100%;height:auto;border:1px solid rgb(255 255 255 / .35)}
.rr-about-owner-photo figcaption{font-size:.8rem;line-height:1.6;margin-top:.75rem;color:white}
.rr-about-name{margin-top:2.5rem;padding:1.5rem 0;border-top:1px solid rgb(255 255 255 / .4);display:grid;grid-template-columns:1fr 1.4fr;gap:2rem}
.rr-about-name h3{font-size:1.8rem;margin:0}
.rr-about-name p{margin:0;max-width:60ch}
@media(max-width:800px){.rr-about-owner-grid,.rr-about-name{grid-template-columns:1fr}.rr-about-owner-photo{max-width:48rem}}

/* Business listing between the location icon and package CTA. */
.rr-about-map{display:block;width:100%;height:300px;min-width:200px;border:0;background:#0c0c0e;color-scheme:normal}
.rr-about-end{min-width:0;width:100%}
.rr-about-visit-photo{width:100%;max-width:26rem;margin:2rem 0 0}
.rr-about-visit-photo img{display:block;width:100%;height:auto;border:1px solid rgb(255 255 255 / .35)}
.rr-about-visit-photo figcaption{margin-top:.75rem;font-size:.8rem;line-height:1.6;color:inherit}
@media(min-width:901px){.rr-about-visit-photo{grid-column:1;grid-row:4;max-width:20rem}.rr-about-area .rr-about-end{grid-row:1 / 5}}
@media(min-width:1200px){.rr-about-area>.rr-about-wrap{grid-template-columns:1.1fr .7fr .9fr;column-gap:2rem}.rr-about-area .rr-about-visit-photo{grid-column:2;grid-row:1 / 4;max-width:none;margin:0}.rr-about-area .rr-about-end{grid-column:3;grid-row:1 / 4}.rr-about-area h2{font-size:clamp(2.7rem,4vw,4rem)}}
@media(max-width:600px){.rr-about-map{height:260px}.rr-about-end{padding:1.25rem}}

@media(min-width:601px) and (max-width:1000px){.rr-about-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}

@media(max-width:600px){.rr-about-facts dt{font-size:clamp(1.4rem,7vw,2.2rem)}}

/* about-layout 20261024: map border off everywhere; desktop (>=901px) map under van, buttons under service-area link */
.rr-about-end{border:0}
@media(min-width:901px){.rr-about-area>.rr-about-wrap{grid-template-rows:min-content min-content auto auto auto}.rr-about-area>.rr-about-wrap>.rr-about-eyebrow,.rr-about-area>.rr-about-wrap>h2,.rr-about-area .rr-about-area-grid>div:first-child{grid-column:1 / -2}.rr-about-area .rr-about-visit-photo{grid-column:-2 / -1;grid-row:1 / 6;align-self:start;width:calc(100% - 4rem);max-width:none;margin:0 0 0 2rem}.rr-about-area .rr-about-visit-photo img{display:block;width:100%;height:auto}.rr-about-area .rr-about-end{display:contents}.rr-about-area .rr-about-end>span{display:none}.rr-about-area .rr-about-end>.rr-about-map{grid-column:-2 / -1;grid-row:1 / 6;align-self:start;width:calc(100% - 4rem);min-width:0;height:auto;min-height:0;aspect-ratio:4 / 3;margin:calc(75% - 1.5rem) 0 0 2rem}.rr-about-area .rr-about-end>.rr-about-cta{grid-column:1 / -2;grid-row:4;justify-self:start;margin-top:1.5rem}.rr-about-area .rr-about-end>.rr-about-inline-link{grid-column:1 / -2;grid-row:5;justify-self:start;margin-top:1rem}}
@media(max-width:900px){.rr-about-area .rr-about-end>.rr-about-map{height:auto;aspect-ratio:4 / 3}}
