@font-face{font-family:DM;src:url('/assets/fonts/dm-sans-regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:DM;src:url('/assets/fonts/dm-sans-semibold.ttf') format('truetype');font-weight:600 800;font-display:swap}
:root{--paper:#f4efdf;--ink:#202b34;--muted:#505753;--line:#202b3433;--peach:#ecc39d;font-family:DM,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:4px}a:focus-visible{outline:3px solid #344c82;outline-offset:5px}h1,h2,p,figure{margin:0}a,button{-webkit-tap-highlight-color:transparent}.skip{position:absolute;left:20px;top:-100px;padding:16px;background:var(--paper);z-index:5}.skip:focus{top:12px}.masthead,main,footer{width:min(1080px,calc(100% - 80px));margin:auto}.masthead{display:flex;align-items:center;justify-content:space-between;padding:24px 0;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:12px;font-weight:600;line-height:1.35}.monogram{font-size:46px;letter-spacing:-5px;line-height:1;padding-right:5px}.login{display:flex;align-items:center;min-height:44px;font-size:13px;text-decoration:none;gap:10px}.intro{display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center;padding:40px 0 32px}.location{font-size:11px;letter-spacing:.12em;font-weight:600;margin-bottom:18px}h1{font-size:clamp(42px,5.5vw,64px);line-height:1.02;letter-spacing:-.055em;font-weight:600}.lead{font-size:18px;line-height:1.5;max-width:34ch;margin:20px 0 24px}.primary{display:flex;align-items:center;justify-content:space-between;gap:28px;width:fit-content;min-height:52px;padding:15px 22px;background:var(--ink);color:var(--paper);text-decoration:none;font-size:15px;font-weight:600;border-radius:4px}.primary:hover{background:#344c82}.portrait{position:relative;height:325px;isolation:isolate;background:var(--peach);overflow:hidden;border-radius:130px 130px 4px 4px}.court{position:absolute;width:115%;height:90%;left:-8%;bottom:0;opacity:.6;object-fit:contain;z-index:-1}.person{position:absolute;height:108%;width:auto;left:50%;transform:translateX(-50%);bottom:-5%;object-fit:contain}.portrait figcaption{position:absolute;bottom:0;left:0;right:0;background:var(--ink);color:var(--paper);padding:13px 20px;font-size:16px;font-weight:600}.portrait figcaption span{display:block;font-size:11px;font-weight:400;margin-top:4px}.portrait figcaption a{text-decoration:none}h2{font-size:20px;letter-spacing:-.025em;line-height:1.2}.practice{padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:30px;align-items:center}.practice ul{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:0;gap:16px}.practice a{display:flex;align-items:center;justify-content:space-between;min-height:44px;font-size:14px;text-decoration:none;gap:10px}.practice a:hover,.contact-link:hover{text-decoration:underline}.next{display:flex;justify-content:space-between;gap:60px;padding:28px 0}.next p{font-size:15px;line-height:1.5;max-width:47ch;margin:10px 0}.contact-link{font-size:14px;display:inline-flex;align-items:center;gap:16px;min-height:44px;font-weight:600}.next address{font-style:normal;flex-shrink:0}.phone{display:flex;align-items:center;min-height:44px;font-size:23px;letter-spacing:-.025em;text-decoration:none}.next address span{display:block;font-size:13px;line-height:1.5;color:var(--muted)}footer{border-top:1px solid var(--line);display:flex;gap:70px;justify-content:space-between;padding:18px 0 24px;color:var(--muted)}footer p{font-size:11px;line-height:1.5;max-width:75ch}footer nav{display:flex;gap:20px;white-space:nowrap}footer a{display:inline-flex;align-items:center;min-height:44px;font-size:11px}
@media(max-width:650px){.masthead,main,footer{width:calc(100% - 40px)}.masthead{padding:12px 0}.monogram{font-size:37px}.brand{font-size:10px;gap:10px}.login{font-size:12px;gap:6px}.intro{grid-template-columns:minmax(0,1fr) 116px;gap:12px;padding:28px 0 24px;align-items:start}.intro-copy{display:contents}.location{grid-column:1/-1;font-size:9px;margin:0 0 2px;letter-spacing:.1em}h1{grid-column:1;font-size:clamp(32px,8.8vw,45px);line-height:1.06;align-self:center}.lead{grid-column:1;font-size:15px;line-height:1.5;margin:0;padding-right:4px}.portrait{grid-column:2;grid-row:2/4;width:116px;height:192px;border-radius:64px 64px 3px 3px;align-self:center}.person{height:88%;bottom:10%;}.portrait figcaption{padding:9px 7px;font-size:10px;line-height:1.2}.portrait figcaption span{font-size:8px;line-height:1.5;margin-top:4px}.portrait figcaption span a{display:block;min-height:24px;padding-top:3px}.primary{grid-column:1/-1;width:100%;margin-top:8px;font-size:15px;min-height:52px;padding:14px 18px}.practice{display:block;padding:20px 0}h2{font-size:20px}.practice ul{grid-template-columns:1fr 1fr;column-gap:24px;row-gap:0;margin-top:10px}.practice a{font-size:14px;min-height:46px}.next{display:block;padding:22px 0 18px}.next p{font-size:14px;line-height:1.5;margin:8px 0 4px}.contact-link{font-size:13px;min-height:44px}.next address{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}.phone{font-size:18px;white-space:nowrap}.next address span{font-size:11px;line-height:1.5}footer{display:block;padding:14px 0 18px}footer p{font-size:10px;line-height:1.5}footer nav{gap:24px;margin-top:4px}footer a{font-size:11px;min-height:44px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* County reach and direct contact, 3 November 2026. */
.email-button{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:44px;margin-top:12px;padding:10px 14px;border:1px solid var(--ink);border-radius:4px;font-size:13px;font-weight:600;text-decoration:none}.email-button:hover{background:var(--ink);color:var(--paper)}.next address .email-button span{font-size:16px;color:inherit}
@media(max-width:650px){.location{line-height:1.5;letter-spacing:.07em}.next address{display:grid;grid-template-columns:1fr auto;gap:8px 12px}.email-button{grid-column:1/-1;margin-top:0;width:100%}}
