:root{
  /* keyed to the logo's blue */
  --brand:#00ADEF;
  --tekhelet:#0B7BB5;
  --paper:#FFFFFF;
  --paper-2:#F2F8FD;
  --wash:#E1F1FB;
  --ink:#07263F;
  --ink-2:#26496B;
  --muted:#5F7E9B;
  --rule:#D2E6F4;
  --rule-strong:#A5CDE8;
  --band:#07263F;
  --band-ink:#F1F8FD;
  --band-muted:#94B4CE;
  --band-rule:#154064;
  --maxw:1200px;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --brand:#3FC2F5; --tekhelet:#5CBDEB;
    --paper:#061726; --paper-2:#0B2136; --wash:#0F2C44; --ink:#EAF5FC; --ink-2:#BFD8EA;
    --muted:#7F9DB8; --rule:#153048; --rule-strong:#234B6C;
    --band:#03101C; --band-ink:#EAF5FC; --band-muted:#87A5C0; --band-rule:#12293E;
  }
}
:root[data-theme="dark"]{
  --brand:#3FC2F5; --tekhelet:#5CBDEB;
  --paper:#061726; --paper-2:#0B2136; --wash:#0F2C44; --ink:#EAF5FC; --ink-2:#BFD8EA;
  --muted:#7F9DB8; --rule:#153048; --rule-strong:#234B6C;
  --band:#03101C; --band-ink:#EAF5FC; --band-muted:#87A5C0; --band-rule:#12293E;
}

*{box-sizing:border-box}
body{
  margin:0; background:var(--paper); color:var(--ink);
  font-family:"EB Garamond", Garamond, Georgia, "Times New Roman", serif;
  font-size:19px; line-height:1.68; -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{font-family:"Cormorant Garamond", Garamond, Georgia, serif; font-weight:400; margin:0}
p{margin:0}
a{color:inherit}
img{max-width:100%; display:block}
.wrap{max-width:var(--maxw); margin:0 auto; padding:0 36px}
:lang(he),.he{font-family:"Frank Ruhl Libre","Frank Ruehl CLM",David,serif}
:lang(yi){font-family:"Frank Ruhl Libre","Frank Ruehl CLM",David,serif}
:lang(ar),.ar{font-family:"Noto Naskh Arabic",serif}
.sc{font-size:13px; font-weight:600; letter-spacing:.2em; text-transform:uppercase; color:var(--tekhelet)}
.sc.q{color:var(--muted)}

/* logo images */
.logo-light{display:block}
.logo-dark{display:none}
:root[data-theme="dark"] .logo-light{display:none}
:root[data-theme="dark"] .logo-dark{display:block}

/* ---------- mockup chrome ---------- */
.mockbar{
  position:fixed; z-index:90; left:50%; transform:translateX(-50%); bottom:20px;
  display:flex; gap:4px; align-items:center; background:var(--band); color:var(--band-ink);
  border:1px solid var(--brand); padding:5px; font-size:14px; box-shadow:0 10px 34px rgba(7,38,63,.34);
}
.mockbar button{
  font-family:"EB Garamond",serif; font-size:14px; letter-spacing:.06em; color:var(--band-muted);
  background:transparent; border:0; padding:7px 16px; cursor:pointer; white-space:nowrap;
}
.mockbar button[aria-pressed="true"]{background:rgba(255,255,255,.12); color:var(--band-ink)}
.mockbar .sep{width:1px;height:18px;background:var(--band-rule);margin:0 4px}

/* ---------- utility + header ---------- */
.utility{background:var(--band); color:var(--band-muted); font-size:14.5px}
.utility .wrap{display:flex; justify-content:space-between; align-items:center; gap:20px; height:42px}
.utility a{text-decoration:none}
.utility a:hover{color:var(--band-ink)}
.utility .langs{display:flex; gap:16px; align-items:center; flex-wrap:wrap}
.utility .langs a.on{color:var(--brand)}
.utility .right{display:flex; gap:26px; align-items:center}

header.site{
  position:sticky; top:0; z-index:60; background:color-mix(in srgb, var(--paper) 92%, transparent);
  backdrop-filter:saturate(1.5) blur(10px); border-bottom:1px solid var(--rule);
}
header.site .wrap{display:flex; align-items:center; justify-content:space-between; gap:32px; height:112px}
.brand{display:flex; align-items:center; gap:20px; text-decoration:none; flex-shrink:0}
.brand img{height:72px; width:auto; max-width:none}
nav.main{display:flex; gap:34px; align-items:center}
nav.main a{
  text-decoration:none; font-size:14px; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-2);
  padding:6px 0; border-bottom:1px solid transparent;
}
nav.main a:hover{color:var(--tekhelet); border-bottom-color:var(--brand)}
.burger{display:none; background:none; border:0; cursor:pointer; padding:8px; color:var(--ink)}

.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px; text-decoration:none;
  font-family:"EB Garamond",serif; font-size:15px; letter-spacing:.13em; text-transform:uppercase;
  padding:13px 26px; border:1px solid var(--ink); background:var(--ink); color:#fff;
  transition:background .18s,border-color .18s,color .18s;
}
.btn:hover{background:var(--brand); border-color:var(--brand); color:#04202F}
.btn.ghost{background:transparent; color:var(--ink); border-color:var(--rule-strong)}
.btn.ghost:hover{background:var(--brand); border-color:var(--brand); color:#04202F}
.btn.light{background:transparent; color:var(--band-ink); border-color:var(--brand)}
.btn.light:hover{background:var(--brand); color:#04202F}

/* ---------- hero — asymmetric ---------- */
.hero{padding:88px 0 0; position:relative; overflow:hidden}
.hero::before{
  content:""; position:absolute; top:-160px; right:-200px; width:660px; height:660px;
  background:radial-gradient(circle, var(--wash) 0%, transparent 66%); z-index:0;
}
.hero .wrap{position:relative; z-index:1}
.hero-grid{display:grid; grid-template-columns:minmax(0,7fr) minmax(0,4fr); gap:72px; align-items:start}
.hero h1{
  font-size:clamp(40px,5.6vw,72px); line-height:1.06; letter-spacing:-.012em; font-weight:300;
  margin:24px 0 0; max-width:15ch;
}
.hero h1 em{font-style:italic; color:var(--tekhelet)}
.hero .lede{margin-top:28px; font-size:20px; line-height:1.72; color:var(--ink-2); max-width:54ch}
.hero-cta{display:flex; gap:14px; margin-top:36px; flex-wrap:wrap}
.hero-aside{padding-top:96px}
.hero-aside .card{border-top:2px solid var(--brand); padding-top:24px}
.hero-aside dl{margin:0; display:grid; gap:24px}
.hero-aside dt{font-size:12.5px; letter-spacing:.18em; text-transform:uppercase; color:var(--muted); font-weight:600}
.hero-aside dd{margin:8px 0 0; font-family:"Cormorant Garamond",serif; font-size:23px; line-height:1.35; color:var(--ink)}

/* language strip */
.langstrip{
  margin-top:72px; border-top:1px solid var(--rule); border-bottom:1px solid var(--rule);
  display:grid; grid-template-columns:auto repeat(4,1fr); align-items:center;
}
.langstrip .lbl{padding:22px 28px 22px 0; border-right:1px solid var(--rule)}
.langstrip .l{padding:22px 26px; border-right:1px solid var(--rule); text-align:center}
.langstrip .l:last-child{border-right:0}
.langstrip .l .w{font-size:27px; line-height:1.2; color:var(--ink)}
.langstrip .l .n{font-size:12.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--muted); margin-top:8px}

.plate{height:430px; border-bottom:1px solid var(--rule); overflow:hidden; background:var(--paper-2)}
.plate img{width:100%; height:100%; object-fit:cover; display:block}
.side-photo{width:100%; margin-top:30px; border:1px solid var(--rule); display:block}
.fig{margin:40px 0}
.fig img{width:100%; border:1px solid var(--rule); display:block}
.fig figcaption{font-size:15.5px; color:var(--muted); font-style:italic; margin-top:12px; line-height:1.55}

/* ---------- asymmetric section header ---------- */
section{padding:92px 0}
.sec{display:grid; grid-template-columns:minmax(0,3fr) minmax(0,9fr); gap:64px; align-items:start}
.sec .side{position:sticky; top:144px}
.sec .side h2{font-size:clamp(30px,3.6vw,44px); line-height:1.14; font-weight:300; margin-top:16px; letter-spacing:-.01em}
.sec .side .note{margin-top:20px; font-size:17.5px; color:var(--muted); font-style:italic; line-height:1.65}
.sec .side .mark{width:44px; height:2px; background:var(--brand); margin-top:24px}

/* ---------- cross-border band ---------- */
.band{background:var(--band); color:var(--band-ink)}
.band .sec .side h2{color:var(--band-ink)}
.band .sec .side .note{color:var(--band-muted)}
.band .sc{color:var(--brand)}
.xb p{color:var(--band-muted); font-size:19.5px; line-height:1.78; margin-bottom:22px; max-width:64ch}
.xb p em{color:var(--band-ink); font-style:italic}
.xb .dropcap::first-letter{
  font-family:"Cormorant Garamond",serif; float:left; font-size:78px; line-height:.82;
  padding:8px 14px 0 0; color:var(--brand);
}
.dual{display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--band-rule); margin-top:40px}
.dual .cell{padding:30px 32px 30px 0; border-bottom:1px solid var(--band-rule)}
.dual .cell:first-child{border-right:1px solid var(--band-rule); padding-right:32px}
.dual .cell:last-child{padding-left:32px}
.dual .k{font-size:12.5px; letter-spacing:.18em; text-transform:uppercase; color:var(--brand); font-weight:600}
.dual .v{font-family:"Cormorant Garamond",serif; font-size:27px; line-height:1.28; margin-top:12px; color:var(--band-ink); font-weight:300}
.dual .d{font-size:17px; color:var(--band-muted); margin-top:12px; line-height:1.6}
.xb .btn{margin-top:34px}

/* ---------- practice areas ---------- */
.pa-list{border-top:1px solid var(--rule-strong)}
.pa{
  display:grid; grid-template-columns:74px minmax(0,1fr) minmax(0,1fr); gap:32px; align-items:start;
  padding:28px 0; border-bottom:1px solid var(--rule); text-decoration:none; transition:padding-left .2s, background .2s;
}
.pa:hover{background:var(--paper-2); padding-left:14px}
.pa .num{font-family:"Cormorant Garamond",serif; font-size:20px; letter-spacing:.1em; color:var(--tekhelet); padding-top:8px}
.pa h3{font-size:30px; line-height:1.22; font-weight:400}
.pa .sig{font-style:italic; color:var(--tekhelet); font-size:17px; margin-top:8px}
.pa p{font-size:17.5px; color:var(--muted); line-height:1.62; padding-top:8px}
.pa.feature{background:var(--wash); padding-left:14px; padding-right:14px; border-left:2px solid var(--brand)}
.pa.feature:hover{padding-left:26px}

/* ---------- people — offset ---------- */
.people{display:grid; grid-template-columns:repeat(3,1fr); gap:44px}
.person:nth-child(2){margin-top:52px}
.person:nth-child(3){margin-top:104px}
.people .person h3{font-size:29px}
.people .person .bio{font-size:16.5px}
.people .person .creds{font-size:15.5px}
.person .photo{
  aspect-ratio:4/5; background:var(--band); border:1px solid var(--rule);
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px;
  font-family:"Cormorant Garamond",serif; font-size:54px; color:var(--rule-strong); letter-spacing:.1em;
  margin-bottom:28px; overflow:hidden;
}
.person .photo img{width:100%; height:100%; object-fit:cover; display:block}
.person .photo small{font-size:12px; letter-spacing:.2em; text-transform:uppercase; color:var(--muted); font-family:"EB Garamond",serif}
.person h3{font-size:34px; font-weight:400; letter-spacing:.01em}
.person .role{font-size:12.5px; letter-spacing:.2em; text-transform:uppercase; color:var(--tekhelet); margin-top:8px; font-weight:600}
.person .bio{font-size:17.5px; color:var(--ink-2); margin-top:20px; line-height:1.72}
.person .creds{margin-top:22px; padding-top:18px; border-top:1px solid var(--rule); font-size:16.5px; color:var(--muted); font-style:italic; line-height:1.7}

/* ---------- representations ---------- */
.reps{border-top:1px solid var(--rule-strong)}
.rep{display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:36px; padding:22px 0; border-bottom:1px solid var(--rule); align-items:baseline}
.rep .co{font-family:"Cormorant Garamond",serif; font-size:24px; line-height:1.28}
.rep .what{font-size:17px; color:var(--muted); line-height:1.6}
.reps-note{font-size:15.5px; color:var(--muted); margin-top:24px; font-style:italic}

/* ---------- insights ---------- */
.posts{display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); gap:52px; align-items:start}
.post{text-decoration:none; display:block}
.post .meta{font-size:12.5px; letter-spacing:.18em; text-transform:uppercase; color:var(--tekhelet); font-weight:600}
.post h3{line-height:1.24; margin-top:14px; font-weight:400}
.post .heb{font-size:18px; color:var(--muted); margin-top:12px; direction:rtl; text-align:right; font-style:italic}
.post:hover h3{color:var(--tekhelet)}
.post.big{border-top:2px solid var(--brand); padding-top:24px}
.post.big h3{font-size:36px}
.post.big .lede{margin-top:16px; font-size:17.5px; color:var(--ink-2); line-height:1.7}
.post.small{border-top:1px solid var(--rule); padding-top:20px; margin-bottom:34px}
.post.small h3{font-size:24px}

/* ---------- contact ---------- */
.contact{background:var(--paper-2); border-top:1px solid var(--rule)}
.contact-inner{display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:64px; align-items:start}
.contact h2{font-size:clamp(30px,3.6vw,44px); line-height:1.14; font-weight:300; margin-top:16px}
.contact .lede{margin-top:20px; color:var(--ink-2); max-width:40ch; font-style:italic}
.contact-list{margin-top:34px; display:grid; gap:20px}
.contact-list .k{font-size:12.5px; letter-spacing:.18em; text-transform:uppercase; color:var(--tekhelet); font-weight:600}
.contact-list .v{font-family:"Cormorant Garamond",serif; font-size:23px; margin-top:6px; line-height:1.4}
.contact-list a{text-decoration:none}
.contact-list a:hover{color:var(--tekhelet)}
form.card{background:var(--paper); border:1px solid var(--rule); border-top:2px solid var(--brand); padding:34px}
.field{margin-bottom:18px}
.field label{display:block; font-size:12.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--muted); font-weight:600; margin-bottom:8px}
.field input, .field select, .field textarea{
  width:100%; font-family:"EB Garamond",serif; font-size:18px; padding:11px 0; color:var(--ink);
  background:transparent; border:0; border-bottom:1px solid var(--rule-strong); border-radius:0;
}
.field textarea{border:1px solid var(--rule-strong); padding:12px; min-height:96px; resize:vertical}
.field input:focus, .field select:focus, .field textarea:focus{outline:0; border-color:var(--brand)}
.two{display:grid; grid-template-columns:1fr 1fr; gap:20px}
form .btn{width:100%; margin-top:14px; cursor:pointer}
form .fine{font-size:15px; color:var(--muted); margin-top:16px; line-height:1.55; font-style:italic}

/* ---------- footer ---------- */
footer.site{background:var(--band); color:var(--band-muted); padding:66px 0 30px; font-size:17px}
.f-top{display:grid; grid-template-columns:minmax(0,4fr) minmax(0,8fr); gap:56px; padding-bottom:44px; border-bottom:1px solid var(--band-rule)}
.f-brand img{height:92px; width:auto; max-width:none}
.f-about{margin-top:24px; line-height:1.7; max-width:40ch}
.f-langs{margin-top:22px; display:flex; gap:18px; flex-wrap:wrap; font-size:18px; color:var(--band-ink)}
.f-cols{display:grid; grid-template-columns:repeat(3,1fr); gap:40px}
footer.site h4{font-size:12.5px; letter-spacing:.18em; text-transform:uppercase; color:var(--brand); font-weight:600; margin-bottom:18px; font-family:"EB Garamond",serif}
footer.site ul{list-style:none; margin:0; padding:0; display:grid; gap:10px}
footer.site a{text-decoration:none}
footer.site a:hover{color:var(--band-ink)}
.f-bottom{margin-top:26px; display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap; font-size:15px; font-style:italic}

/* ---------- inner page ---------- */
.crumbs{font-size:13.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); padding:30px 0 0}
.crumbs a{text-decoration:none}
.crumbs a:hover{color:var(--tekhelet)}
.page-head{padding:26px 0 58px; border-bottom:1px solid var(--rule)}
.page-head .g{display:grid; grid-template-columns:minmax(0,7fr) minmax(0,4fr); gap:64px; align-items:end}
.page-head h1{font-size:clamp(38px,5.2vw,62px); line-height:1.08; font-weight:300; margin-top:20px; max-width:17ch}
.page-head .lede{font-size:19.5px; color:var(--ink-2); font-style:italic; line-height:1.7}
.doc{display:grid; grid-template-columns:minmax(0,1fr) 296px; gap:76px; padding:64px 0 92px; align-items:start}
.doc.bio-row{grid-template-columns:300px minmax(0,1fr); padding:0 0 46px}
@media (max-width:760px){.doc.bio-row{grid-template-columns:1fr; gap:28px}.doc.bio-row img{max-width:300px}}
.prose{max-width:68ch}
.prose > p:first-of-type::first-letter{
  font-family:"Cormorant Garamond",serif; float:left; font-size:82px; line-height:.8;
  padding:8px 14px 0 0; color:var(--brand);
}
.prose h2{font-size:33px; margin:50px 0 18px; font-weight:400}
.prose p{margin-bottom:20px; color:var(--ink-2); font-size:19px; line-height:1.78}
.prose .pull{
  border-left:2px solid var(--brand); padding:4px 0 4px 28px; margin:38px 0;
  font-family:"Cormorant Garamond",serif; font-size:27px; line-height:1.42; color:var(--ink); font-weight:300;
}
.prose ul{margin:0 0 20px; padding-left:24px; color:var(--ink-2)}
.prose li{margin-bottom:11px; line-height:1.7}
.prose a{color:var(--tekhelet)}
aside.rail{position:sticky; top:136px; display:grid; gap:28px}
.rail-card{border-top:1px solid var(--rule-strong); padding-top:20px}
.rail-card h4{font-size:12.5px; letter-spacing:.18em; text-transform:uppercase; color:var(--tekhelet); font-weight:600; margin-bottom:14px; font-family:"EB Garamond",serif}
.rail-card ul{list-style:none; margin:0; padding:0}
.rail-card li a{display:block; text-decoration:none; font-size:17.5px; padding:10px 0; color:var(--ink-2); border-bottom:1px solid var(--rule)}
.rail-card li:last-child a{border-bottom:0}
.rail-card li a:hover{color:var(--tekhelet)}
.rail-card li a[aria-current]{color:var(--tekhelet); font-style:italic}
.rail-cta{background:var(--wash); padding:26px; border-top:2px solid var(--brand)}
.rail-cta p{font-size:17px; color:var(--ink-2); margin:12px 0 20px; font-style:italic}
.rail-cta .btn{width:100%; font-size:14px; padding:12px 16px}
.matters{border-top:1px solid var(--rule-strong); margin:34px 0}
.matters div{padding:20px 0; border-bottom:1px solid var(--rule); display:grid; grid-template-columns:216px 1fr; gap:28px; align-items:baseline}
.matters .k{font-size:12.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--tekhelet); font-weight:600}
.matters .v{font-size:17.5px; color:var(--ink-2); line-height:1.62}




/* ---------- responsive ---------- */
@media (max-width:1060px){
  nav.main{display:none}
  .burger{display:block}
  .hero-grid{grid-template-columns:1fr; gap:44px}
  .hero-aside{padding-top:0}
  .langstrip{grid-template-columns:1fr 1fr}
  .langstrip .lbl{padding:20px 20px 20px 0; border-bottom:1px solid var(--rule); grid-column:1/-1; border-right:0}
  .langstrip .l{border-bottom:1px solid var(--rule)}
  .langstrip .l:nth-child(odd){border-right:1px solid var(--rule)}
  .langstrip .l:nth-child(even){border-right:0}
  .sec{grid-template-columns:1fr; gap:34px}
  .sec .side{position:static}
  .pa{grid-template-columns:56px 1fr; gap:24px}
  .pa p{grid-column:2; padding-top:12px}
  .dual{grid-template-columns:1fr}
  .dual .cell:first-child{border-right:0; padding-right:0}
  .dual .cell:last-child{padding-left:0}
  .people{grid-template-columns:1fr; gap:60px}
  .person:nth-child(2), .person:nth-child(3){margin-top:0}
  .rep{grid-template-columns:1fr; gap:8px}
  .posts{grid-template-columns:1fr; gap:38px}
  .contact-inner{grid-template-columns:1fr; gap:44px}
  .page-head .g{grid-template-columns:1fr; gap:28px}
  .doc{grid-template-columns:1fr; gap:50px}
  aside.rail{position:static}
  .f-top{grid-template-columns:1fr; gap:40px}
}
@media (max-width:620px){
  body{font-size:18px}
  .wrap{padding:0 22px}
  section{padding:62px 0}
  .hero{padding:52px 0 0}
  .langstrip{grid-template-columns:1fr}
  .langstrip .l{border-right:0 !important}
  .plate{height:250px}
  .two{grid-template-columns:1fr}
  .f-cols{grid-template-columns:1fr}
  .matters div{grid-template-columns:1fr; gap:8px}
  header.site .wrap{height:84px}
  .brand img{height:54px}
  .f-brand img{height:74px}
  .prose > p:first-of-type::first-letter{font-size:64px}
  form.card{padding:24px}
  .utility .wrap{height:auto; padding-top:8px; padding-bottom:8px; flex-wrap:wrap; font-size:13px; gap:6px 16px}
}

/* ============================================================
   Additions for the multi-page site.
   The block above is the approved design, extracted verbatim
   from the mockup. Everything below adapts it to real pages.
   ============================================================ */

/* the mockup's page-switcher chrome is not part of the site */
.mockbar { display: none !important; }

/* current page in the main navigation */
nav.main a.on { color: var(--tekhelet); border-bottom-color: var(--brand); }
.utility .langs a.on { color: var(--brand); }

/* mobile navigation ------------------------------------------------ */
@media (max-width: 1060px) {
  nav.main {
    display: none;
    position: absolute; top: 100%; left: 0; right: 0;
    background: var(--paper);
    border-bottom: 1px solid var(--rule);
    flex-direction: column; align-items: stretch; gap: 0;
    padding: 6px 0 14px;
    box-shadow: 0 12px 30px rgba(7, 38, 63, .08);
  }
  nav.main.open { display: flex; }
  nav.main a {
    padding: 13px 36px; border-bottom: 1px solid var(--rule);
    font-size: 15px; letter-spacing: .12em;
  }
  nav.main a:last-child { border-bottom: 0; }
  header.site .wrap { position: relative; }
}

/* practice index --------------------------------------------------- */
.pa-list .pa:last-child { border-bottom: 1px solid var(--rule); }

/* listings: insights, events -------------------------------------- */
.listing { border-top: 1px solid var(--rule-strong); }
.listing .row {
  display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);
  gap: 36px; padding: 26px 0; border-bottom: 1px solid var(--rule);
  text-decoration: none; align-items: start; transition: padding-left .2s, background .2s;
}
.listing a.row:hover { background: var(--paper-2); padding-left: 14px; }
.listing .meta {
  font-size: 12.5px; letter-spacing: .18em; text-transform: uppercase;
  color: var(--tekhelet); font-weight: 600; padding-top: 6px;
}
.listing .meta .date { display: block; color: var(--muted); margin-top: 6px; letter-spacing: .1em; }
.listing h3 { font-size: 27px; line-height: 1.25; font-weight: 400; }
.listing p { font-size: 17px; color: var(--muted); line-height: 1.6; margin-top: 10px; }
.listing .heb {
  font-family: "Frank Ruhl Libre", serif; font-size: 17px; color: var(--muted);
  margin-top: 10px; direction: rtl; text-align: right; font-style: italic;
}
.listing a.row:hover h3 { color: var(--tekhelet); }

/* event status pill */
.pill {
  display: inline-block; font-size: 11px; letter-spacing: .16em; text-transform: uppercase;
  font-weight: 600; padding: 4px 10px; border: 1px solid var(--brand);
  color: var(--tekhelet); margin-bottom: 12px;
}
.pill.past { border-color: var(--rule-strong); color: var(--muted); }

.section-label {
  font-size: 12.5px; letter-spacing: .2em; text-transform: uppercase;
  color: var(--muted); font-weight: 600; margin: 54px 0 18px;
}

/* upcoming-event strip on the home page ---------------------------- */
.upcoming {
  background: var(--wash); border-top: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
}
.upcoming .wrap {
  display: flex; align-items: center; justify-content: space-between;
  gap: 24px; padding: 20px 36px; flex-wrap: wrap;
}
.upcoming .what { font-family: "Cormorant Garamond", serif; font-size: 22px; color: var(--ink); }
.upcoming .when { font-size: 14px; color: var(--muted); margin-top: 4px; }
.upcoming a.btn { padding: 10px 20px; font-size: 13px; }

/* article page ----------------------------------------------------- */
.article-head { padding: 26px 0 46px; border-bottom: 1px solid var(--rule); }
.article-head h1 {
  font-size: clamp(32px, 4.4vw, 50px); line-height: 1.14; font-weight: 300;
  margin-top: 18px; max-width: 22ch;
}
.article-head .heb {
  font-family: "Frank Ruhl Libre", serif; direction: rtl; text-align: right;
  font-size: 20px; color: var(--muted); margin-top: 16px; font-style: italic;
}
.article-meta { font-size: 13px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); margin-top: 18px; }
.prose .note-box {
  background: var(--paper-2); border-top: 2px solid var(--brand);
  padding: 22px 24px; margin: 32px 0; font-size: 17px; color: var(--ink-2);
}

/* contact page ----------------------------------------------------- */
.contact-page { padding: 62px 0 90px; }
.contact-page .contact-inner { align-items: start; }
.form-note { font-size: 15px; color: var(--muted); font-style: italic; margin-top: 16px; line-height: 1.55; }

/* right-to-left landing pages -------------------------------------- */
.rtl { direction: rtl; text-align: right; }
.rtl .wrap { max-width: 900px; }
.rtl h1 { font-size: clamp(32px, 4.6vw, 52px); line-height: 1.2; font-weight: 400; margin-bottom: 18px; }
.rtl h2 { font-size: 26px; font-weight: 400; margin: 38px 0 14px; }
.rtl p { font-size: 19px; line-height: 1.85; color: var(--ink-2); margin-bottom: 16px; }
.rtl ul { padding-right: 22px; padding-left: 0; margin-bottom: 18px; }
.rtl li { margin-bottom: 9px; line-height: 1.75; color: var(--ink-2); }
.rtl .lede { font-size: 21px; color: var(--ink); font-style: italic; margin-bottom: 26px; }
.rtl .prose { max-width: none; }
.rtl .contact-list div { text-align: right; }
.rtl .back { margin-top: 44px; padding-top: 22px; border-top: 1px solid var(--rule); font-size: 16px; }
/* The Latin drop cap has no business in Hebrew, Arabic or Yiddish: the glyph
   falls back to another face, and it floats to the wrong side of the column. */
.rtl .prose > p:first-of-type::first-letter {
  float: none; font-family: inherit; font-size: inherit; line-height: inherit;
  padding: 0; color: inherit;
}
.rtl-he, .rtl-yi { font-family: "Frank Ruhl Libre", "Frank Ruehl CLM", David, serif; }
.rtl-ar { font-family: "Noto Naskh Arabic", serif; }
.rtl-ar p, .rtl-ar li { line-height: 2.0; }

/* 404 -------------------------------------------------------------- */
.notfound { padding: 110px 0 130px; text-align: center; }
.notfound h1 { font-size: clamp(38px, 6vw, 68px); font-weight: 300; margin-bottom: 16px; }
.notfound p { font-size: 19px; color: var(--muted); max-width: 46ch; margin: 0 auto 30px; }

/* utilities -------------------------------------------------------- */
.skip {
  position: absolute; left: -9999px; top: 0; background: var(--ink); color: #fff;
  padding: 12px 20px; z-index: 200; text-decoration: none;
}
.skip:focus { left: 0; }
a:focus-visible, button:focus-visible, input:focus-visible,
select:focus-visible, textarea:focus-visible {
  outline: 2px solid var(--brand); outline-offset: 3px;
}
@media (max-width: 620px) {
  .listing .row { grid-template-columns: 1fr; gap: 10px; }
  .listing .meta { padding-top: 0; }
  .upcoming .wrap { padding: 18px 22px; }
}
@media print {
  .utility, nav.main, .burger, .rail, footer.site, .upcoming { display: none !important; }
  body { font-size: 11pt; }
}

/* insights: podcast / recording player ----------------------------- */
.player { margin: 8px 0 30px; }
.player audio { width: 100%; height: 44px; }
.player .listen { font-size: 15.5px; color: var(--muted); margin-top: 12px; font-style: italic; }
.prose .standfirst { font-size: 21px; line-height: 1.7; color: var(--ink); font-style: italic; margin-bottom: 26px; }
.listing .pill { margin-bottom: 10px; }

/* events: roles, panels ------------------------------------------- */
.event-roles { margin-bottom: 6px; }
.event-roles .pill { margin-bottom: 0; }
.listing .who { font-size: 16px; color: var(--ink-2); margin-top: 8px; font-style: italic; }
.panel-card {
  border-top: 2px solid var(--brand); background: var(--paper-2);
  padding: 22px 24px; margin: 6px 0 28px;
}
.panel-card .pt {
  font-family: "Cormorant Garamond", serif; font-size: 25px; line-height: 1.3; color: var(--ink);
}
.panel-card .pp { margin: 14px 0 0; padding-left: 20px; }
.panel-card .pp li { font-size: 16.5px; color: var(--ink-2); margin-bottom: 7px; line-height: 1.6; }

/* lawyer contact line ---------------------------------------------- */
.lawyer-contact { margin-top: 14px; font-size: 15.5px; color: var(--muted); line-height: 1.8; }
.lawyer-contact a { color: var(--tekhelet); text-decoration: none; border-bottom: 1px solid var(--rule); }
.lawyer-contact a:hover { border-bottom-color: var(--tekhelet); }
.person .lawyer-contact { margin-top: 12px; font-size: 15px; }

/* footer Facebook ---------------------------------------------------- */
footer.site a.fb { display: inline-flex; align-items: center; gap: 8px; }
footer.site a.fb svg { flex-shrink: 0; opacity: .85; }
footer.site a.fb:hover svg { opacity: 1; }

/* embedded video ---------------------------------------------------- */
.video { position: relative; padding-top: 56.25%; margin: 6px 0 14px; background: var(--band); }
.video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; display: block; }
.video-note { font-size: 15.5px; color: var(--muted); font-style: italic; margin-bottom: 26px; }
.video-note a { color: var(--tekhelet); }

/* notable matter ---------------------------------------------------- */
.matter-note {
  border-left: 2px solid var(--brand); background: var(--paper-2);
  padding: 22px 26px; margin: 6px 0 30px;
}
.matter-note .mt {
  font-family: "Cormorant Garamond", serif; font-size: 25px; line-height: 1.3;
  color: var(--ink); margin-bottom: 14px;
}
.matter-note p { font-size: 17.5px; color: var(--ink-2); line-height: 1.72; margin-bottom: 12px; }
.matter-note p:last-child { margin-bottom: 0; }
.matter-note .mn { font-size: 15px; color: var(--muted); font-style: italic; margin-top: 14px; }
.matter-note cite { font-style: italic; }

/* a tall figure should not dominate the measure */
.fig img[src*="nasdaq-marketsite"] { max-width: 520px; margin: 0 auto; }

/* ---- review chrome (not part of the site) ---- */
  align-items:center;background:#07263F;color:#EAF5FC;padding:9px 16px;
  font:14px/1.3 "EB Garamond",Garamond,serif;box-shadow:0 -6px 24px rgba(0,0,0,.22)}
  background:#0F3557;color:#EAF5FC;min-width:290px}
  border:1px solid #2C5A80;color:#EAF5FC;padding:7px 14px;cursor:pointer}
body{padding-bottom:56px}
.rvpage[hidden]{display:none}
