/* RSS B22 — ledger-derived identity, graphics and interaction motion. */
:root{--navy:#10243b;--blue:#193a5c;--blue-dark:#10243b;--gold:#bd954e;--motion-ease:cubic-bezier(.22,.7,.25,1)}
.brand{gap:12px}.brand img{width:56px;height:56px;padding:0;background:transparent;border-radius:0!important}
.brand-name{font-size:18px;line-height:1.16;letter-spacing:-.025em;font-weight:600}.brand-tag{font-size:10px;letter-spacing:.18em;font-weight:500;margin-top:5px}
.site-header .brand-tag,.site-footer .brand-tag{color:#e5c994}
.site-header{background:var(--navy)}.site-header .header-row{gap:22px}
.site-header .nav{gap:21px}.site-header .nav a{white-space:nowrap}
.site-footer .brand img{width:64px;height:64px}.site-footer .brand-name{font-size:19px}
.brand-symbols{width:0;height:0;pointer-events:none}
.rss-icon{overflow:visible}.icon-accent{stroke:var(--icon-accent,#bd954e)}
.btn:not(.outline):not(.white) .icon-accent,.directory-finder .icon-accent{stroke:currentColor}
.brand-hero-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.48fr);gap:35px;align-items:center}
.brand-hero-art{color:#fff;align-self:center}.brand-illustration{width:100%;height:auto;display:block;max-width:420px;margin:auto;overflow:visible}
.brand-hero-art .brand-illustration{max-width:360px}
.directory-intro{max-width:none}.directory-intro h1{font-size:clamp(39px,4.1vw,58px)}
.directory-intro .outreach-proof{max-width:730px}
.hero-offer{position:relative}.hero-offer-copy{display:flex;align-items:center;gap:20px;min-width:0}
.hero-offer-art{width:112px;flex:0 0 112px;color:#fff}.hero-offer-art .brand-illustration{width:112px}
.hero-offer h2{font-size:21px}.hero-offer .btn{max-width:390px}
.brand-intro-layout{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:55px;align-items:center}
.brand-intro-art{color:white}.brand-intro-layout .brand-illustration{max-width:235px}
.service-offers h3{display:flex;align-items:center;gap:11px;flex-wrap:wrap}.service-offers h3>.rss-icon{width:28px;height:28px}
.editorial-tool>.rss-icon:first-child{width:30px;height:30px;color:var(--navy)}
.editorial-tool{position:relative;transition:background .22s,color .22s,border-color .22s}
.editorial-tool::before{content:'';position:absolute;left:0;top:12px;bottom:12px;width:3px;background:var(--gold);transform:scaleY(0);transform-origin:bottom;transition:transform .24s var(--motion-ease)}
.editorial-tool:hover,.editorial-tool:focus-visible{background:#f5f0e5}.editorial-tool:hover::before,.editorial-tool:focus-visible::before{transform:scaleY(1)}
.editorial-tool:hover>.rss-icon:first-child,.editorial-tool:focus-visible>.rss-icon:first-child{transform:translateY(-2px)}
.editorial-tool>.rss-icon{transition:transform .22s var(--motion-ease)}
.btn{transition:background .2s,color .2s,border-color .2s,transform .16s var(--motion-ease)}
.btn:active:not(:disabled){transform:translateY(1px)}.btn>.rss-icon:last-child{transition:transform .22s var(--motion-ease)}
.btn:hover:not(:disabled)>.rss-icon:last-child,.btn:focus-visible>.rss-icon:last-child{transform:translateX(3px)}
.nav a{position:relative}.nav a::after{content:'';position:absolute;bottom:-7px;left:0;right:0;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .22s var(--motion-ease)}
.nav a:hover::after,.nav a:focus-visible::after,.nav a[aria-current=page]::after{transform:scaleX(1)}
.directory-finder>div,.search-form,.field input,.field select,.field textarea{transition:border-color .2s,background-color .2s}
.directory-finder>div:focus-within{border-color:var(--gold);outline:2px solid var(--gold);outline-offset:3px}
.field input:focus,.field select:focus,.field textarea:focus{background:#fffdf7}
.firm-card{position:relative;transition:background .2s,border-color .2s}
.firm-card:hover,.firm-card:focus-within{background:#fcfaf5;border-color:#bd954e;transform:none}
.showcase-row{transition:background .2s}.showcase-row:hover,.showcase-row:focus-within{background:#fcfaf5}
.carousel-items.is-changing .showcase-row:not([hidden]){animation:rss-ledger-row .38s var(--motion-ease) both}
.map-cluster.is-selected circle{animation:rss-map-select .3s var(--motion-ease)}
#quote-form fieldset{transition:border-color .22s}#quote-form fieldset:focus-within{border-color:var(--gold)}
.quote-more[open]>.quote-services,.quote-more[open]>.field{animation:rss-panel-enter .25s var(--motion-ease)}
.brand-error{padding:80px 0;min-height:55vh}.brand-error h1{margin-bottom:20px}.brand-error p{margin-bottom:24px}
@keyframes rss-ledger-row{from{opacity:.35;transform:translateX(9px)}to{opacity:1;transform:translateX(0)}}
@keyframes rss-map-select{from{stroke-width:7}to{stroke-width:3}}
@keyframes rss-panel-enter{from{opacity:.4;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1150px){.site-header .nav{gap:14px}.site-header .nav a{font-size:11px}.brand-name{font-size:16px}.brand-hero-layout{grid-template-columns:minmax(0,1fr) 235px;gap:25px}.hero-offer-art{width:80px;flex-basis:80px}.hero-offer-art .brand-illustration{width:80px}}
@media(max-width:950px){.brand-hero-layout{grid-template-columns:minmax(0,1fr) 185px}.directory-intro h1{font-size:44px}.brand-intro-layout{grid-template-columns:minmax(0,1fr) 175px;gap:26px}.site-header .header-cta{display:none}.site-header .nav .mobile-directory{display:inline-flex}}
@media(max-width:700px){.brand-hero-layout{display:block}.brand-hero-art{display:none}.brand-intro-layout{grid-template-columns:minmax(0,1fr) 115px;gap:20px}.brand-intro-layout h1{font-size:33px}.hero-offer-copy{gap:17px}.hero-offer-art{width:75px;flex-basis:75px}.hero-offer-art .brand-illustration{width:75px}}
@media(max-width:620px){.brand img{width:46px;height:46px}.brand-name{font-size:16px}.brand-tag{font-size:9px;letter-spacing:.14em}.site-header .header-row{gap:10px}.site-header .nav a{font-size:15px}.site-header .nav{gap:0}.nav a::after{bottom:6px;right:auto;width:32px}.directory-intro h1{font-size:39px}.brand-intro-layout{display:block}.brand-intro-art{display:none}.hero-offer h2{font-size:20px}.hero-offer p{font-size:13px}.site-footer .brand img{width:55px;height:55px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js-reveal{opacity:1!important;transform:none!important}}
