/* Pitta & Baione-inspired aesthetic, native CSS. DESIGN_VARIANCE 6 / MOTION_INTENSITY 3 / VISUAL_DENSITY 4.
   A single light theme, navy accent on black/off-white, bold slab-serif display type, drafting-grid motifs. */
@font-face{font-family:'Zilla Slab';src:url('assets/zilla-slab.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:'Zilla Slab';src:url('assets/zilla-slab-bold.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/dm-sans.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
:root{--navy:#16244a;--navy-deep:#0e1730;--ink:#13161c;--muted:#52586a;--paper:#faf8f3;--tint:#f1f0ea;--line:#dadde3;--parchment:#ece6d6;--display:'Zilla Slab',Georgia,serif;--body:'DM Sans',Arial,sans-serif;--radius:4px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--navy);outline-offset:4px}a:hover{color:var(--navy)}p,h1,h2,h3{margin:0}h1,h2,.section-lead{font-family:var(--display);font-weight:700;line-height:1.05;letter-spacing:-.01em;color:var(--ink)}h2{font-size:clamp(34px,3.2vw,46px)}p{color:var(--muted)}.wrap{width:min(1240px,calc(100% - 112px));margin-inline:auto}.section-pad{padding-block:96px}.eyebrow{font-size:13px;letter-spacing:.01em;font-weight:700;color:var(--navy);line-height:1.6;text-transform:uppercase}.skip-link{position:fixed;left:16px;top:-90px;z-index:100;background:var(--navy);color:white;padding:12px 20px}.skip-link:focus{top:12px}

/* Header */
.site-header{background:var(--paper);position:relative;z-index:30}.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:20px}.brand{display:flex;align-items:center;gap:14px}.brand-mark{flex-shrink:0;width:62px;height:62px;border-radius:50%;border:2px solid var(--navy);padding:10px;object-fit:contain;display:block}.brand-text{display:flex;flex-direction:column;line-height:1.1;white-space:nowrap}.brand-name{font-family:var(--display);font-size:25px;font-weight:700;letter-spacing:-.01em;color:var(--ink)}.brand-associates{font-weight:600}.brand-descriptor{font-size:9px;letter-spacing:.2em;margin-top:5px;color:var(--muted);font-weight:600}.topbar-actions{display:flex;align-items:center;gap:26px}.phone-link{display:flex;flex-direction:column;line-height:1.2;text-align:right;white-space:nowrap}.phone-label{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}.phone-link{font-size:18px;font-weight:700;color:var(--navy)}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:13px 22px;border-radius:var(--radius);min-height:48px;background:var(--navy);color:#fff;font-size:13px;font-weight:700;white-space:nowrap;transition:background .15s}.button:hover{background:var(--navy-deep);color:#fff}.button:active{transform:translateY(1px)}.menu-toggle{display:none}
nav#navigation{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.nav-inner{display:flex;align-items:center;gap:36px;height:58px}nav#navigation>.wrap>a,.nav-mega-trigger{font-size:14px;font-weight:600;color:var(--ink);white-space:nowrap;height:100%;display:flex;align-items:center}nav#navigation>.wrap>a:hover,.nav-mega-trigger:hover{color:var(--navy)}.nav-mega-trigger{position:relative;gap:6px}.caret{font-size:10px;color:var(--navy)}.mega-panel{position:absolute;top:100%;left:-28px;width:560px;display:flex;gap:40px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--navy);padding:28px 32px;box-shadow:0 24px 48px rgba(14,23,48,.14);opacity:0;pointer-events:none;transform:translateY(-6px);transition:opacity .18s,transform .18s;z-index:40}.nav-mega-trigger:hover .mega-panel,.nav-mega-trigger:focus .mega-panel,.nav-mega-trigger:focus-within .mega-panel{opacity:1;pointer-events:auto;transform:translateY(0)}.mega-col{display:flex;flex-direction:column;gap:10px;font-size:13px;line-height:1.75;color:var(--muted);white-space:normal}.mega-col strong{font-family:var(--display);font-size:17px;font-weight:700;color:var(--ink)}

/* Hero */
.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center;padding-block:56px 48px}.hero-copy{padding-bottom:10px}.hero h1{font-size:clamp(28px,2.9vw,38px);margin-top:20px;line-height:1.1}.hero h1 em{font-style:normal;font-weight:600;color:var(--navy)}.hero-description{font-size:16px;max-width:400px;margin-top:22px;line-height:1.8}.hero-visual{position:relative}.hero-cutout{position:relative;display:block;width:100%;height:420px;object-fit:cover;object-position:center;border-radius:18px;filter:drop-shadow(0 20px 34px rgba(14,23,48,.28))}
.facts-bar{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:34px;margin-top:8px}.facts-bar>div{padding-inline:36px}.facts-bar>div+div{border-left:1px solid var(--line)}.facts-bar strong{display:block;font-family:var(--body);font-size:44px;font-weight:700;font-variant-numeric:proportional-nums;letter-spacing:-.01em;color:var(--navy);line-height:1}.facts-bar span{display:block;margin-top:10px;font-size:13px;color:var(--muted);line-height:1.6}

.introduction{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;padding:76px 0;border-bottom:1px solid var(--line)}.introduction h2{font-size:36px;line-height:1.1}.intro-lead{font-size:17px;color:var(--ink);margin-bottom:12px;font-weight:600}.introduction>div>p:last-child{max-width:490px;font-size:14px}

.practice-section{background:var(--tint)}.practice-layout{display:grid;grid-template-columns:1fr 1.7fr;gap:100px}.section-intro{align-self:start;position:sticky;top:50px}.section-intro p{margin-top:20px;max-width:290px}.text-link{display:inline-flex;gap:14px;align-items:center;border-bottom:2px solid var(--navy);font-size:13px;font-weight:700;padding-bottom:5px;color:var(--navy)}.section-intro .text-link{margin-top:28px}.practice-filters{display:flex;gap:28px;border-bottom:1px solid var(--line);margin-bottom:12px}.practice-filters button{border:0;border-bottom:3px solid transparent;background:none;padding:0 0 15px;text-align:left;font-size:13px;font-weight:600;color:var(--muted);line-height:1.5}.practice-filters button[aria-pressed=true]{border-bottom-color:var(--navy);color:var(--navy)}.practice-filters button:hover{color:var(--navy)}.group-title{font-family:var(--display);font-size:20px;margin-top:25px;margin-bottom:12px}.js .group-title{display:none}.practice-item{border-bottom:1px solid var(--line)}.practice-item summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;font-size:16px;font-weight:600;line-height:1.5;cursor:pointer;list-style:none}.practice-item summary::-webkit-details-marker,details>summary::-webkit-details-marker{display:none}.disclosure{font-size:22px;font-weight:400;color:var(--navy);line-height:1}.practice-item[open] .disclosure{transform:rotate(45deg)}.practice-item summary:hover{color:var(--navy)}.practice-item ul{margin:0;padding:0 32px 25px 18px;font-size:14px;color:var(--muted)}.practice-item li+li{margin-top:9px}.practice-note{font-size:11px;margin-top:20px}[hidden]{display:none!important}

.legislation{display:grid;grid-template-columns:1fr 1.7fr;gap:100px}.legislation h2{margin-top:19px}.section-lead{font-size:28px;margin-top:24px;color:var(--navy);line-height:1.2;font-weight:600}.legislation-content>p{font-size:17px;max-width:590px}.drafting-types{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:34px;background:var(--line);border:1px solid var(--line)}.drafting-types>div{background:var(--paper);padding:22px 24px}.drafting-types h3{font-family:var(--display);font-size:17px;font-weight:700;margin-bottom:8px;border-top:3px solid var(--navy);padding-top:10px;display:inline-block}.drafting-types p{font-size:13px;line-height:1.8}.subject-detail{margin-top:34px;border-top:1px solid var(--line);padding-top:18px}.subject-detail summary,.career-detail summary{display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;list-style:none;font-size:14px;font-weight:700}.subject-detail summary span,.career-detail summary span{font-size:22px;font-weight:400;color:var(--navy)}.subject-detail[open] summary span,.career-detail[open] summary span{transform:rotate(45deg)}.subject-detail>p{font-size:14px;margin-top:20px;line-height:1.9}.subject-detail strong{font-weight:700;color:var(--navy)}

.team-section{background:var(--tint)}.team-heading{max-width:600px}.team-heading p{margin-top:20px;font-size:14px}.people-grid{display:grid;grid-template-columns:repeat(3,1fr);column-gap:50px;row-gap:40px;margin-top:48px}.person{border-top:3px solid var(--navy);padding-top:18px}.person h3{font-family:var(--display);font-size:25px;line-height:1.25;font-weight:700}.role{font-size:12px;color:var(--navy);margin-top:8px;font-weight:600}.qualifications{font-size:12px;margin-top:12px}

.partner-section{display:block}.partner-heading{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:30px 56px;padding-bottom:38px;border-bottom:1px solid var(--line)}.partner-identity{flex:1 1 auto;min-width:280px}.partner-heading h2{font-size:52px;margin-top:15px}.partner-credentials{font-size:13px;margin-top:22px;font-weight:600;color:var(--navy)}.partner-monogram{width:140px;height:140px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:38px;font-weight:700;letter-spacing:-.04em;color:#fff;border:2px solid var(--navy);margin-top:0;flex-shrink:0;background:var(--navy)}.partner-bio{max-width:760px;margin-top:42px}.partner-bio>p{margin-bottom:22px;font-size:14px;line-height:1.9}.career-detail{border-top:1px solid var(--line);padding-block:16px}.career-detail:last-child{border-bottom:1px solid var(--line)}.career-list{list-style:none;padding:22px 0 5px;margin:0;display:grid;gap:20px}.career-list li{display:grid;grid-template-columns:106px 1fr;gap:15px;font-size:12px}.career-list li>span{color:var(--navy);font-weight:700}.career-detail>p{font-size:13px;margin-top:20px}

.contact-section{background:var(--navy);color:#fff}.contact-section h2,.contact-section h3{color:#fff}.contact-section p{color:#b9c0d6}.contact-heading>p{margin-top:20px;font-size:14px}.contact-grid{display:grid;grid-template-columns:1.2fr 1.2fr 1fr;gap:60px;margin-top:47px;padding-top:30px;border-top:1px solid rgba(255,255,255,.18)}.contact-grid h3{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:17px}.contact-grid address{font-style:normal;font-size:13px;color:#b9c0d6;line-height:1.9}.postal{display:inline-block;margin-top:14px}.contact-section .text-link{color:#fff;border-bottom-color:rgba(255,255,255,.5);margin-top:20px}.phone{display:block;font-family:var(--body);font-size:22px;font-weight:700;font-variant-numeric:proportional-nums;line-height:1.7;color:#fff}.email{display:inline-flex;gap:18px;font-size:13px;margin-top:16px;border-bottom:1px solid rgba(255,255,255,.4);padding-bottom:5px;color:#fff}.hours{color:#fff;font-size:17px;font-weight:600}.contact-grid>div:last-child>p:last-child{margin-top:20px;font-size:12px}

footer{padding-block:48px 25px;font-size:11px}.footer-brand{display:flex;align-items:center;gap:14px}.footer-brand .brand-mark{border-color:var(--ink)}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:30px;border-bottom:1px solid var(--line)}.footer-top>a{font-size:12px;font-weight:600;color:var(--navy)}.legal{max-width:680px;font-size:10px;margin-top:24px;line-height:1.8}.footer-bottom{display:flex;justify-content:space-between;margin-top:26px;font-size:10px}

@media(min-width:1500px){.hero-cutout{height:470px}}
@media(max-width:1200px){.wrap{width:calc(100% - 80px)}.hero{gap:32px}.hero h1{font-size:clamp(26px,3vw,34px)}.practice-layout,.legislation{gap:60px}.contact-grid{gap:30px}.hero-cutout{height:380px}.mega-panel{width:460px}}
@media(max-width:1023px){.topbar{flex-wrap:wrap}.menu-toggle{display:flex;align-items:center;gap:14px;border:1px solid var(--line);color:var(--navy);background:none;padding:8px 13px;font-size:12px;border-radius:var(--radius)}.menu-toggle span{font-size:15px}nav#navigation{display:none}nav#navigation.is-open{display:block}.nav-inner{flex-direction:column;align-items:stretch;height:auto;gap:0;padding-block:12px}nav#navigation>.wrap>a,.nav-mega-trigger{height:auto;padding:12px 0}.mega-panel{position:static;opacity:1;pointer-events:auto;transform:none;display:none!important;box-shadow:none;border:0;padding:0 0 12px}.wrap{width:calc(100% - 64px)}.hero{grid-template-columns:1fr;gap:28px}.hero-visual{order:-1}.hero h1{font-size:clamp(25px,3.6vw,32px)}.hero-description{font-size:14px}.hero-cutout{height:320px}.section-pad{padding-block:68px}.facts-bar{grid-template-columns:1fr 1fr 1fr;padding-block:26px}.facts-bar strong{font-size:32px}.practice-layout,.legislation,.partner-section{grid-template-columns:1fr 1.6fr;gap:40px}.practice-filters{gap:20px}.practice-filters button{font-size:11px}.people-grid{column-gap:30px}.person h3{font-size:22px}.contact-grid{grid-template-columns:1fr 1fr;row-gap:35px}.contact-grid>div:last-child{grid-column:1/-1}.section-lead{font-size:24px}.partner-heading h2{font-size:42px}}
@media(max-width:767px){.wrap{width:calc(100% - 40px)}.topbar{padding-block:16px;gap:14px}.brand-name{font-size:21px}.brand-mark{width:48px;height:48px}.brand-descriptor{font-size:7px}.topbar-actions{gap:14px}.phone-link{display:none}.button{padding:11px 16px;font-size:12px}.hero{padding-block:30px}.hero h1{margin-top:16px}.hero-cutout{height:240px}.facts-bar{grid-template-columns:1fr;gap:18px}.facts-bar>div+div{border-left:0;border-top:1px solid var(--line);padding-top:18px}.facts-bar>div{padding-inline:0}.introduction{grid-template-columns:1fr;gap:22px;padding:46px 0}.introduction h2{font-size:30px}.intro-lead{font-size:16px}.introduction>div>p:last-child{font-size:13px}.practice-layout,.legislation,.partner-section{grid-template-columns:1fr;gap:32px}.section-intro{position:static}.section-intro p{max-width:400px;margin-top:17px;font-size:14px}.practice-filters{gap:24px}.practice-filters button{font-size:11px;max-width:47%}.practice-item summary{font-size:15px;padding-block:18px}.practice-item ul{font-size:13px;padding-right:12px}.section-lead{font-size:22px;margin-top:19px}.legislation-content>p{font-size:15px}.drafting-types h3{font-size:14px}.drafting-types p{font-size:12px}.team-heading p{font-size:13px;margin-top:17px}.people-grid{grid-template-columns:1fr 1fr;gap:32px 22px;margin-top:30px}.person h3{font-size:21px}.qualifications{font-size:11px}.partner-heading{flex-direction:column;align-items:flex-start}.partner-heading h2{font-size:38px}.partner-monogram{width:96px;height:96px;font-size:26px}.partner-bio>p{font-size:13px}.career-list li{grid-template-columns:95px 1fr;font-size:11px}.contact-grid{grid-template-columns:1fr;gap:30px;margin-top:30px;padding-top:25px}.contact-grid>div:last-child{grid-column:auto}.contact-grid h3{margin-bottom:12px}.phone{font-size:19px}.email{font-size:14px}.footer-top{flex-direction:column;align-items:flex-start;gap:16px}.legal{font-size:10px}.footer-bottom{flex-direction:column;gap:6px;font-size:9px}h2{font-size:32px}}
@media(max-width:360px){.hero h1{font-size:26px}.people-grid{grid-template-columns:1fr}.practice-filters{gap:15px}.practice-filters button{font-size:10px}.email{font-size:12px}.brand-name{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
