
:root{--background:#fffdfb;--foreground:#152052;--primary:#bd0052;--primary-foreground:#fff;--secondary:#233ec6;--accent:#d9fc6e;--border:#d6d8e4;--ring:#233ec6;--radius:.5rem;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--background);color:var(--foreground);font-family:Arial,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}header{max-width:1440px;margin:auto;padding:28px 6%;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--border)}.brand{font-family:Georgia,serif;font-size:40px;display:flex;gap:15px;align-items:center}.brand>span{font-family:Arial,sans-serif;font-size:16px;font-weight:600}.brand small{display:block;font-size:12px;letter-spacing:.18em;margin-top:8px}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.45fr 1fr;gap:7%;padding:76px 6% 90px;align-items:center}.eyebrow{font-size:13px;letter-spacing:.15em;font-weight:700;margin:0 0 26px}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(46px,5.4vw,82px);line-height:1.08;letter-spacing:-.045em;margin:0}h1 em{color:var(--primary);font-weight:400}.intro{max-width:450px;line-height:1.7;margin:30px 0;color:#535b74;font-size:18px}.button{display:inline-flex;background:var(--primary);color:white;padding:18px 25px;border-radius:7px;align-items:center;justify-content:center;gap:22px;font-size:16px;font-weight:600;border:0;cursor:pointer}.identity{background:#233ec6;color:white;min-height:475px;padding:34px;display:flex;flex-direction:column;justify-content:space-between;border-radius:150px 150px 8px 8px;position:relative}.identity>span{align-self:center;text-align:center;font-size:12px;letter-spacing:.12em;line-height:1.7;margin-top:25px}.identity strong{font-size:clamp(90px,11vw,168px);font-family:Georgia,serif;font-weight:400;text-align:center;letter-spacing:-.1em}.identity strong span{color:#d9fc6e}.identity>div{font-family:Georgia,serif;font-size:30px;line-height:1.15;border-top:1px solid #8798ef;padding-top:22px}.identity small{display:block;font-family:Arial,sans-serif;font-size:12px;letter-spacing:.16em;margin-top:14px}.contact{padding:70px 6%;background:#f0f2ff}h2{font-family:Georgia,serif;font-size:clamp(36px,4vw,56px);font-weight:400;line-height:1.12;margin:0 0 32px}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #738600;outline-offset:5px}@media(max-width:760px){header{padding:20px 6%;flex-wrap:wrap}.brand{font-size:32px}.brand>span{font-size:14px}.hero{grid-template-columns:1fr;padding-top:46px;gap:44px}.identity{min-height:370px;max-width:460px;width:100%;margin:auto}.identity strong{font-size:120px}.contact{padding-top:50px}}

.brand .monogram{font-family:Georgia,serif;font-size:40px;font-weight:400}.monogram>span{color:var(--primary)}.languages{display:flex;gap:4px;margin-left:auto;padding:4px;border:1px solid var(--border);border-radius:30px}.languages button{font:inherit;font-size:14px;border:0;background:none;color:var(--foreground);border-radius:25px;min-width:44px;height:36px;cursor:pointer}.languages button[aria-pressed=true]{background:var(--foreground);color:white}.header-contact{margin-left:20px;font-size:15px}.hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:22px}.text-link{font-size:14px;text-decoration:underline;text-underline-offset:5px}.identity .seal{position:absolute;right:-24px;bottom:96px;transform:rotate(9deg);background:var(--accent);color:var(--foreground);height:105px;width:105px;border-radius:50%;display:grid;place-content:center;text-align:center;font-size:17px;line-height:1.2;margin:0}.ribbon{background:var(--accent);color:var(--foreground);padding:24px 6%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:18px}.ribbon>span:nth-child(2){font-size:30px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding:88px max(6%,calc((100% - 1268px)/2));scroll-margin-top:20px}.muted{color:#535b74;font-size:16px;line-height:1.7}.contact-copy .muted{max-width:320px}.contact-links{margin-top:42px}.contact-links a{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid #c6cce2;padding:22px 0;font-size:clamp(16px,1.6vw,22px);overflow-wrap:anywhere}.contact-links small{display:block;font-size:12px;letter-spacing:.12em;color:#535b74;margin-bottom:10px}.form-card{background:white;border-radius:14px;padding:38px;box-shadow:0 12px 45px #15205208}.form-card .eyebrow{color:var(--primary);margin-bottom:12px}h3{font-family:Georgia,serif;font-size:42px;line-height:1.2;font-weight:400;margin:0}.form-card .muted{margin:15px 0 28px}form>label{display:block;font-size:14px;font-weight:600;margin:21px 0 10px}input:not([type=checkbox]),textarea{width:100%;border:1px solid #b9bed2;border-radius:6px;background:#fff;font:inherit;color:var(--foreground);padding:13px;min-height:47px}textarea{resize:vertical}.consent{display:flex;align-items:flex-start;gap:10px;margin-top:20px;font-size:14px;line-height:1.5}.consent input{accent-color:var(--primary);width:18px;height:18px;flex-shrink:0;margin:2px 0}.privacy{font-size:13px;line-height:1.6;color:#535b74;margin:15px 0 25px}.privacy summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.privacy a{text-decoration:underline}.submit{width:100%;justify-content:space-between}.submit:disabled{opacity:.65;cursor:wait}#form-status{font-size:14px;line-height:1.5;margin:14px 0 0}#form-status:empty{margin:0}#form-status[data-state=error]{color:#a00037}#form-status[data-state=success]{color:#225a2d}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}footer{padding:35px 6%;display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:14px}.footer-name{font-size:17px;font-family:Georgia,serif}.footer-name span{display:block;font:11px Arial,sans-serif;letter-spacing:.18em;margin-top:8px}footer p{color:#535b74}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:absolute;top:-100px;left:16px;background:white;padding:16px;z-index:9}.skip:focus{top:10px}.button:hover{background:#9e0045;text-decoration:none}button,input,textarea,a{-webkit-tap-highlight-color:transparent}@media(max-width:1000px){.contact{gap:5%}.form-card{padding:28px}.hero{gap:5%}.identity .seal{right:-16px}}@media(max-width:760px){.header-contact{display:none}.languages{margin-left:0}.brand .monogram{font-size:30px}.hero{padding-bottom:55px}.identity{max-width:380px}.identity .seal{right:-10px}.contact{grid-template-columns:1fr;gap:45px;padding:55px 6%}.contact-copy .muted{max-width:none}.ribbon{font-size:16px;line-height:1.5}.ribbon>span:nth-child(2){display:none}.ribbon>span{max-width:48%}.form-card{padding:25px 20px}footer{flex-wrap:wrap;padding:30px 6%}footer p{order:3;width:100%;margin:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.identity>span,.identity .seal,h2{white-space:pre-line}body{overflow-wrap:break-word}.hero>div,.contact>div{min-width:0}
/* Red / black editorial identity */
:root{--background:#fff;--foreground:#171717;--primary:#bd1824;--primary-foreground:#fff;--secondary:#171717;--accent:#bd1824;--border:#dedede;--ring:#bd1824;color-scheme:light}body{background:#fff;color:#171717}header{max-width:none;padding:24px 6%;background:#fff}.brand .monogram{letter-spacing:-.1em;margin-right:4px}.brand small{color:#bd1824}.languages{border-color:#dedede}.hero{max-width:1440px;grid-template-columns:1.12fr 1fr;padding:54px 6% 68px;gap:5%}.hero .eyebrow{color:#bd1824}h1{font-size:clamp(48px,5.5vw,84px);letter-spacing:-.055em;line-height:1.06}h1 em{color:#bd1824}.intro,.muted{color:#626262}.button{background:#bd1824;border-radius:2px;transition:background .2s,transform .2s}.button:hover{background:#94121c;transform:translateY(-2px)}.portrait{position:relative;margin:0;padding:0 0 24px 22px}.portrait>img{display:block;width:100%;height:590px;object-fit:cover;object-position:50% 48%;border-radius:160px 0 0 0}.portrait figcaption{position:absolute;bottom:0;left:0;background:#171717;color:white;min-width:68%;padding:23px 28px;display:flex;flex-direction:column;gap:8px;font-family:Georgia,serif;font-size:24px}.portrait figcaption small{font:11px Arial,sans-serif;letter-spacing:.18em;color:#fff}.portrait-line{position:absolute;right:-12px;top:26px;width:2px;height:130px;background:#bd1824}.ribbon{background:#bd1824;color:white;padding:23px 6%}.contact{background:#f5f5f5}.contact-links a{border-color:#d0d0d0}.contact-links small{color:#666}.form-card{border-radius:2px;box-shadow:none;border-top:3px solid #bd1824}.privacy{color:#626262}input:not([type=checkbox]),textarea{border-color:#c8c8c8;border-radius:2px}footer p{color:#626262}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline-color:#bd1824}footer{background:#171717;color:white}footer p{color:#bfbfbf}@media(max-width:760px){.hero{grid-template-columns:1fr;padding-top:38px}.portrait{margin-top:8px;padding-left:14px}.portrait>img{height:500px;object-position:50% 48%;border-radius:110px 0 0 0}.portrait figcaption{font-size:23px}.hero .intro{max-width:100%}}@media(max-width:380px){.portrait>img{height:420px}h1{font-size:44px}}
.section-nav{display:flex;gap:24px;margin-left:auto;font-size:14px}.languages{margin-left:20px}.section-pad{padding:85px max(6%,calc((100% - 1268px)/2))}.about{background:#171717;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.about-photo{position:relative}.about-photo img{display:block;width:100%;height:540px;object-fit:cover;object-position:50% 43%}.photo-tag{position:absolute;bottom:-24px;right:-22px;padding:18px 28px;background:#bd1824;font:54px Georgia,serif;letter-spacing:-.08em}.about .eyebrow{color:#f07179}.about h2{font-size:clamp(38px,4.1vw,62px)}.about-copy>p:not(.eyebrow){color:#ccc;line-height:1.85;font-size:17px;margin:24px 0}.light-link{display:inline-block;margin-top:12px;font-size:16px;border-bottom:1px solid #f07179;padding-bottom:10px}.signature{display:block;color:#bbb;font:italic 27px Georgia,serif;margin-top:40px}.practice-heading .eyebrow{color:#bd1824}.practice-heading h2{margin-bottom:20px}.practice-heading>.muted{max-width:620px}.practice-tabs{display:flex;gap:6px;border-bottom:1px solid #d3d3d3;margin:35px 0 0;padding:0 0 12px;flex-wrap:wrap}.practice-tabs button{border:1px solid #ddd;background:white;color:#171717;font:inherit;font-size:16px;min-height:48px;padding:13px 23px;cursor:pointer;transition:color .2s,background .2s}.practice-tabs button[aria-selected=true]{background:#bd1824;border-color:#bd1824;color:white}.practice-tabs button:hover:not([aria-selected=true]){background:#f4f4f4}.practice-body{display:grid;grid-template-columns:1.25fr .75fr;gap:8%;align-items:center;padding-top:40px}.practice-panels [role=tabpanel]{min-height:450px}.practice-panels [hidden]{display:none}.area-number{color:#bd1824;font-size:13px;letter-spacing:.12em;margin:0 0 18px}.practice-panels h3{font-size:44px}.area-intro{font-size:17px;line-height:1.6;color:#626262;max-width:540px;margin:20px 0}.practice-panels ul{padding:0;list-style:none;margin:24px 0 30px;display:grid;grid-template-columns:1fr;gap:0}.practice-panels li{padding:13px 0 13px 23px;border-bottom:1px solid #e5e5e5;position:relative;font-size:16px;line-height:1.5}.practice-panels li::before{content:'';position:absolute;left:0;top:23px;background:#bd1824;width:6px;height:6px;border-radius:50%}.practice-panels .text-link{color:#a8111d;font-size:16px}.justice-art{margin:0;text-align:center}.justice-art img{width:100%;max-height:560px;object-fit:contain;display:block}.justice-art figcaption{font-size:12px;letter-spacing:.14em;color:#626262;margin-top:20px}.open-scope{border-left:3px solid #bd1824;padding:8px 0 8px 22px;margin:40px 0 0;max-width:790px;line-height:1.8;color:#626262;font-size:16px}.animate-reveal{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}.animate-reveal.visible{opacity:1;transform:none}section[id]{scroll-margin-top:24px}.portrait img{animation:portrait-in .8s ease both}@keyframes portrait-in{from{opacity:.4;transform:translateY(12px)}to{opacity:1;transform:none}}@media(max-width:1100px){.header-contact{display:none}.section-nav{gap:16px}.languages{margin-left:10px}}@media(max-width:760px){header{gap:15px}.section-nav{order:3;width:100%;justify-content:center;margin:0;padding-top:16px;border-top:1px solid #eee}.languages{margin-left:auto}.section-pad{padding:55px 6%}.about{grid-template-columns:1fr;gap:55px}.about-photo img{height:440px}.photo-tag{right:10px}.about h2{font-size:42px}.signature{margin-top:30px}.practice-tabs{gap:7px}.practice-tabs button{padding:12px 16px;font-size:15px;flex-grow:1}.practice-body{grid-template-columns:1fr;gap:35px;padding-top:30px}.practice-panels [role=tabpanel]{min-height:0}.practice-panels h3{font-size:38px}.justice-art img{height:320px;max-width:250px;margin:auto}.open-scope{margin-top:30px}.justice-art figcaption{margin-top:12px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.animate-reveal{opacity:1;transform:none}}
.location{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;background:#fff;border-top:1px solid #ddd}.location .eyebrow{color:#bd1824}.location h2{font-size:clamp(36px,3.8vw,54px);margin-bottom:0}.location-details{border-left:3px solid #bd1824;padding:8px 0 8px 30px}.location address{font-style:normal;font-size:clamp(18px,1.8vw,23px);line-height:1.65}.location address>span{display:block}.location-details>p{font-size:16px;line-height:1.8;color:#626262;margin:20px 0 0;max-width:420px}@media(max-width:760px){.location{grid-template-columns:1fr;gap:28px}.location-details{padding-left:20px}.location h2{font-size:38px}}
.office-map{grid-column:1/-1;overflow:hidden;border:1px solid #dedede;margin-top:8px}.office-map iframe{display:block;width:100%;height:400px;border:0;background:#f4f4f4}.map-directions{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;color:#a8111d;font-weight:600;background:#fff;font-size:16px}.map-directions:hover{background:#f7f7f7}@media(max-width:760px){.office-map iframe{height:320px}.map-directions{padding:16px 18px}}
.languages button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:70px;padding:0 10px}.language-flag{width:24px;height:16px;display:block;flex-shrink:0;border-radius:2px;box-shadow:0 0 0 1px #00000014}@media(max-width:420px){.languages{margin-left:0}.languages button{min-width:68px}.section-nav{padding-top:12px}}
