/* Original-brand palette. Load after the new website's style.css. */
:root {
  --ink:#582C60; --ink-2:#582C60; --ink-3:#582C60;
  --violet:#582C60; --violet-deep:#582C60;
  --orchid:#8470AD; --magenta:#582C60; --lilac:#CDC0E7;
  --lav:#F1E6F6; --paper:#ffffff; --text:#2b2b2b; --muted:#625a6b;
  --grad:linear-gradient(120deg,#582C60,#8470AD);
  --grad-soft:linear-gradient(120deg,#F1E6F6,#F1E6F6);
  --shadow-sm:0 2px 10px rgba(52,30,77,.06);
  --shadow-md:0 12px 34px rgba(52,30,77,.10);
  --shadow-lg:0 24px 60px rgba(52,30,77,.14);
  --glow:0 0 0 1px rgba(132,112,173,.2),0 8px 24px rgba(52,30,77,.14);
}
.topbar{background:#582C60}
.site-head{background:rgba(255,255,255,.97);border-color:#e3dbea}
.brand-mark{filter:drop-shadow(0 3px 7px rgba(52,30,77,.15))}
.brand-name em{background:none;color:#582C60}
.brand-logo{display:block;width:240px;height:auto;max-width:100%;object-fit:contain}
.site-head .brand{flex-shrink:0;background:#582c60;border-radius:3px;padding:5px}
.footer .brand{display:inline-flex;background:#582c60;border-radius:3px;padding:5px}
.footer .brand-logo{width:260px}
@media(min-width:901px){
  .nav-links a.nl{white-space:nowrap;font-size:.8rem;padding-left:9px;padding-right:9px}
}
@media(min-width:901px) and (max-width:1200px){
  .site-head .brand-logo{width:175px}
  .nav{gap:10px;padding-left:16px;padding-right:16px}
  .nav-links a.nl{padding-left:8px;padding-right:8px;font-size:.78rem}
  .nav-links .btn-sm{padding:10px 12px;font-size:.76rem}
}
@media(max-width:640px){.site-head .brand-logo{width:200px}}
.nav-links li.active>a.nl.active{color:#fff;background:#582C60;box-shadow:none}
.btn-primary{background:#582C60;box-shadow:0 8px 20px rgba(52,30,77,.16)}
.btn-primary:hover{background:#582C60;box-shadow:0 12px 26px rgba(52,30,77,.2)}
.btn-ghost{box-shadow:inset 0 0 0 2px #8470AD}
.hero,.page-hero{background:linear-gradient(115deg,#582C60 0%,#582C60 50%,#8470AD 100%)}
.hero-blob.b1{background:#8470AD;opacity:.22}
.hero-blob.b2{background:#CDC0E7;opacity:.2}
.hero-blob.b3{background:#B19CD9;opacity:.15}
.hero .kicker,.page-hero .kicker,.hero-sub,.hero-copy,.hero-localglobal,.page-hero .lede,.crumbs,.crumbs a,.hstat span{color:#F1E6F6}
.hero .kicker::before,.page-hero .kicker::before{background:#CDC0E7}
.hero h1 .shine,.hstat b{background:none;color:#F1E6F6}
.hero .btn-ghost{color:#fff;box-shadow:inset 0 0 0 2px #CDC0E7}
.hero .btn-ghost:hover{background:rgba(255,255,255,.12)}
.ticker{background:#8470AD;box-shadow:0 12px 28px rgba(52,30,77,.12)}
.sec-dark{background:#fff;color:#2b2b2b}
.sec-dark h1,.sec-dark h2,.sec-dark h3,.sec-dark h4{color:#582C60}
.sec-dark strong{color:#2b2b2b}
.sec-dark a:not(.btn){color:#582C60}
.sec-dark .sec-head p,.sec-dark .prose .lead,.pa-note{color:#625a6b}
.sec-dark .prose h3{color:#582C60}
.sec-dark .callout{background:#F1E6F6;color:#582C60}
.sec-dark .chip-list li{background:#F1E6F6;border-color:#CDC0E7;color:#582C60}
#weare{background:#F1E6F6}
.pa-card{background:#fff;border-color:#CDC0E7;box-shadow:0 4px 20px rgba(52,30,77,.05)}
.pa-card h3{color:#582C60}
.pa-card li{color:#2b2b2b}
.pa-card:hover{border-color:#8470AD;box-shadow:0 20px 42px rgba(52,30,77,.12)}
.pa-card::after{background:radial-gradient(closest-side,rgba(205,192,231,.22),transparent)}
.pa-icon{background:#8470AD;box-shadow:none}
.pa-card .pa-more{color:#582C60}
.spec-side{background:linear-gradient(160deg,#582C60,#582C60)}
.spec-role,.spec-cred,.spec-mail{color:#F1E6F6!important}
.spec-side h3{color:#fff}
.cta-band{background:linear-gradient(115deg,#582C60,#8470AD)}
.cta-band p{color:#F1E6F6}
#appointment{background:#CDC0E7}
#appointment h2,#appointment h4{color:#582C60!important}
#appointment p,#appointment .ci-card a{color:#582C60!important}
#appointment .ci-card{border-color:rgba(52,30,77,.22)!important}
#appointment .hours-pill{background:#F1E6F6!important;color:#582C60!important}
.form-shell.dark-form{background:#F1E6F6;border-color:#B19CD9;box-shadow:var(--shadow-sm)}
.form-shell.dark-form .f-group label{color:#582C60}
.form-shell.dark-form input,.form-shell.dark-form textarea{background:#fff;border-color:#B19CD9;color:#2b2b2b}
.form-shell.dark-form .f-note{color:#625a6b}
.f-group input:focus,.f-group textarea:focus,.f-group select:focus{border-color:#582C60;box-shadow:0 0 0 4px rgba(132,112,173,.16)}
.f-req{color:#582C60}
.calc-result{background:linear-gradient(160deg,#582C60,#582C60)}
.res-line.grand b{background:none;color:#F1E6F6}
.calc-table th:last-child{color:#fff}
.footer{background:#582C60;color:#e2d9ec}
.f-links a,.f-contact a,.footer-bar a{color:#e2d9ec}
.f-contact svg{stroke:#CDC0E7}
.f-links a::before{color:#CDC0E7}
.footer-bar{color:#CDC0E7;border-color:rgba(205,192,231,.25)}
.f-social a{background:rgba(205,192,231,.12)}
.f-social svg{stroke:#F1E6F6}
.f-big-word{background:linear-gradient(180deg,rgba(205,192,231,.22),transparent 85%);background-clip:text;-webkit-background-clip:text}
/* Preserve contrast in inline SVG artwork without changing its geometry. */
svg stop[stop-color="#7C3AED"],svg stop[stop-color="#7c3aed"]{stop-color:#582C60}
svg stop[stop-color="#A855F7"],svg stop[stop-color="#a855f7"]{stop-color:#8470AD}
svg stop[stop-color="#D946EF"],svg stop[stop-color="#d946ef"]{stop-color:#B19CD9}
svg [fill="#A855F7"],svg [fill="#a855f7"]{fill:#8470AD}
svg [fill="#D946EF"],svg [fill="#d946ef"]{fill:#B19CD9}
svg [stroke="#D946EF"],svg [stroke="#d946ef"]{stroke:#B19CD9}
svg [stroke="#A855F7"],svg [stroke="#a855f7"]{stroke:#8470AD}
@media(max-width:900px){
  .nav-links{background:rgba(52,30,77,.98)}
  .nav-links a.nl:hover{color:#CDC0E7}
  .nav-links li.active>a.nl{color:#fff}
  .nav-toggle{position:relative;z-index:51}
  body.nav-open .nav-toggle span{background:#F1E6F6}
}
@media(max-width:640px){
  .topbar .tb-item:not(.tb-hide){display:block;white-space:normal;font-size:.7rem;line-height:1.9}
}
/* Dark navigation surrounding the supplied logo. */
.site-head{background:#582c60;border-bottom:1px solid rgba(205,192,231,.3)}
.site-head .brand{background:transparent}
.site-head .nav-links a.nl{color:#F1E6F6}
.site-head .nav-links a.nl:hover{background:rgba(205,192,231,.16);color:#fff}
.site-head .nav-links li.active>a.nl.active{background:#CDC0E7;color:#582c60;box-shadow:none}
.site-head .btn-primary{background:#CDC0E7;color:#582c60;box-shadow:none}
.site-head .btn-primary:hover{background:#F1E6F6;color:#582c60;box-shadow:0 5px 18px rgba(0,0,0,.12)}
.site-head .nav-toggle span{background:#F1E6F6}
.site-head a:focus-visible,.site-head button:focus-visible{outline:2px solid #CDC0E7;outline-offset:4px}
@media(max-width:900px){.site-head .nav-links{background:#582c60}}

/* Supplied 30-year anniversary mark in the We Are section. */
.anniversary-card{display:flex;align-items:center;justify-content:center;aspect-ratio:4/3.4}
.anniversary-card img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
@media(max-width:900px){.anniversary-card{max-width:480px;margin-inline:auto}}
