
:root{
  --field:#1677B6; --field-2:#0B4A75; --field-ink:#0B4A75; --deep:#0B4A75; --glow:rgba(255,255,255,.12); --well:rgba(6,40,66,.28); --feature:#1677B6;
  --blue:#1A82C6; --blue-ink:#156FAA; --red:#CA0206; --red-press:#B00205; --red-text:#CA0206; --red-on-deep:#FF6A6E;
  --paper:#FFFFFF; --mist:#F2F6F9; --grey:#E9EDF0; --card:#FFFFFF; --rule:#E1E7EC; --ink:#0F1A24; --ink-2:#3C4A57; --ink-3:#5E6B78;
  --r:4px;
  --logo:grayscale(1) brightness(.3);
  --lift:0 30px 70px -40px rgba(0,0,0,.4),0 0 0 1px rgba(15,26,36,.06);
  --sans:'League Spartan',system-ui,sans-serif; --text:'Gentium Book Plus',Georgia,serif;
  --gut:clamp(20px,4vw,60px); --max:1360px;
  --ease-out:cubic-bezier(.23,1,.32,1); --ease-io:cubic-bezier(.77,0,.175,1);
  color-scheme:light;
}

@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --field:#0E3150; --field-2:#0A253D; --deep:#0E3150; --glow:rgba(80,170,240,.16); --well:rgba(0,10,20,.35); --feature:#134C7E;
    --blue:#3D9BDB; --blue-ink:#7DBDEA; --red:#D0181C; --red-press:#B51014; --red-text:#FF6A6E;
    --paper:#0A1219; --mist:#111D28; --grey:#18242F; --card:#0F1A24; --rule:#22323F; --ink:#E8EEF3; --ink-2:#B6C3CE; --ink-3:#8D9CAA;
    --logo:grayscale(1) brightness(0) invert(1) opacity(.8);
    --lift:0 30px 70px -40px rgba(0,0,0,.85),0 0 0 1px rgba(255,255,255,.08);
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --field:#0E3150; --field-2:#0A253D; --deep:#0E3150; --glow:rgba(80,170,240,.16); --well:rgba(0,10,20,.35); --feature:#134C7E;
  --blue:#3D9BDB; --blue-ink:#7DBDEA; --red:#D0181C; --red-press:#B51014; --red-text:#FF6A6E;
  --paper:#0A1219; --mist:#111D28; --grey:#18242F; --card:#0F1A24; --rule:#22323F; --ink:#E8EEF3; --ink-2:#B6C3CE; --ink-3:#8D9CAA;
  --logo:grayscale(1) brightness(0) invert(1) opacity(.8);
  --lift:0 30px 70px -40px rgba(0,0,0,.85),0 0 0 1px rgba(255,255,255,.08);
  color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:20px;background:var(--paper);scrollbar-color:var(--ink-3) var(--paper)}
body{margin:0;background:var(--paper);color:var(--ink);font:400 20px/1.55 var(--text);-webkit-font-smoothing:antialiased;overflow-x:hidden;min-height:100vh;min-height:100svh;display:flex;flex-direction:column}

main{flex:1 0 auto}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
p{text-wrap:pretty}
::selection{background:var(--red);color:#fff}
:focus-visible{outline:2px solid var(--red-text);outline-offset:3px;border-radius:3px}
.on-field :focus-visible{outline-color:#fff}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
.lbl{font-weight:500;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase}
h1,h2,h3,.me,.lbl,.live,.meta,.nav,footer,.cta,.ghost{font-family:var(--sans)}
.nw{white-space:nowrap}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}


::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}


.field{background:var(--field);color:#fff;position:relative;overflow:hidden}
.field::after{content:"";position:absolute;inset:auto -10% -40% 35%;height:110%;background:radial-gradient(closest-side,var(--glow),transparent);pointer-events:none}
.top{position:relative;z-index:3}
.top.field{overflow:visible}
.top.field::after{display:none}
.field>.wrap{position:relative;z-index:1}
.top .wrap{display:flex;align-items:center;gap:16px;height:76px}
.me{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font-weight:600;font-size:17px;letter-spacing:-.01em;white-space:nowrap}
.me svg{width:30px;height:30px}
.nav{margin-left:auto;display:inline-flex;align-items:center;gap:4px;padding:4px;border-radius:calc(var(--r) + 3px);background:var(--well);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.nav a{color:rgba(255,255,255,.86);text-decoration:none;font-weight:500;font-size:14px;line-height:1;padding:10px 15px;border-radius:var(--r);white-space:nowrap;text-align:center;transition:background .25s ease,color .25s ease}
.nav a:hover{background:rgba(255,255,255,.12);color:#fff}
.nav a[aria-current="page"]{background:#fff;color:var(--field-ink)}
.nav a:active{transform:scale(.97)}

.theme{position:relative;flex:none;appearance:none;border:0;cursor:pointer;width:64px;height:36px;padding:0;border-radius:calc(var(--r) + 3px);background:var(--well);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);color:#fff;-webkit-tap-highlight-color:transparent}
html:not(.js) .theme{display:none}
.theme .knob{position:absolute;top:4px;left:4px;width:28px;height:28px;border-radius:var(--r);background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.25);transition:transform .45s var(--ease-out)}
.theme[aria-pressed="true"] .knob{transform:translateX(28px)}
.theme svg{position:absolute;top:10px;width:16px;height:16px;transition:color .3s ease}
.theme .sun{left:10px;color:#D98E04}
.theme .moon{right:10px;color:rgba(255,255,255,.82)}
.theme[aria-pressed="true"] .sun{color:rgba(255,255,255,.82)}
.theme[aria-pressed="true"] .moon{color:var(--field-ink)}
.theme:active .knob{scale:.94}

.theme .sparks{position:absolute;inset:-11px -12px;pointer-events:none}
.theme .sparks i{position:absolute;width:10px;height:10px;background:#FFE08A;clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);opacity:0}
.theme .sparks i:nth-child(1){left:4px;top:0}
.theme .sparks i:nth-child(2){right:2px;top:3px;width:8px;height:8px}
.theme .sparks i:nth-child(3){right:14px;bottom:-1px;width:12px;height:12px}
.theme .sparks i:nth-child(4){left:-3px;bottom:7px;width:7px;height:7px}
.theme.twinkle .sparks i{animation:spark 1.1s var(--ease-out) both}
.theme.twinkle .sparks i:nth-child(2){animation-delay:.18s}
.theme.twinkle .sparks i:nth-child(3){animation-delay:.34s}
.theme.twinkle .sparks i:nth-child(4){animation-delay:.5s}
.theme.twinkle .knob{animation:halo 1.2s ease-out 2}
.theme.twinkle svg{animation:turn 1.2s var(--ease-out)}
@keyframes spark{0%{opacity:0;transform:scale(0) rotate(0)}40%{opacity:1;transform:scale(1.15) rotate(50deg)}100%{opacity:0;transform:scale(.2) rotate(120deg)}}
@keyframes halo{0%{box-shadow:0 2px 6px rgba(0,0,0,.25),0 0 0 0 rgba(255,224,138,.9)}100%{box-shadow:0 2px 6px rgba(0,0,0,.25),0 0 0 13px rgba(255,224,138,0)}}
@keyframes turn{from{transform:rotate(-90deg)}}

.cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--red);color:#fff;text-decoration:none;font-weight:600;font-size:15px;line-height:1;padding:14px 19px;border-radius:var(--r);white-space:nowrap;transition:transform .16s var(--ease-out),background .2s ease;box-shadow:0 8px 18px -10px rgba(0,0,0,.45);border:0;cursor:pointer}
.cta:hover{background:var(--red-press)}
.cta:active{transform:scale(.97)}
.cta svg{width:16px;height:16px}
.cta.light{background:#fff;color:var(--field-ink)}
.cta.light:hover{background:#EAF3FA}
.ghost{display:inline-flex;align-items:center;justify-content:center;gap:10px;color:#fff;text-decoration:none;font-weight:500;font-size:15px;line-height:1;padding:14px 18px;border-radius:var(--r);white-space:nowrap;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.55);transition:box-shadow .2s ease,transform .16s var(--ease-out)}
.ghost:hover{box-shadow:inset 0 0 0 1.5px #fff}
.ghost:active{transform:scale(.97)}


.hero{position:relative;z-index:2;padding:clamp(24px,3.6vw,52px) 0 clamp(56px,6vw,96px)}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(32px,4.5vw,76px);align-items:center}
.hero h1{font-weight:700;font-size:clamp(2.9rem,6.1vw,6.4rem);line-height:.94;letter-spacing:-.04em;margin:0 0 26px;text-wrap:balance}
.ink{white-space:nowrap;text-decoration:underline var(--red);text-decoration-thickness:.085em;text-underline-offset:.08em;text-decoration-skip-ink:auto}
.js .ink{animation:ink .8s ease .5s backwards}
@keyframes ink{from{text-decoration-color:transparent}}
.hero .lede{font-size:clamp(20px,1.55vw,23px);line-height:1.5;max-width:27em;margin:0 0 16px;color:rgba(255,255,255,.92)}
.hero .lede+.acts{margin-top:30px}
.hero .lede strong{font-weight:700;color:#fff}
.acts{display:flex;flex-wrap:wrap;gap:14px}

.screen{position:relative;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#05121D;box-shadow:0 40px 80px -40px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.16)}
.screen img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.screen::after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(3,14,24,.55));pointer-events:none}
.screen .play{position:absolute;inset:0;z-index:2;display:flex;align-items:flex-end;justify-content:flex-end;padding:clamp(14px,2.2vw,26px);color:#fff;text-decoration:none}
.screen .play span{display:inline-flex;align-items:center;gap:10px;background:var(--red);border-radius:var(--r);padding:12px 18px 12px 14px;font:600 15px/1 var(--sans);box-shadow:0 12px 30px -10px rgba(0,0,0,.7);transition:transform .25s var(--ease-out),background .2s ease}
.screen .play:hover span{transform:scale(1.04);background:var(--red-press)}
.screen .play:active span{transform:scale(.97)}
.screen .play svg{width:22px;height:22px}
.l3{position:absolute;z-index:1;left:4.5%;bottom:8%;display:grid;pointer-events:none;max-width:60%}
.l3 b{justify-self:start;background:#fff;color:#0F1A24;font:700 clamp(15px,1.45vw,21px)/1.1 var(--sans);letter-spacing:-.015em;padding:.4em .7em .3em}
.l3 span{justify-self:start;background:var(--field-ink);color:#fff;font:500 clamp(11px,.92vw,13.5px)/1.2 var(--sans);padding:.45em .9em}
.js .l3 b,.js .l3 span{clip-path:inset(0 100% 0 0);animation:wipe .7s var(--ease-io) forwards}
.js .l3 b{animation-delay:.6s}.js .l3 span{animation-delay:.82s}
@keyframes wipe{to{clip-path:inset(0 0 0 0)}}
.screen .soon{position:absolute;z-index:2;right:clamp(14px,2.2vw,26px);bottom:clamp(14px,2.2vw,26px);background:#fff;color:#0F1A24;border-radius:var(--r);padding:11px 16px;font:600 14px/1 var(--sans);box-shadow:0 12px 30px -10px rgba(0,0,0,.6)}
.screen iframe{position:absolute;inset:0;z-index:3;width:100%;height:100%;border:0}
.screen.playing::after,.screen.playing .l3{display:none}


.brands{padding:clamp(40px,4.5vw,64px) 0;background:var(--grey)}
.brands .wrap{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:20px clamp(28px,4vw,60px)}
.brands .lbl{color:var(--ink-3);height:40px;display:flex;align-items:center}
.logo{display:flex;flex-direction:column;align-items:center;gap:7px;margin:0}
.logo .lg{height:40px;display:flex;align-items:center}
.logo img{height:25px;width:auto;filter:var(--logo)}
.logo img.clio{height:29px}.logo img.li{height:20px}.logo img.sb{height:23px}.logo img.casetext{height:22px}.logo img.pwc{height:34px}
.logo figcaption{font:500 12px/1.3 var(--sans);letter-spacing:.01em;color:var(--ink-3);text-align:center;white-space:nowrap}


section{padding:clamp(76px,9vw,136px) 0}
h2{font-weight:700;font-size:clamp(2.1rem,4vw,3.8rem);line-height:1;letter-spacing:-.03em;margin:0 0 .45em;text-wrap:balance;max-width:16em}
.sub{color:var(--ink-2);font-size:21px;line-height:1.5;max-width:32em;margin:0}
.on-field .sub{color:rgba(255,255,255,.92)}
.eyebrow{display:block;color:var(--red-text);margin-bottom:16px}
.on-field .eyebrow{color:rgba(255,255,255,.8)}


.deep{background:var(--deep);color:#fff}


.mission .wrap,.toc .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(28px,5vw,96px);align-items:start}
.mission h2{font-size:clamp(2.5rem,4.8vw,4.8rem);line-height:.98;letter-spacing:-.035em;max-width:12.5em;margin:0}
.mission .why p{font-size:clamp(20px,1.55vw,22px);line-height:1.5;color:rgba(255,255,255,.9);margin:0 0 20px;max-width:30em}
.mission .why p.end{font:600 clamp(22px,2vw,28px)/1.25 var(--sans);letter-spacing:-.015em;color:#fff;margin:32px 0 0;padding-top:24px;border-top:2px solid var(--red-on-deep)}


.shows h2{max-width:none}
.shows .entries{margin-top:clamp(28px,3.5vw,48px);background:var(--card);border-radius:18px;padding:8px clamp(20px,3vw,40px);box-shadow:var(--lift);position:relative}
.entries{display:grid}
.entry{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.6fr) 200px;gap:clamp(20px,3vw,48px);padding:30px 0;border-bottom:1px solid var(--rule);align-items:start}
.entry:last-child{border-bottom:0}
.entry h3{font-weight:700;font-size:clamp(26px,2.6vw,38px);letter-spacing:-.03em;line-height:1.05;margin:0 0 8px}
.entry .pos{display:block;color:var(--ink-3);font-size:17px;line-height:1.45}
.entry .pos b{font-style:italic;font-weight:400;color:var(--blue-ink)}
.entry .def p{margin:0;font-size:19.5px;line-height:1.5;color:var(--ink-2)}
.entry .art{width:200px;aspect-ratio:16/9;border-radius:12px;overflow:hidden;box-shadow:0 0 0 1px var(--rule)}
.entry .art img{width:100%;height:100%;object-fit:cover}
.entry .art-lf{background:#fff;display:grid;place-items:center}.entry .art-lf img{width:64%;height:auto;object-fit:contain}
.live{display:inline-flex;align-items:center;gap:6px;margin-left:10px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--red-text)}
.live::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}


.proof{background:var(--field);color:#fff}
.proof .wrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(32px,5vw,80px);align-items:center}
.proof h2{max-width:none}
.proof p{color:rgba(255,255,255,.92);font-size:21px;line-height:1.5;max-width:30em;margin:0 0 26px}
.proof p strong{color:#fff;font-weight:700}
.proof p:last-child{margin-bottom:0}
.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,3.5vw,48px) clamp(24px,3vw,44px);margin:0}
.stats div{border-top:2px solid rgba(255,255,255,.35);padding-top:18px;container-type:inline-size}

.stats dt{font:700 clamp(2.2rem,3.2vw,3.6rem)/1 var(--sans);font-size:min(4.4rem,21cqi);letter-spacing:-.04em;color:#fff;white-space:nowrap}
.stats dd{margin:10px 0 0;font-size:19px;line-height:1.4;color:rgba(255,255,255,.88)}


.books .wrap>.sub{margin-bottom:clamp(30px,4vw,48px)}
.shelf{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:clamp(18px,2.4vw,32px);align-items:stretch}
.vol{border-radius:16px;padding:26px;display:flex;flex-direction:column;gap:18px;text-decoration:none;background:var(--mist);transition:transform .3s var(--ease-out)}
@media (hover:hover) and (pointer:fine){.vol:hover{transform:translateY(-3px)}}
.vol .meta{font-size:14px;font-weight:500;color:var(--ink-3);margin-top:auto}
.vol .cover{height:200px;display:flex;align-items:flex-end}
.vol h3{margin:0;font-weight:700;font-size:24px;letter-spacing:-.02em;line-height:1.15}
.vol p{margin:0;color:var(--ink-2);font-size:18px;line-height:1.45}
.vol .cover img{height:100%;width:auto;border-radius:3px;box-shadow:0 18px 30px -16px rgba(15,26,36,.55)}
.vol.new{background:var(--feature);color:#fff;justify-content:flex-start}
.vol.new .meta{color:#fff;margin-top:-4px}
.vol.new h3{font-size:clamp(34px,3.6vw,54px);line-height:.96;letter-spacing:-.035em;font-weight:800}
.vol.new h3 em{font-style:normal;position:relative;white-space:nowrap}
.vol.new h3 em::after{content:"";position:absolute;left:0;right:0;bottom:.02em;height:.09em;background:var(--red);border-radius:2px}
.vol.new p{color:rgba(255,255,255,.92);font-size:19px;line-height:1.5;margin-top:auto}


.lawyers .wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,5vw,88px);align-items:center}
.lawyers h2,.lawyers h1{max-width:12em}
.lawyers p.say{font-size:clamp(20px,1.6vw,23px);line-height:1.5;color:var(--ink-2);max-width:28em;margin:0 0 16px}
.lawyers p.say+.wait,.lawyers p.say+.acts{margin-top:30px}
.lawyers p.say strong{color:var(--ink)}
.on-field.lawyers p.say{color:rgba(255,255,255,.92)}
.on-field.lawyers p.say strong{color:#fff}
.lawyers figure{margin:0}
.lawyers figure img{border-radius:16px;aspect-ratio:1;object-fit:cover;object-position:30% 30%;box-shadow:0 30px 60px -30px rgba(0,0,0,.5)}
.lawyers figcaption{font-size:15.5px;font-style:italic;color:var(--ink-3);margin-top:12px}
.wait{max-width:540px}
.wait label{display:block;margin-bottom:12px;color:var(--ink)}
.on-field .wait label{color:#fff}
.wait .row{display:flex;gap:8px;padding:6px;border-radius:calc(var(--r) + 3px);background:#fff;box-shadow:0 0 0 1.5px var(--rule),0 20px 40px -26px rgba(0,0,0,.4)}
.wait .row:focus-within{box-shadow:0 0 0 2px var(--blue),0 20px 40px -26px rgba(0,0,0,.4)}
.on-field .wait .row{box-shadow:0 20px 40px -24px rgba(0,0,0,.55)}
.on-field .wait .row:focus-within{box-shadow:0 0 0 3px rgba(255,255,255,.55),0 20px 40px -24px rgba(0,0,0,.55)}
.wait input{flex:1;min-width:0;border:0;background:transparent;color:#0F1A24;font:400 18px/1.2 var(--sans);padding:12px 8px 10px 14px;border-radius:var(--r)}
.wait input::placeholder{color:#5E6B78}
.wait input:focus{outline:none}
.wait .cta{box-shadow:none}
.wait .cta[disabled]{opacity:.7;cursor:progress}
.wait .msg{min-height:1.5em;margin:12px 0 0 4px;font-size:17px;line-height:1.45;color:var(--ink-2)}
.wait .msg.bad{color:var(--red-text)}
.on-field .wait .msg{color:#fff}
.on-field .wait .msg.bad{color:#FFD2D3}
.wait.done label,.wait.done .row,.wait.done .msg{display:none}

.thanks{display:flex;gap:16px;align-items:flex-start;padding:22px 24px;border-radius:10px;background:var(--mist);outline:none}
.thanks[hidden]{display:none}
.on-field .thanks{background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.28)}
.thanks svg{flex:none;width:38px;height:38px;padding:8px;border-radius:50%;background:var(--red);color:#fff}
.thanks .ty{font:700 clamp(26px,2.4vw,32px)/1.05 var(--sans);letter-spacing:-.02em;margin:2px 0 8px;color:var(--ink)}
.thanks p{margin:0;font-size:18px;line-height:1.45;color:var(--ink-2)}
.thanks .who{color:var(--ink);overflow-wrap:anywhere}
.on-field .thanks .ty,.on-field .thanks .who{color:#fff}
.on-field .thanks p{color:rgba(255,255,255,.92)}
.js .thanks:not([hidden]){animation:thanks .6s var(--ease-out)}
@keyframes thanks{from{opacity:0;transform:translateY(10px) scale(.98)}}


.page-hero{position:relative;z-index:2;padding:clamp(24px,3.6vw,52px) 0 clamp(48px,5vw,80px)}
.page-hero h1{font-weight:700;font-size:clamp(2.7rem,5.6vw,5.6rem);line-height:.95;letter-spacing:-.04em;margin:0 0 18px;text-wrap:balance;max-width:12em}
.page-hero .lede{font-size:clamp(20px,1.6vw,23px);line-height:1.5;color:rgba(255,255,255,.92);margin:0;max-width:30em}

.lt-hero h1{font-size:clamp(2.5rem,4.6vw,4.8rem);line-height:.98;letter-spacing:-.035em;margin-bottom:34px}
.toc h2{font-size:clamp(2.5rem,4.8vw,4.8rem);line-height:.98;letter-spacing:-.035em;margin:0}
.read p{font-size:clamp(20px,1.55vw,22px);line-height:1.55;color:var(--ink-2);margin:0 0 20px;max-width:32em}
.read p:last-child{margin-bottom:0}
.read p.first{font-size:clamp(23px,2vw,28px);line-height:1.4;color:var(--ink)}
.read strong{color:var(--ink)}
.how h2{max-width:none}
.steps{list-style:none;margin:clamp(30px,4vw,52px) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(24px,3vw,44px)}
.steps li{border-top:2px solid rgba(255,255,255,.3);padding-top:20px}
.steps svg{width:22px;height:22px;color:var(--red-on-deep);display:block;margin-bottom:14px}
.steps p{margin:0;font-size:19.5px;line-height:1.5;color:rgba(255,255,255,.9)}

.close{background:var(--grey);padding:clamp(64px,7vw,104px) 0}
.close .wrap{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px 40px}
.close h2{margin:0;max-width:none}
.close .sub{margin-top:14px}


.lit{padding-top:clamp(56px,6vw,96px)}
.lit .vol{padding:30px}
.lit .vol .cover{height:clamp(220px,20vw,280px)}


.lw-hero{padding:clamp(24px,3.6vw,52px) 0 0}
.lw-hero .wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end}
.lw-copy{align-self:center;padding-bottom:clamp(24px,3vw,48px)}
.lw-hero h1{font-weight:700;font-size:clamp(2.7rem,5.4vw,5.4rem);line-height:.96;letter-spacing:-.04em;margin:0 0 24px;text-wrap:balance}
.portrait{align-self:end;justify-self:end;width:min(100%,520px);margin-bottom:-2px}
.portrait img{width:100%;filter:drop-shadow(0 30px 40px rgba(0,0,0,.25))}
@media (min-width:901px) and (max-height:820px){.lw-copy{align-self:start;padding-top:clamp(8px,2vh,24px)}}


.vox .wrap{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(32px,5vw,88px);align-items:start}
.join{background:var(--mist);border-radius:16px;padding:clamp(24px,3vw,40px);position:sticky;top:24px;scroll-margin-top:24px}
.join h2{font-size:clamp(1.8rem,2.6vw,2.5rem);line-height:1.02;margin:0 0 14px}
.join>p{margin:0 0 24px;font-size:19px;line-height:1.5;color:var(--ink-2)}
.join .msg:empty{min-height:0;margin:0}

@media (min-width:901px){.mission .wrap>div:first-child,.toc .wrap>div:first-child{position:sticky;top:40px}}

footer{background:var(--field-2);color:rgba(255,255,255,.85);padding:24px 0 calc(24px + env(safe-area-inset-bottom));font-size:14px}
footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px 24px}
footer a{color:#fff;text-decoration:none}
footer a:hover{text-decoration:underline}
footer .links{display:flex;flex-wrap:wrap;gap:10px 22px}


.js .rv{opacity:0;transform:translateY(16px);transition:opacity .8s var(--ease-out),transform .8s var(--ease-out)}
.js .rv.in{opacity:1;transform:none}
.js .hero .rv:nth-child(2),.js .page-hero .rv:nth-child(2){transition-delay:.08s}
.js .hero .rv:nth-child(3),.js .page-hero .rv:nth-child(3){transition-delay:.16s}

@media (max-width:1100px){
  .entry{grid-template-columns:minmax(0,1fr) 160px}
  .entry .def{grid-column:1/-1;grid-row:2}
  .entry .art{width:160px;grid-column:2;grid-row:1}
  .shelf{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vol.new{grid-column:1/-1}
  .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .top .cta{display:none}
  .brands .wrap{justify-content:flex-start;gap:16px 26px}
  .brands .lbl{width:100%;height:auto}
  .logo .lg{height:32px}
  .logo img{height:19px}.logo img.clio{height:23px}.logo img.li{height:15px}.logo img.sb{height:18px}.logo img.casetext{height:17px}.logo img.pwc{height:27px}
  .logo figcaption{font-size:11.5px;white-space:normal;max-width:16em}
  .hero .wrap,.proof .wrap,.lawyers .wrap,.lw-hero .wrap,.mission .wrap,.toc .wrap,.vox .wrap{grid-template-columns:minmax(0,1fr)}
  .join{position:static}
  .lawyers figure{max-width:520px}
  .lw-copy{padding-bottom:28px}
  .portrait{justify-self:center;width:min(88%,460px)}
}
@media (max-width:600px){
  body{font-size:18.5px}
  .top .wrap{height:auto;flex-wrap:wrap;gap:12px;padding-top:14px;padding-bottom:6px}
  .me{font-size:15px;gap:9px;margin-right:auto}.me svg{width:26px;height:26px}
  .nav{order:3;width:100%;margin-left:0}
  .nav a{flex:1 1 auto;padding:10px 5px;font-size:13.5px}
  .hero{padding-top:18px}
  .hero h1{font-size:clamp(2.7rem,13vw,3.5rem);margin-bottom:18px}
  .hero .lede{margin-bottom:22px}
  .acts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .acts a{padding-left:12px;padding-right:12px}
  .screen{border-radius:12px}
  .screen .play span{padding:10px 14px 10px 11px;font-size:14px}
  .l3{max-width:58%}
  .brands .wrap{gap:16px 26px;justify-content:flex-start}
  .brands .lbl{width:100%;height:auto}
  .logo .lg{height:32px}
  .logo img{height:19px}.logo img.clio{height:23px}.logo img.li{height:15px}.logo img.sb{height:18px}.logo img.casetext{height:17px}.logo img.pwc{height:27px}
  .logo figcaption{font-size:11.5px;white-space:normal;max-width:16em}
  .page-hero{padding-top:14px}
  .page-hero h1{font-size:clamp(2.4rem,11vw,3.3rem);margin-bottom:12px}
  .page-hero .lede{font-size:18.5px;line-height:1.45}
  .lw-hero{padding-top:16px}
  .lw-hero h1{margin-bottom:16px}
  .lawyers p.say+.wait,.lawyers p.say+.acts{margin-top:22px}
  .entry .def p,.steps p{font-size:18.5px}
  .steps{grid-template-columns:minmax(0,1fr)}
  .stats{gap:24px 20px}
  .screen .soon{padding:9px 12px;font-size:13px}
  .lt-hero h1{font-size:clamp(2.2rem,10vw,3rem)}
  .entry{grid-template-columns:1fr;gap:14px}
  .entry .art{width:100%;max-width:340px;grid-column:1;grid-row:auto;border-radius:10px}
  .shelf{grid-template-columns:minmax(0,1fr)}
  .vol .cover,.lit .vol .cover{height:190px}
  .lit .vol{padding:24px}
  .portrait{justify-self:center;width:auto;margin-top:-4px}
  .portrait img{height:min(400px,62svh);width:auto}
  .wait input{font-size:17px;padding:12px 4px 10px 14px}
  .wait .cta{padding:14px;font-size:14.5px}
}
@media (max-width:600px) and (max-height:700px){
  .hero{padding-top:10px}
  .hero h1{font-size:clamp(2.4rem,11.5vw,3.2rem);margin-bottom:14px}
  .hero .lede{font-size:17px;line-height:1.42;margin-bottom:10px}
  .hero .lede+.acts{margin-top:18px}
}
@media (prefers-reduced-motion:reduce){
  .js .rv{opacity:1;transform:none;transition:none}
  .js .ink,.js .l3 b,.js .l3 span,.theme.twinkle .sparks i,.theme.twinkle .knob,.theme.twinkle svg{animation:none}
  .js .l3 b,.js .l3 span{clip-path:none}
  .theme .knob{transition:none}
  html{scroll-behavior:auto}
}
