/* Revamp layer (Sept 2026) — sits on top of the existing site styles. */
/* desktop links in the header; the hamburger menu stays for everything else */
nav.site ul.rv-links{display:none}
@media (min-width:980px){
  nav.site ul.rv-links{display:flex;list-style:none;gap:1.7rem;margin:0 1.8rem 0 auto;padding:0;align-items:center}
  nav.site ul.rv-links a{font-family:'Inter',sans-serif;font-size:15px;letter-spacing:.02em;text-decoration:none;padding:.5rem 0;border-bottom:1px solid transparent}
  nav.site ul.rv-links a:hover,nav.site ul.rv-links a[aria-current=page]{border-bottom-color:#9B453A}
}
/* components used by the new sections */
.v54{--paper:#F8F5F0;--panel:#EEE9E1;--panel-2:#E8E3DA;--ink:#242321;--aub:#3C2833;--aub-ink:#281A22;--slate:#4D5861;--coral:#9B453A;--mul:#7E3247;--line:rgba(60,40,51,.14);
  --fd:'Fraunces',Georgia,serif;--fb:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;--fm:'Space Mono',ui-monospace,monospace;
  font-family:var(--fb);color:var(--ink);line-height:1.65;font-size:18px;position:relative;z-index:2}
.v54 a{color:#9B453A}
.v54 *{box-sizing:border-box}
.v54 img{max-width:100%;display:block}
.v54 .wrap{max-width:1080px;margin:0 auto;padding:0 2rem}
.v54 .narrow{max-width:780px}
.v54 h2,.v54 h3{font-family:var(--fd);font-weight:400;color:var(--aub-ink);line-height:1.18;margin:0 0 .55em;text-align:left}
.v54 h2{font-size:clamp(1.7rem,3.2vw,2.35rem)}
.v54 h2 em{color:var(--mul);font-style:italic}
.v54 h3{font-size:1.28rem;font-weight:500}
.v54 p{margin:0 0 1em}
.v54 .eyebrow{font-family:var(--fm);font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--slate);margin:0 0 16px;font-weight:400;text-align:left}
.v54 .lead{font-family:var(--fd);font-style:italic;font-size:1.28rem;color:var(--aub);max-width:720px;line-height:1.5}
.v54 .muted{color:var(--slate)}
.v54 .small{font-size:15px}
.v54 section,.v54.band{padding:84px 0}
.v54 .alt,.v54.alt{background:var(--panel)}
.v54 .sec-head{max-width:760px;margin-bottom:36px}
.v54 .grid{display:grid;gap:22px}
.v54 .g2{grid-template-columns:repeat(2,1fr)}
.v54 .g3{grid-template-columns:repeat(3,1fr)}
@media (max-width:900px){.v54 .g3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.v54 .g2,.v54 .g3{grid-template-columns:1fr}.v54 section,.v54.band{padding:60px 0}.v54 .wrap{padding:0 1.3rem}}
.v54 .card{background:#FCFAF7;border:1px solid var(--line);border-top:2px solid var(--aub);border-radius:2px;padding:28px;box-shadow:0 10px 28px rgba(60,40,51,.06)}
.v54 .card .num{font-family:var(--fm);font-size:13px;letter-spacing:.14em;color:var(--slate);display:block;margin-bottom:10px;text-transform:uppercase}
.v54 a.card{display:block;position:relative;text-decoration:none;color:var(--ink);transition:transform .26s cubic-bezier(.16,1,.3,1),background-color .26s,color .26s}
.v54 a.card::before{content:'';position:absolute;left:0;bottom:0;height:2px;width:0;background:#B95B49;transition:width .64s cubic-bezier(.16,1,.3,1)}
.v54 a.card:hover,.v54 a.card:focus-visible{transform:translateY(-6px);background:#3C2833;color:#E8E3DA}
.v54 a.card:hover::before,.v54 a.card:focus-visible::before{width:44px}
.v54 a.card:hover h3,.v54 a.card:hover p,.v54 a.card:focus-visible h3,.v54 a.card:focus-visible p{color:#E8E3DA}
.v54 a.card:hover .tag,.v54 a.card:hover .more,.v54 a.card:focus-visible .tag,.v54 a.card:focus-visible .more{color:#E08A76}
.v54 .card .more,.v54 .more{font-family:var(--fm);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#9B453A;margin-top:12px;display:inline-block;text-decoration:none;border-bottom:1px solid currentColor}
.v54 .card.photo{padding:0;overflow:hidden}
.v54 .card.photo img{width:100%;aspect-ratio:4/3;object-fit:cover}
.v54 .card.photo .in{padding:22px 24px 26px}
.v54 .flow{list-style:none;padding:0;margin:0 0 28px;display:grid;grid-template-columns:repeat(7,1fr);gap:10px;counter-reset:s}
.v54 .flow li{position:relative;background:#FCFAF7;border:1px solid var(--line);border-radius:2px;padding:16px 12px;font-size:14.5px;line-height:1.35;color:var(--aub-ink);font-weight:500;counter-increment:s}
.v54 .flow li::before{content:counter(s,decimal-leading-zero);display:block;font-family:var(--fm);font-size:13px;color:var(--slate);margin-bottom:6px;font-weight:400}
.v54 .flow li:not(:last-child)::after{content:'→';position:absolute;right:-10px;top:50%;transform:translateY(-50%);color:var(--slate);font-size:14px;z-index:1}
@media (max-width:900px){.v54 .flow{grid-template-columns:1fr}.v54 .flow li:not(:last-child)::after{content:'↓';right:auto;left:50%;top:auto;bottom:-15px;transform:none}}
.v54 .tag{display:inline-block;font-family:var(--fm);font-size:13px;letter-spacing:.12em;text-transform:uppercase;padding:4px 8px;border-radius:2px;margin-bottom:12px;border:1px solid currentColor}
.v54 .tag.verified{color:#FCFAF7;background:#3C2833;border-color:#3C2833}.v54 .tag.operating{color:var(--aub)}.v54 .tag.independent{color:var(--slate)}.v54 .tag.method{color:var(--slate);border-style:dashed}
.v54 ul.clean{padding:0;margin:0;list-style:none}
.v54 ul.clean li{padding:9px 0 9px 22px;position:relative;border-bottom:1px solid var(--line)}
.v54 ul.clean li::before{content:'';position:absolute;left:2px;top:21px;width:8px;height:1px;background:var(--slate)}
.v54 ul.clean li:last-child{border-bottom:none}
.v54 .tbl{width:100%;border-collapse:collapse;font-size:15.5px;background:#FCFAF7;border:1px solid var(--line)}
.v54 .tbl th,.v54 .tbl td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}
.v54 .tbl th{font-family:var(--fm);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--slate);font-weight:400;background:var(--panel-2)}
.v54 .tbl-scroll{overflow-x:auto}
.v54 .note{background:var(--panel-2);border-left:3px solid var(--mul);padding:16px 20px;font-size:15.5px}
.v54 .boundary{border:1px solid var(--aub);border-radius:2px;padding:22px 24px;background:#FCFAF7}
.v54 .split{display:grid;grid-template-columns:1.25fr 1fr;gap:56px;align-items:start}
@media (max-width:860px){.v54 .split{grid-template-columns:1fr;gap:32px}}
.v54 .service{padding:52px 0;border-top:1px solid var(--line)}
.v54 .service:first-child{border-top:none;padding-top:0}
.v54 .service .head{display:grid;grid-template-columns:130px 1fr;gap:24px}
.v54 .service .idx{font-family:var(--fm);color:var(--slate);font-size:13.5px;letter-spacing:.14em;padding-top:12px}
@media (max-width:640px){.v54 .service .head{grid-template-columns:1fr;gap:4px}}
.v54 .steps{counter-reset:st;list-style:none;padding:0;margin:0;display:grid;gap:14px}
.v54 .steps li{counter-increment:st;display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:baseline}
.v54 .steps li::before{content:counter(st);font-family:var(--fd);font-style:italic;font-size:1.7rem;color:var(--mul)}
.v54.fullbleed img,.v54 .fullbleed img{width:100%;max-width:none;height:clamp(340px,56vh,620px);object-fit:cover}
.v54 .embed{width:100%;border:1px solid var(--line);border-radius:2px;background:#3C2833}
.v54 .embed iframe{width:100%;height:760px;border:0;display:block}
@media (max-width:640px){.v54 .embed{display:none}}
/* homepage system list inside the old composite block */
.composite ol.rv-system{list-style:none;counter-reset:s;margin:1rem 0 1.2rem;padding:0;display:grid;gap:.35rem}
.composite ol.rv-system li{counter-increment:s;font-family:'Fraunces',Georgia,serif;font-size:1.12rem;color:#281A22;padding:.35rem 0;border-bottom:1px solid rgba(60,40,51,.12);display:flex;gap:.9rem;align-items:baseline}
.composite ol.rv-system li::before{content:counter(s,decimal-leading-zero);font-family:'Space Mono',monospace;font-size:13px;color:#4D5861}

@media (min-width:980px){nav.site ul.rv-links.rv-dark a{color:#E8E3DA !important}}
.v54 a.rv-more,a.rv-more{color:#9B453A;font-family:'Space Mono',monospace;font-size:13px;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid currentColor;text-decoration:none}
