/* Rio Rancho Concrete Works — inner pages (service + area). Loads after rr-main.css. */
.rr-inner .rr-h2--in{font-size:clamp(1.75rem,3.6vw,2.6rem);margin-bottom:.55em;max-width:26ch}
.rr-isec{padding:clamp(40px,5.5vw,72px) 0}
.rr-isec p{max-width:72ch}

/* compact hero: copy + framed photo */
.rr-ihero{position:relative;background:var(--char);color:#F1EADF;padding:18px 0 26px}
.rr-ihero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:8px;background:repeating-linear-gradient(90deg,var(--sun) 0 64px,var(--dust) 64px 96px,var(--jun-m) 96px 128px,var(--char) 128px 132px)}
.rr-ihero-grid{display:grid;gap:16px;align-items:center}
.rr-ihero .rr-kicker{color:var(--jun-l);margin-bottom:8px}
.rr-ihero h1{color:#fff;font-size:clamp(1.55rem,6.4vw,2.5rem);margin-bottom:.45em;line-height:1.04}
.rr-ihero .rr-hero-lede{margin-bottom:0}
.rr-ihero-fig{margin:0}
.rr-ihero-img{width:100%;aspect-ratio:16/7;object-fit:cover;border-radius:var(--r);border:3px solid var(--char3)}
@media (min-width:960px){
 .rr-ihero{padding:52px 0 60px}
 .rr-ihero-grid{grid-template-columns:1.25fr 1fr;gap:48px}
 .rr-ihero h1{font-size:clamp(2.3rem,3vw,3.1rem);line-height:.98}
 .rr-ihero .rr-hero-lede{font-size:1.1rem}
 .rr-ihero-img{aspect-ratio:4/3;box-shadow:10px 10px 0 var(--sun);border:0}
}

/* first row: rest of the intro, form, call card, photo (no empty column next to the form) */
.rr-ifirst{background:var(--sand);padding:18px 0 28px}
.rr-ifirst-row{display:grid;gap:16px}
.rr-ifirst-row>*{min-width:0}
.rr-ifirst-more p{font-size:1.02rem;color:var(--ink);margin-bottom:.6em}
.rr-ifirst-more p:last-child{margin-bottom:0}
.rr-note-p{background:#fff;border-left:5px solid var(--sun);padding:10px 14px;border-radius:0 var(--r) var(--r) 0;font-size:.97rem!important}
.rr-ifirst-fig{display:none;margin:0}
@media (min-width:960px){
 .rr-ifirst{padding:44px 0 48px}
 .rr-ifirst-row{grid-template-columns:1.15fr 1fr;grid-template-rows:auto auto 1fr;gap:20px 32px;align-items:start}
 .rr-ifirst-form{grid-column:1;grid-row:1/span 3}
 .rr-ifirst-more,.rr-ifirst-call,.rr-ifirst-fig{grid-column:2}
 .rr-ifirst-more{grid-row:1;padding-top:38px}
 .rr-ifirst-call{grid-row:2;display:block;padding:20px 22px}
 .rr-ifirst-call .rr-callcard-k{font-size:1.35rem;margin-bottom:6px}
 .rr-ifirst-call .rr-callcard-num{font-size:1.65rem}
 .rr-ifirst-fig{display:block;grid-row:3;align-self:stretch;min-height:180px;position:relative;overflow:hidden;border-radius:var(--r)}
 .rr-ifirst-fig img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
 .rr-ifirst-row:not(:has(.rr-ifirst-more)) .rr-ifirst-call{grid-row:1;margin-top:38px}
}

/* text + photo */
.rr-split{display:grid;gap:22px;align-items:center}
.rr-split-fig{margin:0}
.rr-split-fig img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r);box-shadow:8px 8px 0 var(--dust)}
.rr-sec--sand .rr-split-fig img{box-shadow:8px 8px 0 var(--jun-m)}
@media (max-width:959px){.rr-split-fig{order:-1}.rr-split-fig img{aspect-ratio:16/9}}
@media (min-width:960px){.rr-split{grid-template-columns:1.2fr 1fr;gap:56px}.rr-split--flip .rr-split-fig{order:-1}.rr-split--flip{grid-template-columns:1fr 1.2fr}}

/* numbered list panel (dark) */
.rr-list-wrap{display:grid;gap:14px}
.rr-list-pre p,.rr-list-post p{font-size:1.04rem}
.rr-numlist{list-style:none;margin:0;padding:0;display:grid;gap:10px;counter-reset:n}
.rr-numlist li{counter-increment:n;position:relative;background:var(--char2);border:1px solid var(--char3);border-radius:var(--r);padding:14px 16px 14px 58px;color:#EDE5D8;line-height:1.5}
.rr-numlist li::before{content:counter(n);position:absolute;left:0;top:0;bottom:0;width:44px;display:grid;place-items:center;background:var(--sun);color:var(--char);font-family:var(--disp);font-weight:800;font-size:1.3rem;border-radius:var(--r) 0 0 var(--r)}
.rr-numlist strong{color:#fff}
@media (min-width:860px){.rr-numlist{grid-template-columns:1fr 1fr}.rr-numlist li:last-child:nth-child(odd){grid-column:span 2}}

/* icon cards: each card carries its own H2 */
.rr-icards{display:grid;gap:16px}
.rr-icard{background:#fff;border:1px solid var(--rule);border-top:5px solid var(--jun-m);border-radius:var(--r);padding:20px 20px 8px}
.rr-sec--sand .rr-icard{border-color:#D6C6AA;border-top-color:var(--sun)}
.rr-icard-top{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.rr-icard-top .rr-ico{width:42px;height:42px;color:var(--jun);background:#DDEFEC;border-radius:50%;padding:8px}
.rr-h2c{font-family:var(--disp);font-weight:800;font-size:1.35rem;line-height:1.1;margin:0;color:var(--ink)}
.rr-icard p{font-size:.98rem}
.rr-icard-fig{margin:0;border-radius:var(--r);overflow:hidden;min-height:200px;position:relative}
.rr-icard-fig img{width:100%;height:100%;object-fit:cover;aspect-ratio:16/10}
@media (min-width:760px){
 .rr-icards--2,.rr-icards--3,.rr-icards--4{grid-template-columns:1fr 1fr}
 .rr-icards--3>:last-child{grid-column:span 2}
 .rr-icard-fig img{position:absolute;inset:0;aspect-ratio:auto}
}
@media (min-width:1080px){
 .rr-icards--3{grid-template-columns:repeat(3,1fr)}.rr-icards--3>:last-child{grid-column:auto}
 .rr-icards--1{grid-template-columns:1fr}
}

/* long section without a photo: icon head + two text columns */
.rr-note-head{display:flex;align-items:center;gap:14px;margin-bottom:6px}
.rr-note-head .rr-h2--in{margin:0}
.rr-note-head .rr-ico{width:48px;height:48px;color:var(--sun-d);background:#fff;border-radius:50%;padding:9px;flex:none}
.rr-note-body{margin-top:14px;border-left:5px solid var(--sun);padding-left:clamp(14px,2.5vw,24px)}
@media (min-width:960px){.rr-note-body{columns:2;column-gap:40px}.rr-note-body p{max-width:none}}

/* lone card with no photo: heading left, text right on wide screens */
@media (min-width:860px){
 .rr-icards--1 .rr-icard{display:grid;grid-template-columns:minmax(260px,1fr) 2fr;column-gap:36px;align-items:start;padding:24px 26px 12px}
 .rr-icards--1 .rr-icard-top{grid-column:1;grid-row:1/span 6}
 .rr-icards--1 .rr-icard p{grid-column:2;font-size:1.02rem}
}
.rr-sec--quote .rr-quote-copy a{color:#fff}

/* single before/after pair */
.rr-ba-grid--one{max-width:1040px;margin-inline:auto}

/* final quote: back link under the form */
.rr-back{margin:18px 0 0;font-size:1rem;color:#D9CFC0}
.rr-back a{color:#fff;font-weight:600}
.rr-ticks{margin:0 0 1em;padding-left:1.2em}.rr-ticks li{margin-bottom:.35em}
