:root{--heart: #b3121f;--heart-hover: #8a0e18;--wine: #6b0f1a;--wine-hover: #4d0a13;--ink: #1f1a1a;--muted: #4f4545;--paper: #ffffff;--blush: #fbf4f2;--rose: #f6d9d9;--line: #e6d3cf;--focus: #1f1a1a;--sans: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--serif: Georgia, "Iowan Old Style", "Palatino Linotype", Palatino, "Times New Roman", serif;--wrap: 72rem;--measure: 68ch;--logo-ratio: 420 / 103}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--blush);color:var(--ink);font-family:var(--sans);font-size:1.0625rem;line-height:1.6}img{max-width:100%;height:auto}h1,h2,h3,h4{font-family:var(--serif);line-height:1.2;font-weight:700}h1{margin:0 0 .75rem;font-size:clamp(2.1rem,4.6vw,3.2rem);letter-spacing:-.02em;max-width:18em;color:var(--wine)}h2{margin:2.25rem 0 .75rem;font-size:clamp(1.5rem,2.4vw,1.85rem);color:var(--wine)}h3{margin:1.5rem 0 .4rem;font-size:1.25rem;color:var(--ink)}p,li,dd{max-width:var(--measure)}main p a,main li a{text-decoration:underline;text-underline-offset:.16em;overflow-wrap:anywhere}a{color:var(--wine);text-underline-offset:.16em}a:hover{color:var(--heart)}:focus{outline:none}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip-link{position:absolute;left:.75rem;top:0;transform:translateY(-150%);background:var(--paper);color:var(--ink);font-weight:700;padding:.6rem .9rem;z-index:10}.skip-link:focus{transform:translateY(.75rem)}.draft-banner{margin:0;max-width:none;background:var(--ink);color:#fff;text-align:center;font-size:1rem;font-weight:650;padding:.45rem 1rem}.wrap{width:min(var(--wrap),calc(100% - 2rem));margin-inline:auto}.page{padding:1.75rem 0 3rem}.lede{font-size:1.25rem;font-weight:650;line-height:1.45;max-width:42rem}.subhead{margin:-.25rem 0 1rem;font-style:italic;font-weight:400;color:var(--heart)}.eyebrow{margin:2.25rem 0 0;font-size:.85rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--heart)}.eyebrow+h2{margin-top:.25rem}.label{margin:1rem 0 .25rem;font-weight:750}.label+ul{margin-top:.25rem}.site-header{position:relative;background:var(--paper);border-bottom:1px solid var(--line)}.brand-rule{height:4px;background:var(--heart)}.header-layout{display:grid;grid-template-columns:1fr auto;grid-template-areas:"brand contact" "nav nav";align-items:center;gap:.75rem 1.5rem;padding-block:.9rem .35rem}.brand{grid-area:brand;display:inline-flex;align-items:center;justify-self:start;min-width:0;text-decoration:none}.brand img{display:block;width:auto;height:2.75rem;aspect-ratio:var(--logo-ratio);max-width:none}.header-contact{grid-area:contact;justify-self:end;display:flex;flex-wrap:nowrap;align-items:flex-start;gap:1.25rem;text-align:right}.header-phone,.header-fax{flex:0 0 auto}.number-label{display:block;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.header-phone-number,.header-fax-number,.band-phone,.footer-phone,.footer-fax,.office-card dd{font-variant-numeric:normal}.header-phone .number-label,.header-fax .number-label,.header-phone-number,.header-fax-number{margin:0;max-width:none}.header-phone-number,.header-fax-number{font-size:1.0625rem;font-weight:700;line-height:1.2;white-space:nowrap}.header-fax-number{color:var(--wine)}.header-phone-number a,.band-phone a{color:var(--wine);text-decoration:none}.header-phone-number a:hover,.band-phone a:hover{color:var(--heart);text-decoration:underline}.nav-toggle,.nav-toggle-label{display:none}.nav-list{display:flex;flex-wrap:wrap;gap:.15rem .35rem;list-style:none;padding:0;margin:0}.nav-list li{max-width:none}.nav-list a{display:inline-flex;align-items:center;min-height:44px;padding:.2rem .45rem;color:var(--ink);text-decoration:none;font-weight:650;border-bottom:3px solid transparent}.nav-list a:hover{color:var(--wine);text-decoration:underline}.nav-list a[aria-current=page]{color:var(--wine);border-bottom-color:var(--heart)}.external-icon{width:.85em;height:.85em;margin-left:.3em;flex:none}#primary-nav{grid-area:nav}.hero-band{position:relative;overflow:hidden;background:linear-gradient(120deg,var(--wine) 0%,#8a0e18 55%,var(--heart) 100%);color:#fff}.hero-band .wrap{position:relative;z-index:1;padding-block:3rem 5.5rem}.hero-band h1{color:#fff;max-width:14em}.hero-band .lede{margin:.5rem 0 1.5rem;color:var(--rose);font-family:var(--serif);font-size:clamp(1.25rem,2.4vw,1.6rem);font-weight:400;font-style:italic}.heartbeat{position:absolute;left:0;right:0;bottom:1.25rem;width:100%;height:4.5rem;color:#ffffff59;pointer-events:none}.hero-band .button{background:var(--paper);border-color:var(--paper);color:var(--wine)}.hero-band .button:hover{background:var(--rose);border-color:var(--rose);color:var(--wine-hover)}.hero-band .button:focus-visible,.hero-band a:focus-visible{outline-color:#fff}.hero{display:grid;gap:1.75rem;align-items:center}.hero-media{position:relative;width:100%;aspect-ratio:4 / 3;border-radius:1rem;overflow:hidden;background:var(--wine-hover);border:4px solid rgba(255,255,255,.9);box-shadow:0 12px 32px #1f1a1a59}.hero-image{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 50%}@media(min-width:56rem){.hero{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:2.5rem}}.highlights{list-style:none;padding:0;margin:-3.25rem 0 0;position:relative;z-index:2;display:grid;grid-template-columns:1fr;gap:.85rem}.highlights>li,.service-card,.office-card,.panel{margin:0;max-width:none;background:var(--paper);border:1px solid var(--line);border-radius:.75rem;box-shadow:0 1px 2px #1f1a1a0d,0 8px 20px #1f1a1a0f;padding:1.1rem 1.15rem}.highlights>li{border-top:4px solid var(--heart)}.highlights ul li+li{margin-top:.25rem}.highlights h2{margin:0;font-size:1.15rem;color:var(--wine)}.highlights ul{margin:.5rem 0 0;padding-left:1.1rem}.highlights p{margin:.5rem 0 0}.card-pair{display:grid;grid-template-columns:1fr;gap:.85rem;margin-top:1rem}.service-card{display:flex;flex-direction:column;border-left:4px solid var(--heart)}.service-card h3{margin-top:0;color:var(--wine)}.service-card p{margin:0 0 1rem}.service-card .button{margin-top:auto;align-self:flex-start}.service-list{margin-top:.5rem}.service-list section{padding:.25rem 0 .5rem;border-bottom:1px solid var(--line)}.service-list section:last-child{border-bottom:0}.service-list h3,.lead-ins strong{color:var(--wine)}.contact-band{background:var(--paper);border-top:4px solid var(--wine);border-bottom:4px solid var(--heart);padding:1.5rem 0 1.75rem}.contact-band h2{margin-top:0}.band-tagline{font-size:1.05rem}.band-numbers{display:flex;flex-wrap:wrap;gap:1rem 2.75rem;align-items:flex-end;margin:.75rem 0 0}.band-item dt{max-width:18rem}.band-numbers dd{margin:.2rem 0 0;max-width:none}.band-phone a{font-size:clamp(1.6rem,3vw,2.15rem);font-weight:800;line-height:1.15}.band-fax{font-size:1.25rem;font-weight:700;color:var(--wine)}.site-footer{background:var(--wine);color:#fff;padding:1.75rem 0 2.25rem}.site-footer a{color:#fff;text-decoration:underline;text-underline-offset:.16em}.site-footer a:hover{color:var(--rose)}.site-footer a:focus-visible{outline:3px solid #fff;outline-offset:3px}.site-footer .number-label{color:var(--rose)}.footer-grid{display:grid;gap:.35rem 2rem}.footer-phone,.footer-fax{margin:.2rem 0 .6rem;font-size:1.25rem;font-weight:800}.footer-tagline{margin:0 0 .5rem;font-family:var(--serif);font-size:1.15rem;max-width:none}.footer-nav ul{display:flex;flex-wrap:wrap;gap:.45rem 1.15rem;list-style:none;padding:0;margin:.65rem 0 0}.footer-nav li{margin:0;max-width:none}.footer-nav a{font-weight:700}.footer-cities{margin:1rem 0 0;font-size:.95rem;max-width:none}.footer-meta{margin-top:1.35rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.35)}.footer-meta p{margin:.4rem 0 0;max-width:65ch;font-size:.98rem}.footer-meta p:first-child{margin-top:0}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.7rem 1.25rem;background:var(--heart);color:#fff;font-weight:750;text-decoration:none;border:2px solid var(--heart);border-radius:.2rem;line-height:1.3;text-align:center}.button:hover{background:var(--heart-hover);border-color:var(--heart-hover);color:#fff;text-decoration:underline}.button-secondary{background:var(--paper);color:var(--wine);border-color:var(--wine)}.button-secondary:hover{background:var(--blush);color:var(--wine-hover);border-color:var(--wine-hover)}.cta-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin:1.25rem 0}.office-grid{list-style:none;padding:0;margin:1.25rem 0 0;display:grid;grid-template-columns:1fr;gap:.85rem}.office-card{display:flex;flex-direction:column;border-top:4px solid var(--heart)}.office-card .directions{margin:auto 0 0;padding-top:1rem;max-width:none}.office-card .directions a{font-weight:750}.office-card h2{margin-top:0;font-size:1.35rem}.office-card address{font-style:normal;margin:0}.office-card .address-line{display:block}.office-card dl{margin:0}.office-card dt{font-weight:750;margin-top:.7rem}.office-card dd{margin:.1rem 0 0}h4{margin:1.25rem 0 .35rem;font-size:1.05rem;color:var(--wine)}.notice-list{padding-left:1.2rem}.notice-list li+li{margin-top:.3rem}.on-this-page{background:var(--paper);border:1px solid var(--line);border-radius:.75rem;padding:.85rem 1rem 1rem;margin:1.25rem 0 .5rem}.on-this-page p{margin:0;font-weight:750}.on-this-page ul{margin:.4rem 0 0;padding-left:1.2rem}.on-this-page li{margin:.2rem 0}section[id]{scroll-margin-top:1rem}.legal h2{font-size:1.35rem;margin-top:1.75rem}.legal address{font-style:normal}.updated{color:var(--muted)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:860px){.header-layout{grid-template-areas:"brand menu" "contact contact" "nav nav";align-items:center}.brand img{height:2.4rem}.header-contact{justify-self:stretch;width:100%;justify-content:space-between;flex-wrap:wrap;column-gap:.75rem;row-gap:.65rem;text-align:left}.nav-toggle{display:block;grid-area:menu;justify-self:end;position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.nav-toggle-label{display:inline-flex;grid-area:menu;justify-self:end;align-items:center;justify-content:center;min-height:44px;min-width:5.25rem;padding:.35rem .85rem;border:2px solid var(--wine);background:var(--paper);color:var(--wine);font-weight:750;cursor:pointer}.nav-toggle:focus-visible+.nav-toggle-label{outline:3px solid var(--focus);outline-offset:3px}.label-open{display:none}.nav-toggle:checked+.nav-toggle-label .label-closed{display:none}.nav-toggle:checked+.nav-toggle-label .label-open{display:inline}#primary-nav{display:none}.nav-toggle:checked~#primary-nav{display:block}.nav-list{flex-direction:column;gap:0;padding-bottom:.5rem}.nav-list a{display:flex;border-bottom:1px solid var(--line)}.nav-list a[aria-current=page]{border-left:4px solid var(--heart);padding-left:.55rem}}@media(max-width:40rem){.page{padding-top:1rem}.hero-band .wrap{padding-block:2rem 7rem}.cta-row{flex-direction:column;align-items:stretch}}@media(min-width:40rem){.highlights,.card-pair,.office-grid{grid-template-columns:1fr 1fr}}@media(min-width:60rem){.highlights{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:861px){.brand img{height:3.6rem}.footer-grid{grid-template-columns:1.4fr 1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
