PageSourceSearch

https://legal-wires.com/

html legal-wires.com collected 2026-10-02 16:23:27 UTC 153,218 bytes, 2,697 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en">
3
4<head>
5    <meta charset="UTF-8">
6    <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
8    <!-- Preconnect for critical third-party origins -->
9    <link rel="preconnect" href="https://fonts.googleapis.com">
10    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
11
12    <link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;0,6..72,600;0,6..72,700;1,6..72,400;1,6..72,500;1,6..72,600&family=Hanken+Grotesk:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500;600&display=swap">
13    <link href="https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;0,6..72,600;0,6..72,700;1,6..72,400;1,6..72,500;1,6..72,600&family=Hanken+Grotesk:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500;600&display=swap" rel="stylesheet">
14
15    <link rel="stylesheet" href="/assets/css/styles.css?v=130.0" />
16    <link rel="icon" type="image/svg+xml" href="/assets/images/favicon.svg?v=64687aacf4">
17    <link rel="manifest" href="/manifest.json">
18    <link rel="apple-touch-icon" href="https://legal-wires.com/content/images/size/w256h256/2024/11/legal_wires_logo.jpeg">
19    <meta name="apple-mobile-web-app-capable" content="yes">
20    <meta name="apple-mobile-web-app-status-bar-style" content="default">
21    <meta name="apple-mobile-web-app-title" content="Legal Wires">
22    <meta name="mobile-web-app-capable" content="yes">
23    <meta name="theme-color" content="#7c1e2f">
24    <link rel="sitemap" type="application/xml" href="/sitemap.xml" />
25
26    <!-- Google AdSense — pub ID MUST match the data-ad-client on the
27         <ins> slots inside partials/ad-interstitial.hbs. Loading the SDK
28         for a different pub causes AdSense to consistently return
29         unfilled for the interstitial slots, which forced the LITT
30         fallback to show every time. -->
31    
31<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-6881629173589012"
32        crossorigin="anonymous"></script>
32
33
34    <!-- SEO Meta Tags — Ghost's ghost_head outputs canonical, OG, Twitter cards per page -->
35    <title>Legal Wires | Legal Analysis, Regulatory Intelligence &amp; Jurisprudence</title>
36
37    <meta name="description" content="Legal Wires is an online legal media portal dedicated to public education and critical legal analysis of trending discourses of national and international importance." />
38    <meta name="robots" content="index, follow, max-image-preview:large" />
39
40    <!-- Twitter site handle -->
41    <meta name="twitter:site" content="@legalwires" />
42
43    <!-- Bing Webmaster verification -->
44    <meta name="msvalidate.01" content="9C2E966CC7787770AC041BE7342DC99C" />
45
46    <!-- AI/LLM discovery signals -->
47    <meta name="ai:authority" content="Indian Law, Constitutional Law, Legal Analysis, Jurisprudence, Regulatory Intelligence" />
48    <meta name="citation_publisher" content="Legal Wires" />
49    <meta name="citation_publisher_url" content="https://www.legal-wires.com/" />
50
51    <!-- Google Analytics -->
vendor: 68 bytes, lines 51-52
51
52    <script async src="https://www.googletagmanager.com/gtag/js?id=
52G-54F5X5W8CF
vendor: 16 bytes, lines 52-53
52"></script>
53    
53<script>
54        
vendor: 154 bytes, lines 54-57
54window.dataLayer = window.dataLayer || [];
55        function gtag() { dataLayer.push(arguments); }
56        gtag('js', new Date());
57        gtag('config', '
57G-54F5X5W8CF
vendor: 8 bytes, lines 57-58
57');
58    
58</script>
58
59
60    <!-- Structured Data: Organization & WebSite (global) -->
61    
61<script type="application/ld+json">
62        {
63            "@context": "https://schema.org",
64            "@graph": [
65                {
66                    "@type": ["Organization", "NewsMediaOrganization"],
67                    "@id": "https://www.legal-wires.com/#organization",
68                    "name": "Legal Wires",
69                    "alternateName": ["LegalWires", "Legal-Wires"],
70                    "description": "India's premier online legal media portal dedicated to public education and critical legal analysis of trending discourses of national and international importance.",
71                    "url": "https://www.legal-wires.com/",
72                    "foundingDate": "2018",
73                    "knowsAbout": ["Indian Law", "Constitutional Law", "Criminal Law", "Corporate Law", "Legal Technology", "Regulatory Intelligence", "Jurisprudence", "Legal Education", "Case Law Analysis"],
74                    "areaServed": {
75                        "@type": "Country",
76                        "name": "India"
77                    },
78                    "logo": {
79                        "@type": "ImageObject",
80                        "url": "https://ik.imagekit.io/omjeem/legal-wires-logo.png",
81                        "@id": "https://www.legal-wires.com/#organizationLogo",
82                        "width": 343,
83                        "height": 45
84                    },
85                    "image": {
86                        "@id": "https://www.legal-wires.com/#organizationLogo"
87                    },
88                    "sameAs": [
89                        "https://in.linkedin.com/showcase/legal-wires-publication/",
90                        "https://www.facebook.com/legalwires/",
91                        "https://www.instagram.com/legalwires/",
92                        "https://x.com/legalwires",
93                        "https://www.youtube.com/channel/UC-YJNyJ4WjoetWsA1f9BaHQ",
94                        "https://in.pinterest.com/legalwires/"
95                    ],
96                    "contactPoint": {
97                        "@type": "ContactPoint",
98                        "email": "[email protected]",
99                        "contactType": "editorial"
100                    }
101                },
102                {
103                    "@type": "WebSite",
104                    "@id": "https://www.legal-wires.com/#website",
105                    "url": "https://www.legal-wires.com/",
106                    "name": "Legal Wires",
107                    "description": "Legal Analysis. Regulatory Intelligence. Jurisprudence.",
108                    "inLanguage": "en",
109                    "publisher": {
110                        "@id": "https://www.legal-wires.com/#organization"
111                    }
112                }
113            ]
114        }
115    </script>
115
116
117    <meta property="og:image" content="https://legal-wires.com/assets/images/previews/hero.jpg" />
118<meta property="og:image:width" content="1200" />
119<meta property="og:image:height" content="630" />
120<meta name="twitter:image" content="https://legal-wires.com/assets/images/previews/hero.jpg" />
121<meta name="twitter:card" content="summary_large_image" />
122
123
124    <!-- Ghost Content API key for BM25 search -->
125    <meta name="ghost:content_api_key" content="1641001ebd233836fdc69e22cf">
126
127    <meta name="description" content="Connecting Law and Society: In-Depth Analysis for an Informed Public">
128    <link rel="icon" href="https://legal-wires.com/content/images/size/w256h256/2024/11/legal_wires_logo.jpeg" type="image/jpeg">
129    <link rel="canonical" href="https://legal-wires.com/">
130    <meta name="referrer" content="no-referrer-when-downgrade">
131    <link rel="next" href="https://legal-wires.com/page/2/">
132    
133    <meta property="og:site_name" content="Legal Wires">
134    <meta property="og:type" content="website">
135    <meta property="og:title" content="Legal Wires">
136    <meta property="og:description" content="Connecting Law and Society: In-Depth Analysis for an Informed Public">
137    <meta property="og:url" content="https://legal-wires.com/">
138    <meta property="og:image" content="https://legal-wires.com/content/images/2026/03/hero.jpg">
139    <meta property="article:publisher" content="https://www.facebook.com/legalwires">
140    <meta name="twitter:card" content="summary_large_image">
141    <meta name="twitter:title" content="Legal Wires">
142    <meta name="twitter:description" content="Connecting Law and Society: In-Depth Analysis for an Informed Public">
143    <meta name="twitter:url" content="https://legal-wires.com/">
144    <meta name="twitter:image" content="https://legal-wires.com/content/images/2026/03/hero2.jpg">
145    <meta name="twitter:site" content="@legalwires">
146    <meta property="og:image:width" content="1200">
147    <meta property="og:image:height" content="630">
148    
149    
149<script type="application/ld+json">
150{
151    "@context": "https://schema.org",
152    "@type": "WebSite",
153    "publisher": {
154        "@type": "Organization",
155        "name": "Legal Wires",
156        "url": "https://legal-wires.com/",
157        "logo": {
158            "@type": "ImageObject",
159            "url": "https://legal-wires.com/content/images/size/w256h256/2024/11/legal_wires_logo.jpeg",
160            "width": 60,
161            "height": 60
162        }
163    },
164    "url": "https://legal-wires.com/",
165    "name": "Legal Wires",
166    "mainEntityOfPage": "https://legal-wires.com/",
167    "description": "Connecting Law and Society: In-Depth Analysis for an Informed Public"
168}
169    </script>
169
170
171    <meta name="generator" content="Ghost 6.42">
172    <link rel="alternate" type="application/rss+xml" title="Legal Wires" href="https://legal-wires.com/rss/">
173    
173<script defer src="https://cdn.jsdelivr.net/ghost/portal@~2.68/umd/portal.min.js" data-i18n="true" data-ghost="https://legal-wires.com/" data-key="07f05552d2b0f18fcbc00c8fc1" data-api="https://legal-wires.com/ghost/api/content/" data-locale="en" crossorigin="anonymous"></script>
173<style id="gh-members-styles">.gh-post-upgrade-cta-content,
174.gh-post-upgrade-cta {
175    display: flex;
176    flex-direction: column;
177    align-items: center;
178    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
179    text-align: center;
180    width: 100%;
181    color: #ffffff;
182    font-size: 16px;
183}
184
185.gh-post-upgrade-cta-content {
186    border-radius: 8px;
187    padding: 40px 4vw;
188}
189
190.gh-post-upgrade-cta h2 {
191    color: #ffffff;
192    font-size: 28px;
193    letter-spacing: -0.2px;
194    margin: 0;
195    padding: 0;
196}
197
198.gh-post-upgrade-cta p {
199    margin: 20px 0 0;
200    padding: 0;
201}
202
203.gh-post-upgrade-cta small {
204    font-size: 16px;
205    letter-spacing: -0.2px;
206}
207
208.gh-post-upgrade-cta a {
209    color: #ffffff;
210    cursor: pointer;
211    font-weight: 500;
212    box-shadow: none;
213    text-decoration: underline;
214}
215
216.gh-post-upgrade-cta a:hover {
217    color: #ffffff;
218    opacity: 0.8;
219    box-shadow: none;
220    text-decoration: underline;
221}
222
223.gh-post-upgrade-cta a.gh-btn {
224    display: block;
225    background: #ffffff;
226    text-decoration: none;
227    margin: 28px 0 0;
228    padding: 8px 18px;
229    border-radius: 4px;
230    font-size: 16px;
231    font-weight: 600;
232}
233
234.gh-post-upgrade-cta a.gh-btn:hover {
235    opacity: 0.92;
236}</style>
237    
237<script defer src="https://cdn.jsdelivr.net/ghost/sodo-search@~1.8/umd/sodo-search.min.js" data-key="07f05552d2b0f18fcbc00c8fc1" data-styles="https://cdn.jsdelivr.net/ghost/sodo-search@~1.8/umd/main.css" data-sodo-search="https://legal-wires.com/" data-locale="en" crossorigin="anonymous"></script>
237
238    
239    <link href="https://legal-wires.com/webmentions/receive/" rel="webmention">
240    
240<script defer src="/public/cards.min.js?v=64687aacf4"></script>
240
241    <link rel="stylesheet" type="text/css" href="/public/cards.min.css?v=64687aacf4">
242    
242<script defer src="/public/member-attribution.min.js?v=64687aacf4"></script>
242<style>:root {--ghost-accent-color: #8B1538;}</style>
243    
243<script>
244  window.__GOOGLE_CLIENT_ID = "875055370304-a1s5qfi16dd09pbhetq0oqtlnuja2lds.apps.googleusercontent.com";
245  </script>
245
246
247</head>
248
249<body class="container-fluid home-template" data-post-style="Wide">
250    <a href="#main-body" class="skip-link">Skip to content</a>
251    <div class="toast-container" id="toast-container"></div>
252    <div class="container-wrapper">
253
254        <!-- Masthead -->
255          <div class="promo-strip" data-promo-variant="default-site">
256    <a href="https://app.litt.law/dashboard?utm_source=legal-wires&amp;utm_medium=promo-strip&amp;utm_campaign=default-site" target="_blank" rel="noopener">
257      <span class="ai-dot"></span>Signup for LITT &mdash; Agentic AI for legal, regulatory &amp; compliance knowledge work.<span class="arr">&rarr;</span>
258    </a>
259  </div>
260
261<header class="masthead editorial-masthead">
262  <div class="wrap">
263    <div class="mast-row">
264      <a class="brand" href="/" aria-label="Legal Wires &mdash; Home"><style>
265    .main-logo {
266        display: flex;
267        cursor: pointer;
268        align-items: center;
269        gap: 5px;
270        width: fit-content;
271    }
272
273    .main-logo-text {
274        font-size: 32px;
275        color: var(--accent-color);
276        display: flex;
277        align-items: center;
278        font-family: var(--font-heading), 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
279        font-weight: 700;
280        letter-spacing: -0.02em;
281    }
282
283    .main-logo-image {
284        width: 40px;
285    }
286    /* Pro badge — shown only for Pro members (html.lw-pro set by pro-status.js) */
287    .main-logo-pro {
288        display: none;
289        align-self: center;
290        font-family: var(--font-body), 'Gill Sans', sans-serif;
291        font-size: 9px;
292        font-weight: 800;
293        letter-spacing: 0.14em;
294        text-transform: uppercase;
295        color: #1a1409;
296        background: linear-gradient(135deg, #C9A55C, var(--gold, #A8843C));
297        padding: 2px 6px;
298        border-radius: 5px;
299        line-height: 1;
300        margin-left: 3px;
301        box-shadow: 0 1px 3px rgba(168, 132, 60, 0.4);
302    }
303    html.lw-pro .main-logo-pro { display: inline-flex; }
304    @media screen and (max-width: 768px) {
305        .main-logo-text {
306            font-size: 16px;
307        }
308        .main-logo-image {
309            width: 22px;
310        }
311        .main-logo {
312            gap: 4px;
313        }
314        .main-logo-pro { font-size: 7px; padding: 1px 4px; letter-spacing: 0.1em; }
315    }
316
317   
318</style>
319
320<div class="main-logo">
321    <svg class="main-logo-image" viewBox="0 0 44 34" fill="none" xmlns="http://www.w3.org/2000/svg"
322        xmlns:xlink="http://www.w3.org/1999/xlink">
323        <rect width="44" height="34" fill="url(#pattern0_569_787)" filter="url(#burgundy-matrix)" />
324        <defs>
325            <filter id="burgundy-matrix" color-interpolation-filters="sRGB">
326                <feColorMatrix type="matrix" values="
327                    0 0 0 0 0.545
328                    0 0 0 0 0.082
329                    0 0 0 0 0.220
330                    0 0 0 1 0" />
331            </filter>
332            <pattern id="pattern0_569_787" patternContentUnits="objectBoundingBox" width="1" height="1">
333                <use xlink:href="#image0_569_787" transform="matrix(0.00807109 0 0 0.0103559 0 -0.0041666)" />
334            </pattern>
335            <image id="image0_569_787" width="475" height="96"
336                xlink:href="data:image/png;base64,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" />
337        </defs>
338    </svg>
339    <div class="main-logo-text">
340        Legal Wires
341    </div>
342    <span class="main-logo-pro" aria-label="Pro member">Pro</span>
343</div></a>
344      <nav class="mast-nav" aria-label="Main navigation">
345        <a href="/category/buzz/" id="change-color-buzz">Buzz</a>
346        <a href="/category/case-study/" id="change-color-case-study">Case Studies</a>
347        <a href="/category/columns/" id="change-color-columns">Columns</a>
348        <a href="/category/lex-o-pedia/" id="change-color-lex-o-pedia">Lex-O-Pedia</a>
349        <a href="/category/glossary/" id="change-color-glossary">Glossary</a>
350        <a href="/plans/" id="change-color-plans" class="lw-nav-plans">Plans</a>
351        <a class="litt" href="https://app.litt.law/dashboard?utm_source=legal-wires&amp;utm_medium=nav&amp;utm_campaign=litt-ai" target="_blank" rel="noopener">Explore LITT</a>
352      </nav>
353      <div class="mast-sp"></div>
354      <form class="mast-search masthead-search-bar" id="homepage-search-trigger" action="/search/" method="get" role="search" aria-label="Site search">
355        <svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="11" cy="11" r="7"/><path d="m21 21-4.3-4.3"/></svg>
356        <input type="search" name="q" autocomplete="off" placeholder="Search…" />
357        <span class="kbd"><span>&#8984;</span><span>K</span></span>
358      </form>
359      <div class="mast-actions">
360        <button class="mast-burger masthead-hamburger" data-menu-toggle aria-label="Open menu" aria-expanded="false" aria-controls="navCompSmall">
361          <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M4 7h16M4 12h16M4 17h16"/></svg>
362        </button>
363        <button class="mast-icon-btn masthead-icon-btn" id="notification-bell" aria-label="Notifications" style="position:relative">
364          <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9"/><path d="M13.73 21a2 2 0 0 1-3.46 0"/></svg>
365          <span id="notification-bell-dot" style="display:none;position:absolute;top:4px;right:4px;width:8px;height:8px;background:var(--ox);border-radius:50%;border:2px solid var(--paper)"></span>
366        </button>
367        <a href="/signin/" class="lnk-quiet login-trigger">Sign in</a>
368        <a class="btn btn-primary masthead-text-btn" href="/submit-article/">Submit Article</a>
369      </div>
370    </div>
371  </div>
372</header>
373
374<div class="mm-scrim"></div>
375<aside class="mobile-menu" id="navCompSmall">
376  <div class="mm-head">
377    <a class="brand" href="/" aria-label="Legal Wires &mdash; Home"><style>
378    .main-logo {
379        display: flex;
380        cursor: pointer;
381        align-items: center;
382        gap: 5px;
383        width: fit-content;
384    }
385
386    .main-logo-text {
387        font-size: 32px;
388        color: var(--accent-color);
389        display: flex;
390        align-items: center;
391        font-family: var(--font-heading), 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
392        font-weight: 700;
393        letter-spacing: -0.02em;
394    }
395
396    .main-logo-image {
397        width: 40px;
398    }
399    /* Pro badge — shown only for Pro members (html.lw-pro set by pro-status.js) */
400    .main-logo-pro {
401        display: none;
402        align-self: center;
403        font-family: var(--font-body), 'Gill Sans', sans-serif;
404        font-size: 9px;
405        font-weight: 800;
406        letter-spacing: 0.14em;
407        text-transform: uppercase;
408        color: #1a1409;
409        background: linear-gradient(135deg, #C9A55C, var(--gold, #A8843C));
410        padding: 2px 6px;
411        border-radius: 5px;
412        line-height: 1;
413        margin-left: 3px;
414        box-shadow: 0 1px 3px rgba(168, 132, 60, 0.4);
415    }
416    html.lw-pro .main-logo-pro { display: inline-flex; }
417    @media screen and (max-width: 768px) {
418        .main-logo-text {
419            font-size: 16px;
420        }
421        .main-logo-image {
422            width: 22px;
423        }
424        .main-logo {
425            gap: 4px;
426        }
427        .main-logo-pro { font-size: 7px; padding: 1px 4px; letter-spacing: 0.1em; }
428    }
429
430   
431</style>
432
433<div class="main-logo">
434    <svg class="main-logo-image" viewBox="0 0 44 34" fill="none" xmlns="http://www.w3.org/2000/svg"
435        xmlns:xlink="http://www.w3.org/1999/xlink">
436        <rect width="44" height="34" fill="url(#pattern0_569_787)" filter="url(#burgundy-matrix)" />
437        <defs>
438            <filter id="burgundy-matrix" color-interpolation-filters="sRGB">
439                <feColorMatrix type="matrix" values="
440                    0 0 0 0 0.545
441                    0 0 0 0 0.082
442                    0 0 0 0 0.220
443                    0 0 0 1 0" />
444            </filter>
445            <pattern id="pattern0_569_787" patternContentUnits="objectBoundingBox" width="1" height="1">
446                <use xlink:href="#image0_569_787" transform="matrix(0.00807109 0 0 0.0103559 0 -0.0041666)" />
447            </pattern>
448            <image id="image0_569_787" width="475" height="96"
449                xlink:href="data:image/png;base64,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" />
450        </defs>
451    </svg>
452    <div class="main-logo-text">
453        Legal Wires
454    </div>
455    <span class="main-logo-pro" aria-label="Pro member">Pro</span>
456</div></a>
457    <button class="mm-x" aria-label="Close menu">
458      <svg width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2"><path d="M18 6 6 18M6 6l12 12"/></svg>
459    </button>
460  </div>
461  <div class="mm-search" data-cmdk role="button" tabindex="0">
462    <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="11" cy="11" r="7"/><path d="m21 21-4.3-4.3"/></svg>
463    Search articles, topics&hellip;
464    <span style="margin-left:auto;font-family:var(--mono);font-size:11px;color:var(--ink-mute)">&#8984;K</span>
465  </div>
466  <nav class="mm-links nav-ham-list" aria-label="Mobile navigation">
467    <a class="tagSlug" href="/category/buzz/">Buzz<span class="ar">&rsaquo;</span></a>
468    <a class="tagSlug" href="/category/case-study/">Case Studies<span class="ar">&rsaquo;</span></a>
469    <a class="tagSlug" href="/category/columns/">Columns<span class="ar">&rsaquo;</span></a>
470    <a class="tagSlug" href="/category/lex-o-pedia/">Lex-O-Pedia<span class="ar">&rsaquo;</span></a>
471    <a class="tagSlug" href="/category/glossary/">Glossary<span class="ar">&rsaquo;</span></a>
472    <a class="tagSlug lw-nav-plans" href="/plans/">Plans<span class="ar">&rsaquo;</span></a>
473    <a class="tagSlug litt accent-nav-item" href="https://app.litt.law/dashboard?utm_source=legal-wires&amp;utm_medium=nav&amp;utm_campaign=litt-ai" target="_blank" rel="noopener">Explore LITT<span class="ar">&rsaquo;</span></a>
474  </nav>
475
476  <div class="mm-utils">
477    <a class="mm-util" href="#" onclick="event.preventDefault(); document.getElementById('notifications').classList.add('open'); document.querySelector('.mm-scrim')?.click();">
478      <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9"/><path d="M13.73 21a2 2 0 0 1-3.46 0"/></svg>
479      <span>Notifications</span>
480    </a>
481    <a class="mm-util" href="/submit-article/">
482      <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 5v14M5 12h14"/></svg>
483      <span>Submit Article</span>
484    </a>
485  </div>
486  <div class="mm-foot">
487    <a class="btn btn-ghost" href="/signin/">Sign in</a>
488    <a class="btn btn-primary" href="/submit-article/">Submit Article</a>
489  </div>
490</aside>
491
492<div class="modal-scrim" id="cmdk">
493  <div class="modal" style="max-width:640px;position:relative">
494    <div style="display:flex;align-items:center;gap:12px;padding:20px 22px;border-bottom:1px solid var(--line)">
495      <span style="width:30px;height:30px;border-radius:8px;background:var(--ai);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0">
496        <svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="11" cy="11" r="7"/><path d="m21 21-4.3-4.3"/></svg>
497      </span>
498      <input placeholder="Search articles, case studies, legal topics&hellip;" style="flex:1;border:none;outline:none;background:none;font-family:var(--sans);font-size:16px;color:var(--ink)" />
499      <span class="kbd" style="font-family:var(--mono);font-size:10px;color:var(--ink-mute);border:1px solid var(--line);border-radius:5px;padding:2px 7px">ESC</span>
500    </div>
501    <div style="padding:14px 16px 18px">
502      <div class="kick" style="padding:6px 8px">Try asking</div>
503      <a href="/search/" style="display:flex;align-items:center;gap:11px;padding:11px 10px;border-radius:9px;text-decoration:none;color:var(--ink-soft)"><span style="color:var(--ai);font-family:var(--mono)">?</span>When must a listed company disclose related party transactions?</a>
504      <a href="/search/" style="display:flex;align-items:center;gap:11px;padding:11px 10px;border-radius:9px;text-decoration:none;color:var(--ink-soft)"><span style="color:var(--ai);font-family:var(--mono)">?</span>When can a court set aside an arbitral award?</a>
505      <a href="/search/" style="display:flex;align-items:center;gap:11px;padding:11px 10px;border-radius:9px;text-decoration:none;color:var(--ink-soft)"><span style="color:var(--ai);font-family:var(--mono)">?</span>Recent SEBI orders on insider trading via WhatsApp</a>
506      <div style="text-align:left;padding:12px 10px 2px;font-size:12.5px;color:var(--ink-mute)">Powered by <span style="font-weight:700;color:var(--ai)">LITT AI</span> &middot; semantic search across <b style="color:var(--ai)">218,000+</b> sources</div>
507    </div>
508    <button class="modal-x" aria-label="Close">
509      <svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2"><path d="M18 6 6 18M6 6l12 12"/></svg>
510    </button>
511  </div>
512</div>
513
514<script>
515(function(){
516  var toggle=document.getElementById('lw-user-toggle');
517  var dropdown=document.getElementById('lw-user-dropdown');
518  if(toggle && dropdown){
519    function positionDropdown(){
520      var rect=toggle.getBoundingClientRect();
521      dropdown.style.top=(rect.bottom+8)+'px';
522      dropdown.style.right=(window.innerWidth-rect.right)+'px';
523    }
524    toggle.addEventListener('click',function(e){e.stopPropagation();var isOpen=dropdown.classList.contains('open');if(!isOpen)positionDropdown();dropdown.classList.toggle('open');toggle.setAttribute('aria-expanded',!isOpen);});
525    document.addEventListener('click',function(e){if(!dropdown.contains(e.target)&&e.target!==toggle){dropdown.classList.remove('open');toggle.setAttribute('aria-expanded','false');}});
526    window.addEventListener('scroll',function(){if(dropdown.classList.contains('open'))positionDropdown();},{passive:true});
527  }
528  // Cmd+K opens cmdk modal (handled in lw.js / scripts.js); keep this fallback for direct /search/ navigation if modal not present
529  document.addEventListener('keydown',function(e){
530    if((e.metaKey||e.ctrlKey)&&e.key==='k'){
531      var cmd=document.getElementById('cmdk');
532      if(!cmd){e.preventDefault();window.location.href='/search/';}
533    }
534  });
535})();
536</script>
536
537
538        <main id="main-body" class="main-default-body">
539            
540<title></title>
541
542
543<section class="hero hero-split">
544  <div class="hero-bg" aria-hidden="true">
545    <span class="hero-seal">&sect;</span>
546  </div>
547  <div class="wrap hero-grid">
548
549    <div class="hero-left">
550      <div class="hero-tag">Connecting Law &amp; Society</div>
551      <h1 class="hero-h1">Legal Analysis.<br><span class="hero-h1-accent">Regulatory Intelligence.</span><br>Jurisprudence.</h1>
552      <p class="hero-sub">In-depth analysis for an informed public &mdash; and an AI research engine that reads the law with you.</p>
553
554      <div class="ai-search">
555        <form class="ai-field" action="/search/" method="get" role="search">
556          <span class="ai-ic">
557            <svg width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M12 3v3m0 12v3M3 12h3m12 0h3M5.6 5.6l2.1 2.1m8.6 8.6 2.1 2.1m0-12.8-2.1 2.1M7.7 16.3l-2.1 2.1"/><circle cx="12" cy="12" r="3.2"/></svg>
558          </span>
559          <input type="search" name="q" autocomplete="off" placeholder="Ask anything across statutes, judgments and regulator orders…" />
560          <span class="kbd"><span>&#8984;</span><span>K</span></span>
561          <button type="submit" class="btn btn-ai go">Search</button>
562        </form>
563        <div class="ai-suggest">
564          <a class="ai-chip" href="/search/?q=When%20must%20a%20listed%20company%20disclose%20related%20party%20transactions%3F"><span class="q">?</span>RPT disclosure for listed companies</a>
565          <a class="ai-chip" href="/search/?q=When%20can%20a%20court%20set%20aside%20an%20arbitral%20award%20in%20India%3F"><span class="q">?</span>Setting aside an arbitral award</a>
566          <a class="ai-chip" href="/search/?q=Recent%20SEBI%20orders%20on%20insider%20trading%20via%20WhatsApp%20groups"><span class="q">?</span>SEBI WhatsApp insider trading</a>
567          <a class="ai-chip" href="/search/?q=Are%20directors%20personally%20liable%20for%20unpaid%20GST%3F"><span class="q">?</span>Director liability for GST defaults</a>
568        </div>
569        <div class="ai-powered">Powered by <a class="litt" href="https://litt.law/" target="_blank" rel="noopener">LITT AI</a> &middot; semantic search across <b>218,000+</b> sources</div>
570      </div>
571
572      
572<script>
573      (function () {
574        function gate() {
575          var s = document.querySelector('.ai-search'); if (!s || s.dataset.lwGated) return;
576          s.dataset.lwGated = '1'; s.classList.add('ai-search-gated');
577          var form = s.querySelector('.ai-field'), input = s.querySelector('input[type="search"]'),
578              btn = s.querySelector('.btn-ai.go'), kbd = s.querySelector('.kbd'), powered = s.querySelector('.ai-powered');
579          function toPlans(e) { if (e) e.preventDefault(); window.location.href = '/plans/'; }
580          if (form) { form.setAttribute('action', '/plans/'); form.addEventListener('submit', toPlans); }
581          if (input) { input.readOnly = true; input.setAttribute('placeholder', 'Search 218,000+ statutes, judgments and orders — a Pro feature'); input.addEventListener('mousedown', toPlans); }
582          if (btn) { btn.type = 'button'; btn.textContent = 'Get Pro'; btn.addEventListener('click', toPlans); }
583          if (kbd) { kbd.className = 'ai-pro-badge'; kbd.innerHTML = '<svg width="11" height="11" viewB
583ox="0 0 24 24" fill="currentColor"><path d="M13 2 4.5 12.5h6L11 22l8.5-10.5h-6L13 2z"/></svg>Pro'; }
584          Array.prototype.forEach.call(s.querySelectorAll('.ai-chip'), function (c) { c.setAttribute('href', '/plans/'); });
585          if (powered) powered.innerHTML = 'Semantic search across <b>218,000+</b> sources &middot; <a href="/plans/" class="ai-powered-cta">unlock with Legal Wires Pro</a>';
586        }
587        function check() { if (window.lwPro && window.lwPro.resolved) { if (window.lwPro.gated) gate(); return true; } return false; }
588        if (!check()) document.addEventListener('lw:prostatus', function (e) { if (e.detail && e.detail.gated) gate(); });
589      })();
590      </script>
590
591    </div>
592
593    <aside class="hero-right">
594
595      <div class="hero-live">
596        <span class="dot"></span>
597        <span class="lbl">Live</span>
598          <span class="time">Last published &middot; Sep 15, 9:00 AM</span>
599      </div>
600
601        <a class="hero-cover" href="/columns/the-company-that-isnt-selling-oyos-zero-ofs-ipo/">
602          <span class="kick">The Cover Story &middot; Columns</span>
603          <h2>The Company That Isn&#x27;t Selling — OYO&#x27;s Zero-OFS IPO</h2>
604          <p>OYO&#39;s zero-OFS IPO, and the case for a software business wearing a hotel uniform. A reading of Oravel Stays&#39; ₹6,650 crore fresh issue: what the absence of an Offer for Sale signals, how an asset-light AI-run platform earns software-like margins inside hospitality, and where the real risks sit.</p>
605          <span class="cv-foot">
606            <b>Sushant Shukla</b>
607            <span class="sep">&middot;</span>
608            <time>Jul 2</time>
609            <span class="sep">&middot;</span>20 min read
610            <span class="go">Read &rarr;</span>
611          </span>
612        </a>
613
614      <div class="hero-feed">
615        <div class="hero-feed-h">
616          <span class="kick">Latest</span>
617          <a class="more" href="/category/buzz/">All buzz &rarr;</a>
618        </div>
619          <a class="hero-feed-item" href="/lex-o-pedia/court-commissioner-appointment-limitations/">
620            <span class="no">01</span>
621            <div class="hf-tx">
622              <div class="hf-cat">Lex-O-Pedia</div>
623              <div class="hf-h">When Can a Court Commissioner Not Be Appointed for Collecting Evidence?</div>
624              <div class="hf-meta">Sep 15 &middot; 11 min read</div>
625            </div>
626          </a>
627          <a class="hero-feed-item" href="/lex-o-pedia/arms-act-definitions-india/">
628            <span class="no">02</span>
629            <div class="hf-tx">
630              <div class="hf-cat">Lex-O-Pedia</div>
631              <div class="hf-h">How Does the Arms Act, 1959 Define Arms, Ammunition and Related Terms?</div>
632              <div class="hf-meta">Sep 14 &middot; 12 min read</div>
633            </div>
634          </a>
635          <a class="hero-feed-item" href="/lex-o-pedia/use-of-infrastructure-agreements-india/">
636            <span class="no">03</span>
637            <div class="hf-tx">
638              <div class="hf-cat">Lex-O-Pedia</div>
639              <div class="hf-h">How Do Use of Infrastructure Agreements Differ From Leases Under Indian Law?</div>
640              <div class="hf-meta">Sep 14 &middot; 22 min read</div>
641            </div>
642          </a>
643          <a class="hero-feed-item" href="/lex-o-pedia/sub-lease-deeds-indian-law/">
644            <span class="no">04</span>
645            <div class="hf-tx">
646              <div class="hf-cat">Lex-O-Pedia</div>
647              <div class="hf-h">What Are the Legal Requirements for a Sub-Lease Deed in India?</div>
648              <div class="hf-meta">Sep 13 &middot; 27 min read</div>
649            </div>
650          </a>
651      </div>
652
653      <div class="hero-juris">
654        <span class="juris-lbl">Coverage</span>
655        <span class="j-pill"><b>160K+</b> India</span>
656        <span class="j-pill"><b>50K+</b> Singapore</span>
657        <span class="j-pill"><b>160K+</b> Regulators</span>
658        <span class="j-pill"><b>540+</b> UAE &amp; DIFC</span>
659      </div>
660    </aside>
661  </div>
662
663  <div class="hero-scroll"><span class="ln"></span>Explore articles<span class="ln"></span></div>
664</section>
665
666
667<section class="section">
668  <div class="wrap">
669    <div class="sec-marker"><span class="sig">&sect; I</span><h2>Latest Dispatches</h2><span class="ln"></span><a class="more" href="/category/buzz/">View all Buzz &rarr;</a></div>
670    <div class="buzz-grid dispatch-grid grid-4">
671          
672<a class="buzz-card dispatch reveal" href="/buzz/ai-hallucination-supreme-court-gadiya-penalty-quashed/">
673  <div class="buzz-rail ">
674    <span class="n">01</span>
675  </div>
676  <div class="buzz-body">
677    <div class="buzz-kick">Buzz</div>
678    <h3>When the Machine Cites a Ghost: The Supreme Court&#x27;s ₹425-Crore Warning on AI Hallucinations in Adjudication</h3>
679    <div class="buzz-foot">
680      <span>Sep 07</span>
681      <span class="sep">&middot;</span><span>16 min read</span>
682      <span class="go">&rarr;</span>
683    </div>
684  </div>
685</a>
686          
687<a class="buzz-card dispatch reveal" href="/buzz/chatgpt-legal-research-indian-courtroom/">
688  <div class="buzz-rail v2">
689    <span class="n">02</span>
690  </div>
691  <div class="buzz-body">
692    <div class="buzz-kick">Buzz</div>
693    <h3>Why ChatGPT&#x27;s Legal Research Won&#x27;t Survive an Indian Courtroom</h3>
694    <div class="buzz-foot">
695      <span>Aug 31</span>
696      <span class="sep">&middot;</span><span>6 min read</span>
697      <span class="go">&rarr;</span>
698    </div>
699  </div>
700</a>
701          
702<a class="buzz-card dispatch reveal" href="/buzz/plugins-are-not-harnesses-claude-vs-litt-for-legal-work/">
703  <div class="buzz-rail v3">
704    <span class="n">03</span>
705  </div>
706  <div class="buzz-body">
707    <div class="buzz-kick">Buzz</div>
708    <h3>Plugins Are Not Harnesses: A Practitioner&#x27;s Guide to Choosing Between Claude and LITT for Legal Work</h3>
709    <div class="buzz-foot">
710      <span>May 13</span>
711      <span class="sep">&middot;</span><span>31 min read</span>
712      <span class="go">&rarr;</span>
713    </div>
714  </div>
715</a>
716          
717<a class="buzz-card dispatch reveal" href="/buzz/the-4-month-vlookup-why-the-electoral-bonds-case-is-a-masterclass-in-judicial-intolerance/">
718  <div class="buzz-rail v4">
719    <span class="n">04</span>
720  </div>
721  <div class="buzz-body">
722    <div class="buzz-kick">Buzz</div>
723    <h3>The 4-Month VLOOKUP: Why the Electoral Bonds Case is a Masterclass in Judicial Intolerance</h3>
724    <div class="buzz-foot">
725      <span>Apr 08</span>
726      <span class="sep">&middot;</span><span>4 min read</span>
727      <span class="go">&rarr;</span>
728    </div>
729  </div>
730</a>
731          
732<a class="buzz-card dispatch reveal" href="/buzz/can-you-go-to-jail-for-a-murder-you-didnt-commit-decoding-constructive-liability/">
733  <div class="buzz-rail v5">
734    <span class="n">05</span>
735  </div>
736  <div class="buzz-body">
737    <div class="buzz-kick">Buzz</div>
738    <h3>Can You Go to Jail for a Murder You Didn&#x27;t Commit? Decoding Constructive Liability</h3>
739    <div class="buzz-foot">
740      <span>Apr 07</span>
741      <span class="sep">&middot;</span><span>4 min read</span>
742      <span class="go">&rarr;</span>
743    </div>
744  </div>
745</a>
746          
747<a class="buzz-card dispatch reveal" href="/buzz/decoding-the-paramvir-singh-mandate-the-supreme-courts-war-on-blind-spots/">
748  <div class="buzz-rail v2">
749    <span class="n">06</span>
750  </div>
751  <div class="buzz-body">
752    <div class="buzz-kick">Buzz</div>
753    <h3>Decoding the &quot;Paramvir Singh Mandate&quot;: The Supreme Court&#x27;s War on Blind Spots</h3>
754    <div class="buzz-foot">
755      <span>Apr 07</span>
756      <span class="sep">&middot;</span><span>4 min read</span>
757      <span class="go">&rarr;</span>
758    </div>
759  </div>
760</a>
761          
762<a class="buzz-card dispatch reveal" href="/buzz/the-burden-of-proof-what-ice-teaches-us-about-indias-citizenship-tribunals/">
763  <div class="buzz-rail v2">
764    <span class="n">07</span>
765  </div>
766  <div class="buzz-body">
767    <div class="buzz-kick">Buzz</div>
768    <h3>The Burden of Proof: What ICE Teaches Us About India’s Citizenship Tribunals</h3>
769    <div class="buzz-foot">
770      <span>Apr 06</span>
771      <span class="sep">&middot;</span><span>4 min read</span>
772      <span class="go">&rarr;</span>
773    </div>
774  </div>
775</a>
776          
777<a class="buzz-card dispatch reveal" href="/buzz/game-of-skill-or-game-of-chance-inside-indias-billion-dollar-betting-loophole/">
778  <div class="buzz-rail v2">
779    <span class="n">08</span>
780  </div>
781  <div class="buzz-body">
782    <div class="buzz-kick">Buzz</div>
783    <h3>Game of Skill or Game of Chance? Inside India’s Billion-Dollar Betting Loophole</h3>
784    <div class="buzz-foot">
785      <span>Apr 05</span>
786      <span class="sep">&middot;</span><span>4 min read</span>
787      <span class="go">&rarr;</span>
788    </div>
789  </div>
790</a>
791    </div>
792  </div>
793</section>
794
795<div class="wrap">
796  <a class="litt-banner" href="https://app.litt.law/dashboard?utm_source=legal-wires&amp;utm_medium=banner&amp;utm_campaign=litt-ai" target="_blank" rel="noopener">
797    <div class="lb-badge">
798      <svg width="26" height="26" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8"><path d="M12 3v3m0 12v3M3 12h3m12 0h3M5.6 5.6l2.1 2.1m8.6 8.6 2.1 2.1m0-12.8-2.1 2.1M7.7 16.3l-2.1 2.1"/><circle cx="12" cy="12" r="3.4"/></svg>
799    </div>
800    <div class="lb-tx">
801      <div class="lb-k">LITT &mdash; Agentic AI</div>
802      <div class="lb-h">Draft smarter. <em>Research faster.</em></div>
803      <div class="lb-p">Not a chatbot. Not a search engine. Agentic AI for lawyers who need answers, not links &mdash; with auditable traces across statutes, judgments and regulator orders.</div>
804    </div>
805    <div class="lb-cta"><span class="btn btn-ai">Try LITT free &rarr;</span></div>
806  </a>
807</div>
808
809<section class="section">
810  <div class="wrap">
811    <div class="sec-marker"><span class="sig">&sect; II</span><h2>Case Studies</h2><span class="ln"></span><a class="more" href="/category/case-study/">Browse archive &rarr;</a></div>
812    <div class="docket-grid case-list grid-4">
813          <a class="casefile case-row reveal" href="/case-study/case-study-delhi-metro-rail-corporation-ltd-v-delhi-airport-metro-express-pvt-ltd/">
814  <div class="cf-top">
815    <span class="cf-inre">In Re</span>
816    <span class="cf-court">case-study</span>
817  </div>
818  <h3 class="cf-name">Case Study: Delhi Metro Rail Corporation Ltd. v. Delhi Airport Metro Express Pvt. Ltd.</h3>
819  <div class="cf-hold">The Supreme Court allowed DMRC’s curative petition, setting aside a &quot;patently illegal&quot; arbitral award. The Court ruled that conflating &quot;curing defects&quot; with &quot;taking effective steps&quot; and ignoring vital CMRS safety evidence caused a grave miscarriage of justice, creating an undeserved windfall.</div>
820  <div class="cf-foot">
821    <span class="cf-cite">2026 &middot; 11 min read</span>
822    <span class="cf-outcome held">Held</span>
823  </div>
824  <span class="cf-stamp">Judgment</span>
825</a>
826          <a class="casefile case-row reveal" href="/case-study/case-study-rejanish-k-v-v-k-deepa/">
827  <div class="cf-top">
828    <span class="cf-inre">In Re</span>
829    <span class="cf-court">case-study</span>
830  </div>
831  <h3 class="cf-name">Case Study: Rejanish K.V. v. K. Deepa</h3>
832  <div class="cf-hold">The Supreme Court in Rejanish K.V. v. K. Deepa (2025) held that judicial officers with seven years of prior advocacy are eligible for direct recruitment as District Judges under Article 233(2), overruling Dheeraj Mor and affirming equality in eligibility.</div>
833  <div class="cf-foot">
834    <span class="cf-cite">2025 &middot; 6 min read</span>
835    <span class="cf-outcome held">Held</span>
836  </div>
837  <span class="cf-stamp">Judgment</span>
838</a>
839          <a class="casefile case-row reveal" href="/case-study/case-study-sri-hansraj-koley-v-the-secretary-labour-department-and-others/">
840  <div class="cf-top">
841    <span class="cf-inre">In Re</span>
842    <span class="cf-court">case-study</span>
843  </div>
844  <h3 class="cf-name">Case Study: Sri Hansraj Koley v. The Secretary, Labour Department and Others</h3>
845  <div class="cf-hold">In Sri Hansraj Koley v. The Secretary, Labour Department (WPA 10043 of 2025), Calcutta HC held guest faculty not a &quot;workman&quot; under Industrial Dispute Act, 1947, as they are not regularly employed and receive honorarium, not wages, dismissing the writ petition.</div>
846  <div class="cf-foot">
847    <span class="cf-cite">2025 &middot; 2 min read</span>
848    <span class="cf-outcome held">Held</span>
849  </div>
850  <span class="cf-stamp">Judgment</span>
851</a>
852          <a class="casefile case-row reveal" href="/case-study/case-study-philip-morris-v-uruguay/">
853  <div class="cf-top">
854    <span class="cf-inre">In Re</span>
855    <span class="cf-court">case-study</span>
856  </div>
857  <h3 class="cf-name">Case Study: Philip Morris v. Uruguay</h3>
858  <div class="cf-hold">The Philip Morris v. Uruguay case reaffirmed states&#39; rights to regulate in the public interest, particularly for health measures. The ICSID tribunal ruled that Uruguay&#39;s tobacco regulations did not constitute expropriation or unfair treatment, setting a key precedent.</div>
859  <div class="cf-foot">
860    <span class="cf-cite">2025 &middot; 5 min read</span>
861    <span class="cf-outcome held">Held</span>
862  </div>
863  <span class="cf-stamp">Judgment</span>
864</a>
865          <a class="casefile case-row reveal" href="/case-study/case-study-siemens-a-g-v-the-argentine-republic/">
866  <div class="cf-top">
867    <span class="cf-inre">In Re</span>
868    <span class="cf-court">case-study</span>
869  </div>
870  <h3 class="cf-name">Case Study: Siemens A.G. v. The Argentine Republic</h3>
871  <div class="cf-hold">The Siemens v. Argentina case reaffirmed investor protections under BITs, ruling Argentina’s termination of Siemens’ contract as unlawful expropriation. The ICSID tribunal awarded Siemens over $217 million, reinforcing fair treatment and state obligations in investment disputes.</div>
872  <div class="cf-foot">
873    <span class="cf-cite">2025 &middot; 5 min read</span>
874    <span class="cf-outcome held">Held</span>
875  </div>
876  <span class="cf-stamp">Judgment</span>
877</a>
878          <a class="casefile case-row reveal" href="/case-study/case-study-sd-myers-v-canada/">
879  <div class="cf-top">
880    <span class="cf-inre">In Re</span>
881    <span class="cf-court">case-study</span>
882  </div>
883  <h3 class="cf-name">Case Study: SD Myers v. Canada</h3>
884  <div class="cf-hold">The SD Myers v. Canada case set key precedents in NAFTA arbitration, clarifying national treatment, minimum standard of treatment, and damages in non-expropriation cases. The Tribunal found Canada&#39;s PCB export ban discriminatory, awarding SDMI CAN$6 million in compensation.</div>
885  <div class="cf-foot">
886    <span class="cf-cite">2025 &middot; 5 min read</span>
887    <span class="cf-outcome held">Held</span>
888  </div>
889  <span class="cf-stamp">Judgment</span>
890</a>
891          <a class="casefile case-row reveal" href="/case-study/case-study-metalclad-corp-v-united-mexican-states/">
892  <div class="cf-top">
893    <span class="cf-inre">In Re</span>
894    <span class="cf-court">case-study</span>
895  </div>
896  <h3 class="cf-name">Case Study: Metalclad Corp. v. United Mexican States</h3>
897  <div class="cf-hold">Metalclad v. Mexico highlights indirect expropriation under NAFTA, where regulatory actions deprived an investor of economic use. The tribunal ruled in favor of Metalclad, awarding $16.5M, but a Canadian court partially annulled the decision, limiting its scope.</div>
898  <div class="cf-foot">
899    <span class="cf-cite">2025 &middot; 5 min read</span>
900    <span class="cf-outcome held">Held</span>
901  </div>
902  <span class="cf-stamp">Judgment</span>
903</a>
904          <a class="casefile case-row reveal" href="/case-study/case-study-tecnicas-medioambientales-tacmed-s-a-tecmed-v-mexico/">
905  <div class="cf-top">
906    <span class="cf-inre">In Re</span>
907    <span class="cf-court">case-study</span>
908  </div>
909  <h3 class="cf-name">Case Study: Tecnicas Medioambientales Tacmed S.A. (Tecmed) v. Mexico</h3>
910  <div class="cf-hold">The Tecmed v. Mexico case (ICSID Case No. ARB(AF)/00/2) established that politically motivated regulatory actions can constitute expropriation. The tribunal ruled that Mexico’s refusal to renew a landfill permit violated investor protections, awarding $5.5M in damages.</div>
911  <div class="cf-foot">
912    <span class="cf-cite">2025 &middot; 4 min read</span>
913    <span class="cf-outcome held">Held</span>
914  </div>
915  <span class="cf-stamp">Judgment</span>
916</a>
917    </div>
918  </div>
919</section>
920
921<section class="section">
922  <div class="wrap">
923    <div class="sec-marker"><span class="sig">&sect; III</span><h2>Columns</h2><span class="ln"></span><a class="more" href="/category/columns/">Read all Columns &rarr;</a></div>
924    <div class="qgrid col-list grid-4">
925          <a class="qcard col-row" href="/columns/the-company-that-isnt-selling-oyos-zero-ofs-ipo/">
926  <div class="qtop">
927    <span class="qcat">Columns</span>
928    <span class="qrt">20 min read</span>
929  </div>
930  <h3>The Company That Isn&#x27;t Selling — OYO&#x27;s Zero-OFS IPO</h3>
931  <p class="ex">OYO&#39;s zero-OFS IPO, and the case for a software business wearing a hotel uniform. A reading of Oravel Stays&#39; ₹6,650 crore fresh issue: what the absence of an Offer for Sale signals, how an asset-light AI-run platform earns software-like margins inside hospitality, and where the real risks sit.</p>
932  <div class="qfoot">
933      <span class="qav" data-initials="Sushant Shukla"></span>
934      <div class="qwho">
935        <div class="qn">Sushant Shukla</div>
936        <div class="qr">Contributor</div>
937      </div>
938    <span class="qdate">Jul 02</span>
939  </div>
940</a>
941          <a class="qcard col-row" href="/columns/oyos-updated-drhp-inside-indias-most-anticipated-hospitality-ipo/">
942  <div class="qtop">
943    <span class="qcat">Columns</span>
944    <span class="qrt">23 min read</span>
945  </div>
946  <h3>OYO&#x27;s Updated DRHP: Inside India&#x27;s Most Anticipated Hospitality IPO</h3>
947  <p class="ex">After two failed attempts spanning five years, OYO — now operating under parent entity PRISM (formerly Oravel Stays Limited) — has cleared SEBI&#39;s gate for a third bid. A section-by-section reading of the 29 June 2026 UDRHP-I.</p>
948  <div class="qfoot">
949      <span class="qav" data-initials="Sushant Shukla"></span>
950      <div class="qwho">
951        <div class="qn">Sushant Shukla</div>
952        <div class="qr">Contributor</div>
953      </div>
954    <span class="qdate">Jun 30</span>
955  </div>
956</a>
957          <a class="qcard col-row" href="/columns/lawyers-edge-leverage-ai-without-surrendering-control/">
958  <div class="qtop">
959    <span class="qcat">Columns</span>
960    <span class="qrt">13 min read</span>
961  </div>
962  <h3>The Lawyer&#x27;s Edge: How to Leverage AI Without Surrendering Privacy, Quality, or Cost Control</h3>
963  <p class="ex">AI is arriving in legal practice not as a faster typewriter but as a junior associate who reads at 200,000 words a minute and costs a coffee per task. A practical guide to capturing the upside without the unforced errors that have begun to fill state bar disciplinary dockets.</p>
964  <div class="qfoot">
965      <span class="qav" data-initials="Sushant Shukla"></span>
966      <div class="qwho">
967        <div class="qn">Sushant Shukla</div>
968        <div class="qr">Contributor</div>
969      </div>
970    <span class="qdate">Jun 27</span>
971  </div>
972</a>
973          <a class="qcard col-row" href="/columns/many-minds-one-counsel-legal-reasoning-renaissance/">
974  <div class="qtop">
975    <span class="qcat">Columns</span>
976    <span class="qrt">8 min read</span>
977  </div>
978  <h3>Many Minds, One Counsel: On the Renaissance of Legal Reasoning in an Age of Artificial Intelligence</h3>
979  <p class="ex">A lawyer&#39;s mind is a courtroom in which several advocates are always speaking at once. The art is in hearing all of them. On the quiet renaissance reshaping the profession beneath our hands, and why the externalisation of reasoning, not merely recall, is the change that matters.</p>
980  <div class="qfoot">
981      <span class="qav" data-initials="Sushant Shukla"></span>
982      <div class="qwho">
983        <div class="qn">Sushant Shukla</div>
984        <div class="qr">Contributor</div>
985      </div>
986    <span class="qdate">Jun 27</span>
987  </div>
988</a>
989          <a class="qcard col-row" href="/columns/rbi-mrm-2026-implementation/">
990  <div class="qtop">
991    <span class="qcat">Columns</span>
992    <span class="qrt">19 min read</span>
993  </div>
994  <h3>Implementing the RBI&#x27;s 2026 Model Risk Guidance: Frameworks, Validation, Frontier AI, and the India Context</h3>
995  <p class="ex">Technical and operational guide to implementing the RBI&#39;s 2026 Model Risk Management draft. NIST AI RMF and ISO/IEC 42001 as anchors, the SR 11-7 lineage, validation toolkit and its limits on foundation models, frontier AI risks, IndiaAI Mission, and a ten-point implementation checklist.</p>
996  <div class="qfoot">
997      <span class="qav" data-initials="Sushant Shukla"></span>
998      <div class="qwho">
999        <div class="qn">Sushant Shukla</div>
1000        <div class="qr">Contributor</div>
1001      </div>
1002    <span class="qdate">Jun 26</span>
1003  </div>
1004</a>
1005          <a class="qcard col-row" href="/columns/rbi-mrm-2026-legal-framework/">
1006  <div class="qtop">
1007    <span class="qcat">Columns</span>
1008    <span class="qrt">18 min read</span>
1009  </div>
1010  <h3>The Legal Architecture Around the RBI&#x27;s 2026 Model Risk Draft: DPDPA, CPA, Competition Act, and the IMAI Question</h3>
1011  <p class="ex">How the RBI&#39;s 2026 Model Risk Management draft interacts with the Digital Personal Data Protection Act, the Consumer Protection Act, the Competition Act, and the Supreme Court&#39;s IMAI judgment on guidance enforceability. Five regulatory-interaction clauses the final Guidance should add.</p>
1012  <div class="qfoot">
1013      <span class="qav" data-initials="Sushant Shukla"></span>
1014      <div class="qwho">
1015        <div class="qn">Sushant Shukla</div>
1016        <div class="qr">Contributor</div>
1017      </div>
1018    <span class="qdate">Jun 26</span>
1019  </div>
1020</a>
1021          <a class="qcard col-row" href="/columns/rbi-mrm-2026-twenty-four-comments/">
1022  <div class="qtop">
1023    <span class="qcat">Columns</span>
1024    <span class="qrt">20 min read</span>
1025  </div>
1026  <h3>Twenty-four Asks of the RBI: A Detailed Comment on the 2026 Model Risk Management Draft</h3>
1027  <p class="ex">A clause-by-clause comment record on the RBI&#39;s 2026 draft Guidance on Model Risk Management. Proportionality, definitions, the black-box validation problem at paragraph 46, kill-switch operationalisation, DPDPA interaction, and a phased 18, 24, 36 month rollout. Twenty-four asks in one place.</p>
1028  <div class="qfoot">
1029      <span class="qav" data-initials="Sushant Shukla"></span>
1030      <div class="qwho">
1031        <div class="qn">Sushant Shukla</div>
1032        <div class="qr">Contributor</div>
1033      </div>
1034    <span class="qdate">Jun 26</span>
1035  </div>
1036</a>
1037          <a class="qcard col-row" href="/columns/rbi-draft-secondary-market-government-securities-direction-2026/">
1038  <div class="qtop">
1039    <span class="qcat">Columns</span>
1040    <span class="qrt">24 min read</span>
1041  </div>
1042  <h3>One Rulebook for the G-Sec Market: Decoding the RBI&#x27;s 2026 Draft Master Direction on Secondary Market Transactions in Government Securities</h3>
1043  <p class="ex">The Reserve Bank&#39;s draft Master Direction collapses 36 legacy circulars into one rulebook for secondary market trading in Government securities. T+1 settlement as default, calibrated When Issued limits, short sale codified for all eligible entities, and a defined FEMA pathway for non-residents.</p>
1044  <div class="qfoot">
1045      <span class="qav" data-initials="Sushant Shukla"></span>
1046      <div class="qwho">
1047        <div class="qn">Sushant Shukla</div>
1048        <div class="qr">Contributor</div>
1049      </div>
1050    <span class="qdate">Jun 26</span>
1051  </div>
1052</a>
1053    </div>
1054  </div>
1055</section>
1056
1057<div class="wrap">
1058  <a class="litt-banner" href="https://app.litt.law/dashboard?utm_source=legal-wires&amp;utm_medium=banner2&amp;utm_campaign=litt-ai" target="_blank" rel="noopener">
1059    <div class="lb-badge">
1060      <svg width="26" height="26" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8"><path d="M4 6h16M4 12h16M4 18h10"/></svg>
1061    </div>
1062    <div class="lb-tx">
1063      <div class="lb-k">LITT &mdash; Agentic AI</div>
1064      <div class="lb-h">Your next court brief, <em>in half the time.</em></div>
1065      <div class="lb-p">AI agents that read regulations, map obligations, and execute compliance workflows with auditable traces.</
1065div>
1066    </div>
1067    <div class="lb-cta"><span class="btn btn-ai">Get started &rarr;</span></div>
1068  </a>
1069</div>
1070
1071<section class="section">
1072  <div class="wrap">
1073    <div class="sec-marker"><span class="sig">&sect; IV</span><h2>Lex-O-Pedia</h2><span class="ln"></span><a class="more" href="/category/lex-o-pedia/">Explore Lex-O-Pedia &rarr;</a></div>
1074    <div class="lexicon-grid lex-grid grid-4">
1075          <a class="lexicon lex-card reveal" href="/lex-o-pedia/court-commissioner-appointment-limitations/">
1076  <span class="mark" aria-hidden="true">&sect;</span>
1077  <div class="lx-top">
1078    <span class="lx-def">Def.</span>
1079    <span class="lx-field">Lex-O-Pedia</span>
1080  </div>
1081  <div class="lx-term">When Can a Court Commissioner Not Be Appointed for Collecting Evidence?</div>
1082  <div class="lx-body">When Can a Court Commissioner Not Be Appointed for Collecting Evidence under Civil Procedure law. A detailed analysis of the statutory framework, case law, and practical implications.</div>
1083  <div class="lx-foot">Read full entry <span class="ar">&rarr;</span></div>
1084</a>
1085          <a class="lexicon lex-card reveal" href="/lex-o-pedia/arms-act-definitions-india/">
1086  <span class="mark" aria-hidden="true">&sect;</span>
1087  <div class="lx-top">
1088    <span class="lx-def">Def.</span>
1089    <span class="lx-field">Lex-O-Pedia</span>
1090  </div>
1091  <div class="lx-term">How Does the Arms Act, 1959 Define Arms, Ammunition and Related Terms?</div>
1092  <div class="lx-body">How Does the Arms Act, 1959 Define Arms, Ammunition and Related Terms under Criminal Law law. A detailed analysis of the statutory framework, case law, and practical implications.</div>
1093  <div class="lx-foot">Read full entry <span class="ar">&rarr;</span></div>
1094</a>
1095          <a class="lexicon lex-card reveal" href="/lex-o-pedia/use-of-infrastructure-agreements-india/">
1096  <span class="mark" aria-hidden="true">&sect;</span>
1097  <div class="lx-top">
1098    <span class="lx-def">Def.</span>
1099    <span class="lx-field">Lex-O-Pedia</span>
1100  </div>
1101  <div class="lx-term">How Do Use of Infrastructure Agreements Differ From Leases Under Indian Law?</div>
1102  <div class="lx-body">How Do Use of Infrastructure Agreements Differ From Leases Under Indian Law under Property Law law. A detailed analysis of the statutory framework, case law, and practical implications.</div>
1103  <div class="lx-foot">Read full entry <span class="ar">&rarr;</span></div>
1104</a>
1105          <a class="lexicon lex-card reveal" href="/lex-o-pedia/sub-lease-deeds-indian-law/">
1106  <span class="mark" aria-hidden="true">&sect;</span>
1107  <div class="lx-top">
1108    <span class="lx-def">Def.</span>
1109    <span class="lx-field">Lex-O-Pedia</span>
1110  </div>
1111  <div class="lx-term">What Are the Legal Requirements for a Sub-Lease Deed in India?</div>
1112  <div class="lx-body">What Are the Legal Requirements for a Sub-Lease Deed in India under Property Law law. A detailed analysis of the statutory framework, case law, and practical implications.</div>
1113  <div class="lx-foot">Read full entry <span class="ar">&rarr;</span></div>
1114</a>
1115          <a class="lexicon lex-card reveal" href="/lex-o-pedia/lad-clause-contractor-abandonment-malaysia/">
1116  <span class="mark" aria-hidden="true">&sect;</span>
1117  <div class="lx-top">
1118    <span class="lx-def">Def.</span>
1119    <span class="lx-field">Lex-O-Pedia</span>
1120  </div>
1121  <div class="lx-term">What Happens to LAD Clauses When a Contractor Abandons a Project in Malaysia?</div>
1122  <div class="lx-body">What Happens to LAD Clauses When a Contractor Abandons a Project in Malaysia under Malaysian Law law. A detailed analysis of the statutory framework, case law, and practical implications.</div>
1123  <div class="lx-foot">Read full entry <span class="ar">&rarr;</span></div>
1124</a>
1125          <a class="lexicon lex-card reveal" href="/lex-o-pedia/fraud-criminal-law-china/">
1126  <span class="mark" aria-hidden="true">&sect;</span>
1127  <div class="lx-top">
1128    <span class="lx-def">Def.</span>
1129    <span class="lx-field">Lex-O-Pedia</span>
1130  </div>
1131  <div class="lx-term">How Is Fraud Prosecuted Under Chinese Criminal Law?</div>
1132  <div class="lx-body">How Is Fraud Prosecuted Under Chinese Criminal Law under Chinese Law law. A detailed analysis of the statutory framework, case law, and practical impl
1132ications.</div>
1133  <div class="lx-foot">Read full entry <span class="ar">&rarr;</span></div>
1134</a>
1135          <a class="lexicon lex-card reveal" href="/lex-o-pedia/sarjit-singh-rapati-sentencing-singapore/">
1136  <span class="mark" aria-hidden="true">&sect;</span>
1137  <div class="lx-top">
1138    <span class="lx-def">Def.</span>
1139    <span class="lx-field">Lex-O-Pedia</span>
1140  </div>
1141  <div class="lx-term">What Legal Principle Did Sarjit Singh Rapati v PP Establish in Singapore?</div>
1142  <div class="lx-body">What Legal Principle Did Sarjit Singh Rapati v PP Establish in Singapore under Singapore Law law. A detailed analysis of the statutory framework, case law, and practical implications.</div>
1143  <div class="lx-foot">Read full entry <span class="ar">&rarr;</span></div>
1144</a>
1145          <a class="lexicon lex-card reveal" href="/lex-o-pedia/negligence-standards-us-law/">
1146  <span class="mark" aria-hidden="true">&sect;</span>
1147  <div class="lx-top">
1148    <span class="lx-def">Def.</span>
1149    <span class="lx-field">Lex-O-Pedia</span>
1150  </div>
1151  <div class="lx-term">What Are the Standards of Negligence Under United States Law?</div>
1152  <div class="lx-body">What Are the Standards of Negligence Under United States Law under US Law law. A detailed analysis of the statutory framework, case law, and practical implications.</div>
1153  <div class="lx-foot">Read full entry <span class="ar">&rarr;</span></div>
1154</a>
1155    </div>
1156  </div>
1157</section>
1158
1159<div class="wrap">
1160  <div class="newsletter premium-newsletter">
1161  <div class="nl-in newsletter-container">
1162    <div class="nl-k">Digital Publication</div>
1163    <h2 class="nl-h newsletter-title">Stay ahead of the legal curve</h2>
1164    <p class="nl-p newsletter-desc">Get expert legal analysis, intense case studies, and exact regulatory updates delivered to your inbox.</p>
1165
1166    <form data-lw-subscribe="footer" class="nl-form newsletter-form-premium" id="newsletter-form" onsubmit="return false">
1167      <input data-members-email class="input-line" type="email" placeholder="[email protected]" aria-label="Email address" required>
1168      <button class="sub btn-subscribe" type="submit" id="form-newsletter-button" data-label="Subscribe">
1169        <span id="form-newsletter-text">Subscribe</span>
1170        <div id="form-newsletter-loader" style="display:none" class="circular-loader"></div>
1171      </button>
1172    </form>
1173    <div class="newsletter-form-message newsletter-form-success nl-ok" style="display:none">You're subscribed. Welcome email on its way.</div>
1174    <div class="newsletter-form-message newsletter-form-error nl-err" data-members-error style="display:none"></div>
1175    <div class="nl-note">By subscribing, you agree to our <a target="_blank" rel="noopener noreferrer" href="/privacy-policy/">Privacy Policy</a>.</div>
1176  </div>
1177</div>
1178
1179<script>
1180document.addEventListener('DOMContentLoaded', function () {
1181  var form = document.getElementById('newsletter-form');
1182  if (!form) return;
1183  form.addEventListener('submit', function () {
1184    var btn = document.getElementById('form-newsletter-button');
1185    var btnText = document.getElementById('form-newsletter-text');
1186    var btnLoader = document.getElementById('form-newsletter-loader');
1187    if (btn) btn.disabled = true;
1188    if (btnText) btnText.style.display = 'none';
1189    if (btnLoader) btnLoader.style.display = 'flex';
1190    // Safety: if /api/auth/subscribe doesn't respond in 15s, show success state.
1191    setTimeout(function () {
1192      if (!form.classList.contains('success') && !form.classList.contains('error')) {
1193        if (btnLoader) btnLoader.style.display = 'none';
1194        if (btnText) { btnText.textContent = 'Subscribed'; btnText.style.display = 'inline'; }
1195        var successEl = form.parentNode.querySelector('.newsletter-form-success');
1196        if (successEl) successEl.style.display = 'block';
1197        localStorage.setItem('newsLetterJoined', true);
1198      }
1199    }, 15000);
1200  });
1201  var observer = new MutationObserver(function () {
1202    var btn = document.getElementById('form-newsletter-button');
1203    var btnText = document.getElementById('form-newsletter-text');
1204    var btnLoader = document.getElementById('form-newsletter-loader');
1205    var successEl = form.parentNode.querySelector('.newsletter-form-success');
1206    var errorEl = form.parentNode.querySelector('.newsletter-form-error');
1207    if (form.classList.contains('success')) {
1208      if (btnLoader) btnLoader.style.display = 'none';
1209      if (btnText) { btnText.textContent = 'Subscribed'; btnText.style.display = 'inline'; }
1210      if (btn) btn.disabled = true;
1211      if (successEl) successEl.style.display = 'block';
1212      if (errorEl) errorEl.style.display = 'none';
1213      localStorage.setItem('newsLetterJoined', true);
1214    } else if (form.classList.contains('error')) {
1215      if (btnLoader) btnLoader.style.display = 'none';
1216      if (btnText) { btnText.textContent = 'Subscribe'; btnText.style.display = 'inline'; }
1217      if (btn) btn.disabled = false;
1218      if (errorEl) errorEl.style.display = 'block';
1219      if (successEl) successEl.style.display = 'none';
1220    }
1221  });
1222  observer.observe(form, { attributes: true, childList: true, subtree: true });
1223});
1224</script>
1224
1225</div>
1226
1227<div class="wrap">
1228  <div class="submit-cta">
1229    <div class="sc-tx"><h3>The Future of Legal Discourse</h3><p>Join the foremost minds in jurisprudence. Submit your analysis to Legal Wires.</p></div>
1230    <a class="btn btn-primary" href="/submit-article/">Submit an Article &rarr;</a>
1231  </div>
1232</div>
1233
1234        </main>
1235
1236        <div id="search-body" class="main-default-body hidden" role="search">
1237            <div style="display: flex; flex-direction:column;">
1238    <div id="filter-tag-list" class="filter-tag-list"></div>
1239    <div style="display: flex; flex-direction:column; gap:15px;" id="search-container"></div>
1240</div>        </div>
1241
1242    </div>
1243    <footer>
1244        <footer class="footer premium-footer">
1245  <div class="foot-rule" aria-hidden="true"></div>
1246
1247  <div class="wrap">
1248
1249    <div class="foot-cta">
1250      <div class="foot-cta-tx">
1251        <span class="kick">Editorial</span>
1252        <h3>Have a case worth reading? Or analysis worth publishing?</h3>
1253        <p>We work with practitioners, scholars and clerks across India, Singapore and the Gulf. Pitch a piece, share a tip, or write to the editor.</p>
1254      </div>
1255      <div class="foot-cta-row">
1256        <a class="btn btn-primary" href="/submit-article/">Submit an article &rarr;</a>
1257        <a class="btn btn-ghost" href="/cdn-cgi/l/email-protection#3e5f5a5357507e525b595f521349574c5b4d105d5153014d4b5c545b5d4a03725b595f521b0c0e69574c5b4d1b0c0e1b7b0c1b060e1b070a1b0c0e7b5a574a514c575f521b0c0e4e574a5d56185f534e055c515a470376571b0c0e725b595f521b0c0e69574c5b4d1b0c0e5b5a574a514c575f521b0c0e4a5b5f531b0c7d1b0e7f1b0e7f771b0c095a1b0c0e5257555b1b0c0e4a511b0c0e4e574a5d561b0c0e5f1b0c0e4e575b5d5b1b0c0e1b0c781b0c0e4d565f4c5b1b0c0e5f1b0c0e4a574e1b0c0e1b0c781b0c0e595b4a1b0c0e57501b0c0e4a514b5d561b0c0e5f5c514b4a1b0d7f1b0e7f1b0e7f1b0e7f1b0e7f1b7b0c1b060e1b070a1b0c0e1b0b7c47514b4c1b0c0e505f535b1b0b7a">Email the editor</a>
1258      </div>
1259    </div>
1260
1261    <div class="foot-top">
1262
1263      <div class="foot-brand">
1264        <div class="row"><style>
1265    .main-logo {
1266        display: flex;
1267        cursor: pointer;
1268        align-items: center;
1269        gap: 5px;
1270        width: fit-content;
1271    }
1272
1273    .main-logo-text {
1274        font-size: 32px;
1275        color: var(--accent-color);
1276        display: flex;
1277        align-items: center;
1278        font-family: var(--font-heading), 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
1279        font-weight: 700;
1280        letter-spacing: -0.02em;
1281    }
1282
1283    .main-logo-image {
1284        width: 40px;
1285    }
1286    /* Pro badge — shown only for Pro members (html.lw-pro set by pro-status.js) */
1287    .main-logo-pro {
1288        display: none;
1289        align-self: center;
1290        font-family: var(--font-body), 'Gill Sans', sans-serif;
1291        font-size: 9px;
1292        font-weight: 800;
1293        letter-spacing: 0.14em;
1294        text-transform: uppercase;
1295        color: #1a1409;
1296        background: linear-gradient(135deg, #C9A55C, var(--gold, #A8843C));
1297        padding: 2px 6px;
1298        border-radius: 5px;
1299        line-height: 1;
1300        margin-left: 3px;
1301        box-shadow: 0 1px 3px rgba(168, 132, 60, 0.4);
1302    }
1303    html.lw-pro .main-logo-pro { display: inline-flex; }
1304    @media screen and (max-width: 768px) {
1305        .main-logo-text {
1306            font-size: 16px;
1307        }
1308        .main-logo-image {
1309            width: 22px;
1310        }
1311        .main-logo {
1312            gap: 4px;
1313        }
1314        .main-logo-pro { font-size: 7px; padding: 1px 4px; letter-spacing: 0.1em; }
1315    }
1316
1317   
1318</style>
1319
1320<div class="main-logo">
1321    <svg class="main-logo-image" viewBox="0 0 44 34" fill="none" xmlns="http://www.w3.org/2000/svg"
1322        xmlns:xlink="http://www.w3.org/1999/xlink">
1323        <rect width="44" height="34" fill="url(#pattern0_569_787)" filter="url(#burgundy-matrix)" />
1324        <defs>
1325            <filter id="burgundy-matrix" color-interpolation-filters="sRGB">
1326                <feColorMatrix type="matrix" values="
1327                    0 0 0 0 0.545
1328                    0 0 0 0 0.082
1329                    0 0 0 0 0.220
1330                    0 0 0 1 0" />
1331            </filter>
1332            <pattern id="pattern0_569_787" patternContentUnits="objectBoundingBox" width="1" height="1">
1333                <use xlink:href="#image0_569_787" transform="matrix(0.00807109 0 0 0.0103559 0 -0.0041666)" />
1334            </pattern>
1335            <image id="image0_569_787" width="475" height="96"
1336                xlink:href="data:image/png;base64,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" />
1337        </defs>
1338    </svg>
1339    <div class="main-logo-text">
1340        Legal Wires
1341    </div>
1342    <span class="main-logo-pro" aria-label="Pro member">Pro</span>
1343</div></div>
1344        <p class="foot-tag">Legal Analysis. Regulatory Intelligence. Jurisprudence.</p>
1345        <p class="foot-blurb">An online media portal dedicated to public education and critical legal analysis of trending discourses of national and international importance.</p>
1346        <div class="foot-juris" aria-label="Jurisdictions covered">
1347          <span class="foot-juris-lbl">Coverage</span>
1348          <span class="j-pill">India</span>
1349          <span class="j-pill">Singapore</span>
1350          <span class="j-pill">UAE &amp; DIFC</span>
1351          <span class="j-pill">Regulators</span>
1352        </div>
1353      </div>
1354
1355      <div class="foot-col">
1356        <h4>Categories</h4>
1357        <a href="/category/buzz/">Buzz</a>
1358        <a href="/category/case-study/">Case Studies</a>
1359        <a href="/category/columns/">Columns</a>
1360        <a href="/category/lex-o-pedia/">Lex-O-Pedia</a>
1361        <a href="/category/glossary/">Glossary</a>
1362      </div>
1363
1364      <div class="foot-col">
1365        <h4>Resources</h4>
1366        <a href="/submit-article/">Submit Article</a>
1367        <a href="/campus-ambassador/">Campus Ambassador</a>
1368        <a href="https://app.litt.law/dashboard?utm_source=legalwires&amp;utm_medium=footer" target="_blank" rel="noopener">Explore LITT <span class="ext">&rarr;</span></a>
1369        <a href="/search/">Search archive</a>
1370      </div>
1371
1372      <div class="foot-col">
1373        <h4>Company</h4>
1374        <a href="/about-us/">About Us</a>
1375        <a href="/contact-us/">Contact Us</a>
1376        <a href="/privacy-policy/">Privacy Policy</a>
1377        <a href="/terms-and-conditions/">Terms &amp; Conditions</a>
1378      </div>
1379
1380      <div class="foot-col foot-col-connect">
1381        <h4>Connect</h4>
1382        <p class="foot-connect-sub">
1382A short weekly dispatch — only the rulings, regulator orders and reform drafts that move markets.</p>
1383        <form class="foot-nl" data-lw-subscribe="footer-mini" onsubmit="return false">
1384          <input data-members-email type="email" placeholder="[email protected]" aria-label="Email address" required />
1385          <button type="submit" data-label="Subscribe" aria-label="Subscribe">
1386            <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"/><polyline points="12 5 19 12 12 19"/></svg>
1387          </button>
1388        </form>
1389        <div class="foot-social" role="navigation" aria-label="Social">
1390          <a href="https://in.linkedin.com/showcase/legal-wires-publication/" target="_blank" rel="noopener noreferrer" aria-label="LinkedIn"><svg width="15" height="15" viewBox="0 0 24 24" fill="currentColor"><path d="M4.98 3.5A2.5 2.5 0 1 0 5 8.5a2.5 2.5 0 0 0-.02-5zM3 9h4v12H3zM10 9h3.8v1.7h.05c.53-1 1.83-2.05 3.77-2.05 4 0 4.74 2.6 4.74 6V21H18.5v-5.3c0-1.27-.02-2.9-1.77-2.9s-2.04 1.38-2.04 2.8V21H10z"/></svg></a>
1391          <a href="https://x.com/legalwires" target="_blank" rel="noopener noreferrer" aria-label="X"><svg width="14" height="14" viewBox="0 0 24 24" fill="currentColor"><path d="M18.9 2H22l-7.1 8.1L23 22h-6.6l-5.2-6.8L5.3 22H2.2l7.6-8.7L2 2h6.8l4.7 6.2zm-1.2 18h1.8L7.5 3.8H5.6z"/></svg></a>
1392          <a href="https://www.instagram.com/legalwires/" target="_blank" rel="noopener noreferrer" aria-label="Instagram"><svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="3" y="3" width="18" height="18" rx="5"/><circle cx="12" cy="12" r="4"/><circle cx="17.5" cy="6.5" r="1" fill="currentColor" stroke="none"/></svg></a>
1393          <a href="https://www.facebook.com/legalwires/" target="_blank" rel="noopener noreferrer" aria-label="Facebook"><svg width="15" height="15" viewBox="0 0 24 24" fill="currentColor"><path d="M22 12a10 10 0 1 0-11.6 9.9V14.9H7.9V12h2.5V9.8c0-2.5 1.5-3.9 3.8-3.9 1.1 0 2.2.2 2.2.2v2.5h-1.3c-1.2 0-1.6.8-1.6 1.6V12h2.7l-.4 2.9h-2.3V22A10 10 0 0 0 22 12z"/></svg></a>
1394          <a href="https://www.youtube.com/channel/UC-YJNyJ4WjoetWsA1f9BaHQ/featured" target="_blank" rel="noopener noreferrer" aria-label="YouTube"><svg width="15" height="15" viewBox="0 0 24 24" fill="currentColor"><path d="M23 12s0-3.4-.4-5a2.6 2.6 0 0 0-1.8-1.8C19.1 4.8 12 4.8 12 4.8s-7.1 0-8.8.4A2.6 2.6 0 0 0 1.4 7C1 8.6 1 12 1 12s0 3.4.4 5a2.6 2.6 0 0 0 1.8 1.8c1.7.4 8.8.4 8.8.4s7.1 0 8.8-.4A2.6 2.6 0 0 0 22.6 17c.4-1.6.4-5 .4-5zM9.8 15.3V8.7l5.7 3.3z"/></svg></a>
1395        </div>
1396      </div>
1397    </div>
1398
1399    <div class="foot-colophon" aria-hidden="true">
1400      <span class="seal">&sect;</span>
1401      <span class="cln-tx"><b>Legal Wires.</b> An editorially independent media house. Coverage spans India, Singapore, UAE &amp; DIFC. Founded 2018.</span>
1402    </div>
1403
1404    <div class="foot-bottom">
1405      <div class="cc">&copy;  Legal Wires. All rights reserved.</div>
1406      <nav class="foot-legal" aria-label="Legal">
1407        <a href="/privacy-policy/">Privacy</a>
1408        <span class="dot"></span>
1409        <a href="/terms-and-conditions/">Terms</a>
1410        <span class="dot"></span>
1411        <a href="/contact-us/">Contact</a>
1412        <span class="dot"></span>
1413        <a href="/sitemap.xml">Sitemap</a>
1414      </nav>
1415      <div class="foot-built">Built with care in IN <span class="heart" aria-hidden="true">&hearts;</span></div>
1416    </div>
1417  </div>
1418</footer>
1419    </footer>
1420    <div class="modal-scrim premium-modal-overlay" id="show-join-community" style="display:none" role="dialog" aria-modal="true" aria-labelledby="join-community-title" onclick="if(event.target === this) hideJoinCommunityPopUp()">
1421  <div class="modal premium-modal-container" style="max-width:460px;position:relative;text-align:center">
1422    <button class="modal-x premium-modal-close" type="button" aria-label="Close" onclick="hideJoinCommunityPopUp()">
1423      <svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2"><path d="M18 6 6 18M6 6l12 12"/></svg>
1424    </button>
1425
1426    <div class="popup-body">
1427      <div class="popup-brand"><style>
1428    .main-logo {
1429        display: flex;
1430        cursor: pointer;
1431        align-items: center;
1432        gap: 5px;
1433        width: fit-content;
1434    }
1435
1436    .main-logo-text {
1437        font-size: 32px;
1438        color: var(--accent-color);
1439        display: flex;
1440        align-items: center;
1441        font-family: var(--font-heading), 'Gill Sans', 'Gill Sans MT', C
1441alibri, 'Trebuchet MS', sans-serif;
1442        font-weight: 700;
1443        letter-spacing: -0.02em;
1444    }
1445
1446    .main-logo-image {
1447        width: 40px;
1448    }
1449    /* Pro badge — shown only for Pro members (html.lw-pro set by pro-status.js) */
1450    .main-logo-pro {
1451        display: none;
1452        align-self: center;
1453        font-family: var(--font-body), 'Gill Sans', sans-serif;
1454        font-size: 9px;
1455        font-weight: 800;
1456        letter-spacing: 0.14em;
1457        text-transform: uppercase;
1458        color: #1a1409;
1459        background: linear-gradient(135deg, #C9A55C, var(--gold, #A8843C));
1460        padding: 2px 6px;
1461        border-radius: 5px;
1462        line-height: 1;
1463        margin-left: 3px;
1464        box-shadow: 0 1px 3px rgba(168, 132, 60, 0.4);
1465    }
1466    html.lw-pro .main-logo-pro { display: inline-flex; }
1467    @media screen and (max-width: 768px) {
1468        .main-logo-text {
1469            font-size: 16px;
1470        }
1471        .main-logo-image {
1472            width: 22px;
1473        }
1474        .main-logo {
1475            gap: 4px;
1476        }
1477        .main-logo-pro { font-size: 7px; padding: 1px 4px; letter-spacing: 0.1em; }
1478    }
1479
1480   
1481</style>
1482
1483<div class="main-logo">
1484    <svg class="main-logo-image" viewBox="0 0 44 34" fill="none" xmlns="http://www.w3.org/2000/svg"
1485        xmlns:xlink="http://www.w3.org/1999/xlink">
1486        <rect width="44" height="34" fill="url(#pattern0_569_787)" filter="url(#burgundy-matrix)" />
1487        <defs>
1488            <filter id="burgundy-matrix" color-interpolation-filters="sRGB">
1489                <feColorMatrix type="matrix" values="
1490                    0 0 0 0 0.545
1491                    0 0 0 0 0.082
1492                    0 0 0 0 0.220
1493                    0 0 0 1 0" />
1494            </filter>
1495            <pattern id="pattern0_569_787" patternContentUnits="objectBoundingBox" width="1" height="1">
1496                <use xlink:href="#image0_569_787" transform="matrix(0.00807109 0 0 0.0103559 0 -0.0041666)" />
1497            </pattern>
1498            <image id="image0_569_787" width="475" height="96"
1499                xlink:href="data:image/png;base64,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" />
1500        </defs>
1501    </svg>
1502    <div class="main-logo-text">
1503        Legal Wires
1504    </div>
1505    <span class="main-logo-pro" aria-label="Pro member">Pro</span>
1506</div></div>
1507      <div class="popup-kick">Legal Wires</div>
1508      <h2 id="join-community-title" class="popup-title">Stay Updated</h2>
1509      <p class="popup-desc">A short weekly dispatch — only the rulings, regulator orders and reform drafts that move markets.</p>
1510
1511      <form data-lw-subscribe="popup" id="popup-subscribe-form" class="popup-form">
1512        <input data-members-name type="hidden" value="">
1513        <input data-members-email type="email" placeholder="[email protected]" aria-label="Your email address" required>
1514        <button type="submit" id="form-popup-button" class="btn btn-primary popup-sub">
1515          <span id="form-popup-text">Subscribe</span>
1516          <div id="form-popup-loader" style="display:none" class="circular-loader"></div>
1517        </button>
1518      </form>
1519
1520      <div class="popup-form-success" style="display:none">Subscribed! Check your inbox to confirm.</div>
1521      <div class="popup-form-error" data-members-error style="display:none"></div>
1522
1523      <p class="popup-fine">No spam. Unsubscribe anytime.</p>
1524    </div>
1525  </div>
1526</div>
vendor: 110 bytes, lines 1526-1528
1526
1527
1528<script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
1528<script>
1529document.addEventListener('DOMContentLoaded', function () {
1530  var modal = document.getElementById('show-join-community');
1531  if (!modal) return;
1532
1533  // Sync .active class with display style (for the new design's .open class).
1534  var styleObserver = new MutationObserver(function (mutations) {
1535    mutations.forEach(function (mutation) {
1536      if (mutation.attributeName === 'style') {
1537        if (modal.style.display !== 'none' && modal.style.display !== '') {
1538          modal.classList.add('active', 'open');
1539          document.body.style.overflow = 'hidden';
1540          document.documentElement.style.overflow = 'hidden';
1541        } else {
1542          modal.classList.remove('active', 'open');
1543          document.body.style.overflow = '';
1544          document.documentElement.style.overflow = '';
1545        }
1546      }
1547    });
1548  });
1549  styleObserver.observe(modal, { attributes: true });
1550
1551  var popupForm = document.getElementById('popup-subscribe-form');
1552  if (popupForm) {
1553    popupForm.addEventListener('submit', function () {
1554      var btn = document.getElementById('form-popup-button');
1555      var btnText = document.getElementById('form-popup-text');
1556      var btnLoader = document.getElementById('form-popup-loader');
1557      if (btn) btn.disabled = true;
1558      if (btnText) btnText.style.display = 'none';
1559      if (btnLoader) btnLoader.style.display = 'flex';
1560    });
1561    var formObserver = new MutationObserver(function () {
1562      var btn = document.getElementById('form-popup-button');
1563      var btnText = document.getElementById('form-popup-text');
1564      var btnLoader = document.getElementById('form-popup-loader');
1565      var successEl = popupForm.querySelector('.popup-form-success');
1566      var errorEl = popupForm.querySelector('.popup-form-error');
1567      if (popupForm.classList.contains('success')) {
1568        if (btnLoader) btnLoader.style.display = 'none';
1569        if (btnText) { btnText.textContent = 'Subscribed!'; btnText.style.display = 'inline'; }
1570        if (btn) btn.disabled = true;
1571        if (successEl) successEl.style.display = 'block';
1572        if (errorEl) errorEl.style.display = 'none';
1573        localStorage.setItem('newsLetterJoined', true);
1574        setTimeout(function () { if (typeof window.hideJoinCommunityPopUp === 'function') window.hideJoinCommunityPopUp(); }, 2000);
1575      } else if (popupForm.classList.contains('error')) {
1576        if (btnLoader) btnLoader.style.display = 'none';
1577        if (btnText) { btnText.textContent = 'Subscribe to Newsletter'; btnText.style.display = 'inline'; }
1578        if (btn) btn.disabled = false;
1579        if (errorEl) errorEl.style.display = 'block';
1580        if (successEl) successEl.style.display = 'none';
1581      }
1582    });
1583    formObserver.observe(popupForm, { attributes: true, childList: true, subtree: true });
1584  }
1585});
1586
1587window.hideJoinCommunityPopUp = function () {
1588  var modal = document.getElementById('show-join-community');
1589  if (modal) { modal.style.display = 'none'; modal.classList.remove('active', 'open'); document.body.style.overflow = ''; document.documentElement.style.overflow = ''; }
1590  // Release the single-modal-at-a-time lock
1591  document.body.classList.remove('lw-modal-open');
1592  localStorage.setItem('POPUP_DISMISSED_AT', Date.now().toString());
1593};
1594
1595document.addEventListener('keydown', function (e) {
1596  if (e.key !== 'Escape') return;
1597  var modal = document.getElementById('show-join-community');
1598  if (modal && modal.style.display !== 'none' && modal.style.display !== '') window.hideJoinCommunityPopUp();
1599});
1600</script>
1600
1601    <div class="lw-subw" id="lw-subw" data-open="false">
1602  <button class="lw-subfab" id="lw-subfab" type="button" aria-label="Subscribe to the newsletter" aria-expanded="false" aria-controls="lw-subcard">
1603    <svg class="lw-subfab-ic" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.9" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">
1604      <rect x="3" y="5" width="18" height="14" rx="2.5"/><path d="m3.5 7 8.5 6 8.5-6"/>
1605    </svg>
1606    <span class="lw-subfab-label">Subscribe</span>
1607  </button>
1608
1609  <div class="lw-subcard" id="lw-subcard" role="dialog" aria-label="Subscribe to Legal Wires">
1610    <button class="lw-subcard-x" type="button" aria-label="Close">
1611      <svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round"><path d="M18 6 6 18M6 6l12 12"/></svg>
1612    </button>
1613    <div class="lw-subcard-ic" aria-hidden="true">
1614      <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.9" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="5" width="18" height="14" rx="2.5"/><path d="m3.5 7 8.5 6 8.5-6"/></svg>
1615    </div>
1616    <h3 class="lw-subcard-h">Stay updated</h3>
1617    <p class="lw-subcard-p">One weekly dispatch, free. The rulings, regulator orders and reform drafts that move markets.</p>
1618    <form data-lw-subscribe="fab-card" class="lw-subcard-form" onsubmit="return false" novalidate>
1619      <input data-members-name type="hidden" value="">
1620      <input data-members-email type="email" class="lw-subcard-email" placeholder="[email protected]" aria-label="Your email address" autocomplete="email" required>
1621      <button type="submit" class="lw-subcard-btn">
1622        <span class="lw-subcard-btntext">Subscribe</span>
1623        <span class="lw-subcard-spin" hidden aria-hidden="true"></span>
1624      </button>
1625    </form>
1626    <span data-members-error class="lw-subcard-err" role="alert"></span>
1627    <div class="lw-subcard-ok" hidden>Subscribed. Check your inbox to confirm.</div>
1628    <p class="lw-subcard-fine">No spam. Unsubscribe anytime.</p>
1629  </div>
1630</div>
1631
1632<script>
1633(function () {
1634  var w = document.getElementById('lw-subw');
1635  if (!w) return;
1636  var fab = document.getElementById('lw-subfab');
1637  var card = document.getElementById('lw-subcard');
1638  function ls(k) { try { return localStorage.getItem(k); } catch (e) { return null; } }
1639
1640  if (ls('newsLetterJoined')) { w.remove(); return; }
1641  if (/\/(signin|signup|forgot-password|account|funnel)\//.test(location.pathname)) { w.remove(); return; }
1642
1643  setTimeout(function () { fab.classList.add('show'); }, 700);
1644
1645  function open() {
1646    w.setAttribute('data-open', 'true');
1647    fab.setAttribute('aria-expanded', 'true');
1648    setTimeout(function () { var e = card.querySelector('[data-members-email]'); if (e) e.focus(); }, 140);
1649  }
1650  function close() { w.setAttribute('data-open', 'false'); fab.setAttribute('aria-expanded', 'false'); }
1651
1652  fab.addEventListener('click', open);
1653  card.querySelector('.lw-subcard-x').addEventListener('click', close);
1654  // Click outside closes — but never discard a half-typed email.
1655  document.addEventListener('click', function (e) {
1656    if (w.getAttribute('data-open') !== 'true' || w.contains(e.target)) return;
1657    var em = card.querySelector('[data-members-email]');
1658    if (em && em.value.trim()) return;
1659    close();
1660  });
1661  document.addEventListener('keydown', function (e) {
1662    if (e.key === 'Escape' && w.getAttribute('data-open') === 'true') close();
1663  });
1664
1665  // Submit feedback (helper.js posts + toggles .success/.error on the form).
1666  var form = card.querySelector('form[data-lw-subscribe]');
1667  var btn = card.querySelector('.lw-subcard-btn');
1668  var btnText = card.querySelector('.lw-subcard-btntext');
1669  var spin = card.querySelector('.lw-subcard-spin');
1670  var okEl = card.querySelector('.lw-subcard-ok');
1671
1672  btn.addEventListener('click', function () {
1673    var email = (form.querySelector('[data-members-email]').value || '').trim();
1674    if (!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email)) return;
1675    btn.disabled = true; btnText.hidden = true; spin.hidden = false;
1676  });
1677  new MutationObserver(function () {
1678    if (form.classList.contains('success')) {
1679      form.style.display = 'none'; okEl.hidden = false;
1680      try { localStorage.setItem('newsLetterJoined', 'true'); } catch (e) {}
1681      setTimeout(function () { close(); setTimeout(function () { w.remove(); }, 340); }, 1900);
1682    } else if (form.classList.contains('error')) {
1683      btn.disabled = false; btnText.hidden = false; spin.hidden = true;
1684    }
1685  }).observe(form, { attributes: true, attributeFilter: ['class'] });
1686})();
1687</script>
1687
1688    <style>
1689.litt-banner {
1690  display: flex;
1691  align-items: center;
1692  gap: 26px;
1693  background: linear-gradient(120deg, var(--ink), #2a2118);
1694  border-radius: var(--r);
1695  padding: 30px 36px;
1696  color: var(--paper);
1697  position: relative;
1698  overflow: hidden;
1699  margin: 34px 0;
1700  text-decoration: none;
1701}
1702.litt-banner::before {
1703  content: "";
1704  position: absolute;
1705  inset: 0;
1706  background: radial-gradient(ellipse at 88% 30%, rgba(184, 146, 67, 0.32), transparent 52%);
1707  pointer-events: none;
1708}
1709.litt-banner:hover {
1710  color: var(--paper);
1711  text-decoration: none;
1712}
1713.litt-banner .lb-badge {
1714  position: relative;
1715  width: 54px;
1716  height: 54px;
1717  border-radius: 14px;
1718  background: var(--ai);
1719  display: flex;
1720  align-items: center;
1721  justify-content: center;
1722  flex-shrink: 0;
1723  box-shadow: 0 0 0 1px rgba(184, 146, 67, 0.5), 0 8px 24px -6px rgba(138, 106, 36, 0.6);
1724  color: #1a1409;
1725}
1726.litt-banner .lb-tx { position: relative; flex: 1; }
1727.litt-banner .lb-k {
1728  font-family: var(--mono);
1729  font-size: 10px;
1730  font-weight: 600;
1731  letter-spacing: 0.16em;
1732  text-transform: uppercase;
1733  color: var(--ai-bright);
1734}
1735.litt-banner .lb-h {
1736  font-family: var(--serif);
1737  font-weight: 600;
1738  font-size: 25px;
1739  line-height: 1.12;
1740  margin-top: 6px;
1741}
1742.litt-banner .lb-h em { font-style: italic; color: var(--ai-bright); }
1743.litt-banner .lb-p {
1744  font-family: var(--sans);
1745  font-size: 13.5px;
1746  color: rgba(247, 241, 230, 0.72);
1747  margin-top: 7px;
1748  max-width: 60ch;
1749  line-height: 1.5;
1750}
1751.litt-banner .lb-cta { position: relative; flex-shrink: 0; }
1752
1753/* Compact inline strip (used on category pages above the archive grid) */
1754.litt-strip {
1755  display: flex;
1756  align-items: center;
1757  justify-content: center;
1758  gap: 24px;
1759  padding: 22px 32px;
1760  margin: 40px 0;
1761  background: linear-gradient(135deg, var(--ink), #1a1018);
1762  border-radius: var(--r-sm);
1763  border: 1px solid rgba(168, 132, 60, 0.22);
1764  text-decoration: none;
1765  color: var(--paper);
1766  transition: border-color 0.3s, box-shadow 0.3s;
1767  cursor: pointer;
1768  flex-wrap: wrap;
1769}
1770.litt-strip:hover { border-color: rgba(168, 132, 60, 0.5); box-shadow: 0 6px 28px rgba(168, 132, 60, 0.14); color: var(--paper); }
1771.litt-strip-badge { display: inline-flex; align-items: center; gap: 8px; flex-shrink: 0; }
1772.litt-strip-badge img { width: 36px; height: 36px; border-radius: 7px; }
1773.litt-strip-badge-text { font-family: var(--mono); font-size: 10px; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: rgba(247, 241, 230, 0.7); }
1774.litt-strip-text { font-family: var(--serif); font-size: clamp(15px, 1.8vw, 18px); font-weight: 500; color: rgba(247, 241, 230, 0.9); letter-spacing: -0.005em; }
1775.litt-strip-text em { font-style: italic; color: var(--ai-bright); }
1776.litt-strip-cta {
1777  display: inline-flex;
1778  align-items: center;
1779  gap: 8px;
1780  font-family: var(--sans);
1781  font-size: 12px;
1782  font-weight: 700;
1783  text-transform: uppercase;
1784  letter-spacing: 0.12em;
1785  padding: 10px 22px;
1786  background: var(--ai-bright);
1787  color: var(--ai-ink-2);
1788  border-radius: var(--r-sm);
1789  white-space: nowrap;
1790  flex-shrink: 0;
1791  transition: background 0.18s ease, transform 0.15s ease;
1792}
1793.litt-strip:hover .litt-strip-cta { background: var(--ai); color: #fff; }
1794.litt-strip:hover .litt-strip-cta svg { transform: translateX(3px); }
1795.litt-strip-cta svg { transition: transform 0.3s; }
1796
1797@media (max-width: 920px) {
1798  .litt-banner { flex-direction: column; align-items: flex-start; gap: 16px; padding: 26px 24px; }
1799  .litt-banner .lb-cta { width: 100%; }
1800  .litt-banner .lb-cta .btn { width: 100%; justify-content: center; }
1801}
1802</style>
1803    <nav class="mobile-tabbar lw-mobile-bar" id="lw-mobile-bar" aria-label="Primary navigation">
1804
1805  <a href="/" class="mt-item" data-tab="home" aria-label="Home">
1806    <span class="mt-ic" aria-hidden="true">
1807      <svg class="ic-line" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M3.6 10.8 12 4l8.4 6.8M5 9.8V19a1.5 1.5 0 0 0 1.5 1.5h3.2v-5.2a1 1 0 0 1 1-1h2.6a1 1 0 0 1 1 1v5.2h3.2A1.5 1.5 0 0 0 19 19V9.8"/></svg>
1808      <svg class="ic-fill" viewBox="0 0 24 24" fill="currentColor"><path d="M11.3 3.3a1 1 0 0 1 1.4 0l8.6 7a1 1 0 0 1 .35.78V19a2 2 0 0 1-2 2h-4v-5.4a1 1 0 0 0-1-1h-3.3a1 1 0 0 0-1 1V21h-4a2 2 0 0 1-2-2v-7.92a1 1 0 0 1 .35-.78z"/></svg>
1809    </span>
1810    <span class="mt-lbl">Home</span>
1811  </a>
1812
1813  <a href="/category/columns/" class="mt-item" data-tab="categories" aria-label="Categories">
1814    <span class="mt-ic" aria-hidden="true">
1815      <svg class="ic-line" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><rect x="3.5" y="3.5" width="7" height="7" rx="1.8"/><rect x="13.5" y="3.5" width="7" height="7" rx="1.8"/><rect x="3.5" y="13.5" width="7" height="7" rx="1.8"/><rect x="13.5" y="13.5" width="7" height="7" rx="1.8"/></svg>
1816      <svg class="ic-fill" viewBox="0 0 24 24" fill="currentColor"><rect x="3.2" y="3.2" width="7.6" height="7.6" rx="2"/><rect x="13.2" y="3.2" width="7.6" height="7.6" rx="2"/><rect x="3.2" y="13.2" width="7.6" height="7.6" rx="2"/><rect x="13.2" y="13.2" width="7.6" height="7.6" rx="2"/></svg>
1817    </span>
1818    <span class="mt-lbl">Categories</span>
1819  </a>
1820
1821  <a href="/search/" class="mt-item mt-search" data-tab="search" aria-label="Search">
1822    <span class="mt-ic" aria-hidden="true">
1823      <svg class="ic-line" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="10.5" cy="10.5" r="6.5"/><path d="m20 20-4.7-4.7"/></svg>
1824      <svg class="ic-fill" viewBox="0 0 24 24" fill="currentColor"><path d="M10.5 3a7.5 7.5 0 0 1 5.81 12.27l4.21 4.21a1 1 0 0 1-1.4 1.4l-4.22-4.2A7.5 7.5 0 1 1 10.5 3zm0 2a5.5 5.5 0 1 0 0 11 5.5 5.5 0 0 0 0-11z"/></svg>
1825    </span>
1826    <span class="mt-lbl">Search</span>
1827  </a>
1828
1829  <a href="https://wa.me/916395618369?text=Hi%20Legal%20Wires%2C%20I%20have%20a%20question%20about%20your%20legal%20coverage."
1830     target="_blank" rel="noopener"
1831     class="mt-item mt-wa" data-tab="wa" aria-label="Chat on WhatsApp">
1832    <span class="mt-ic" aria-hidden="true">
1833      <svg class="ic-line" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M21 11.5a8.5 8.5 0 0 1-12.6 7.5L3 21l2-5.4A8.5 8.5 0 1 1 21 11.5z"/></svg>
1834      <svg class="ic-fill" viewBox="0 0 24 24" fill="currentColor"><path d="M20.5 3.5A11.7 11.7 0 0 0 12 .1C5.5.1.2 5.3.2 11.7c0 2 .5 4 1.6 5.8L0 24l6.7-1.7a11.6 11.6 0 0 0 5.3 1.3h.1c6.5 0 11.7-5.2 
183411.7-11.7 0-3.1-1.2-6-3.3-8.2zm-3 14.5c-.3-.1-1.7-.9-2-1-.3-.1-.5-.2-.7.2-.2.3-.8 1-.9 1.2-.2.2-.3.2-.6.1a8 8 0 0 1-4-3.5c-.3-.5.3-.5.8-1.5.1-.2 0-.4 0-.5l-1-2.3c-.2-.6-.5-.5-.7-.5h-.6c-.2 0-.6.1-.9.4-.3.3-1.1 1.1-1.1 2.8s1.2 3.2 1.3 3.5c.1.2 2.3 3.5 5.6 4.9 2 .8 2.7.9 3.7.8.6-.1 1.7-.7 2-1.4.2-.7.2-1.3.2-1.4-.1-.1-.3-.2-.6-.3z"/></svg>
1835    </span>
1836    <span class="mt-lbl">WhatsApp</span>
1837  </a>
1838</nav>
1839
1840<script>
1841(function () {
1842  document.addEventListener('DOMContentLoaded', function () {
1843    var bar = document.getElementById('lw-mobile-bar');
1844    if (!bar) return;
1845
1846    // Active-tab highlighting from current URL
1847    var path = location.pathname;
1848    var tab = 'home';
1849    if (path === '/' || path === '') tab = 'home';
1850    else if (path.indexOf('/category/') === 0 || path.indexOf('/tag/') === 0) tab = 'categories';
1851    else if (path.indexOf('/search') === 0) tab = 'search';
1852    bar.querySelectorAll('.mt-item').forEach(function (a) {
1853      a.classList.toggle('cur', a.getAttribute('data-tab') === tab);
1854    });
1855
1856    // Scroll-direction hide (slide off-screen when scrolling DOWN past 120px)
1857    var lastY = window.scrollY, ticking = false;
1858    function update() {
1859      var y = window.scrollY;
1860      var goingDown = y > lastY && y > 120;
1861      bar.classList.toggle('hidden', goingDown);
1862      lastY = y;
1863      ticking = false;
1864    }
1865    window.addEventListener('scroll', function () {
1866      if (!ticking) { requestAnimationFrame(update); ticking = true; }
1867    }, { passive: true });
1868  });
1869})();
1870</script>
1870
1871    <a class="wa-fab floating-whatsapp-btn" id="litt-fab"
1872   href="https://wa.me/916395618369?text=Hi%20Legal%20Wires%2C%20I%20have%20a%20question%20about%20your%20legal%20coverage."
1873   target="_blank" rel="noopener" aria-label="Chat on WhatsApp">
1874  <svg width="22" height="22" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true">
1875    <path d="M20.5 3.5A11.7 11.7 0 0 0 12 .1C5.5.1.2 5.3.2 11.7c0 2 .5 4 1.6 5.8L0 24l6.7-1.7a11.6 11.6 0 0 0 5.3 1.3h.1c6.5 0 11.7-5.2 11.7-11.7 0-3.1-1.2-6-3.3-8.2zM12.1 21.5h-.1a9.7 9.7 0 0 1-5-1.3l-.4-.2-3.6.9.9-3.5-.3-.4a9.7 9.7 0 0 1-1.5-5.2c0-5.3 4.4-9.7 9.7-9.7 2.6 0 5 1 6.9 2.8a9.7 9.7 0 0 1 2.8 6.9c0 5.3-4.3 9.7-9.4 9.7zm5.4-7.3c-.3-.1-1.7-.9-2-1-.3-.1-.5-.2-.7.2-.2.3-.8 1-.9 1.2-.2.2-.3.2-.6.1a8 8 0 0 1-4-3.5c-.3-.5.3-.5.8-1.5.1-.2 0-.4 0-.5l-1-2.3c-.2-.6-.5-.5-.7-.5h-.6c-.2 0-.6.1-.9.4-.3.3-1.1 1.1-1.1 2.8s1.2 3.2 1.3 3.5c.1.2 2.3 3.5 5.6 4.9 2 .8 2.7.9 3.7.8.6-.1 1.7-.7 2-1.4.2-.7.2-1.3.2-1.4-.1-.1-.3-.2-.6-.3z"/>
1876  </svg>
1877</a>
1878    
1879<style>
1880#lw-ad {
1881  position: fixed !important;
1882  inset: 0 !important;
1883  z-index: 130 !important;
1884  background: rgba(26,20,16,0.62) !important;
1885  display: none !important;
1886  align-items: center !important;
1887  justify-content: center !important;
1888  padding: 24px 18px !important;
1889  overflow-y: auto !important;
1890  -webkit-overflow-scrolling: touch !important;
1891}
1892#lw-ad.open { display: flex !important; }
1893#lw-ad .lw-ad-modal {
1894  width: 100% !important;
1895  max-width: 580px !important;
1896  max-height: calc(100vh - 48px) !important;
1897  min-height: 320px !important;
1898  background: #FCF8F0 !important;
1899  border: 1px solid #E5DBC6 !important;
1900  border-radius: 20px !important;
1901  box-shadow: 0 40px 90px -34px rgba(26,20,16,0.5) !important;
1902  display: grid !important;
1903  grid-template-rows: auto 1fr auto !important;
1904  overflow: hidden !important;
1905  opacity: 1 !important;
1906  visibility: visible !important;
1907  transform: none !important;
1908  animation: none !important;
1909}
1910#lw-ad .lw-ad-head {
1911  display: flex !important;
1912  align-items: center !important;
1913  gap: 12px !important;
1914  padding: 18px 22px !important;
1915  border-bottom: 1px solid #E5DBC6 !important;
1916  background: #F8F3E5 !important;
1917  opacity: 1 !important;
1918  visibility: visible !important;
1919}
1920#lw-ad .lw-ad-body {
1921  padding: 20px 22px 22px !important;
1922  overflow-y: auto !important;
1923  -webkit-overflow-scrolling: touch !important;
1924  min-height: 200px !important;
1925  opacity: 1 !important;
1926  visibility: visible !important;
1927  background: #FCF8F0 !important;
1928}
1929#lw-ad .lw-ad-foot {
1930  display: flex !important;
1931  align-items: center !important;
1932  gap: 14px !important;
1933  padding: 16px 22px !important;
1934  border-top: 1px solid #E5DBC6 !important;
1935  background: #FCF8F0 !important;
1936  flex-wrap: wrap !important;
1937  opacity: 1 !important;
1938  visibility: visible !important;
1939}
1940#lw-ad .lw-ad-fallback {
1941  display: flex !important;
1942  flex-direction: column !important;
1943  align-items: flex-start !important;
1944  gap: 12px !important;
1945  padding: 18px !important;
1946  background: linear-gradient(160deg,#F8F3E5,#FCF8F0) !important;
1947  border: 1px solid #E5DBC6 !important;
1948  border-radius: 10px !important;
1949  margin-bottom: 12px !important;
1950  opacity: 1 !important;
1951  visibility: visible !important;
1952}
1953#lw-ad .lw-ad-fallback.hidden { display: none !important; }
1954#lw-ad .lw-ad-slot { display: none !important; }
1955#lw-ad .lw-ad-slot.filled { display: block !important; }
1956@media (max-width: 560px) {
1957  #lw-ad .lw-ad-modal { min-height: 280px !important; max-height: calc(100vh - 24px) !important; }
1958  #lw-ad .lw-ad-foot { flex-direction: column !important; align-items: stretch !important; }
1959}
1960</style>
1961
1962<div class="lw-ad" id="lw-ad" aria-hidden="true">
1963  <div class="lw-ad-modal" role="dialog" aria-modal="true" aria-label="Sponsored message">
1964
1965    <div class="lw-ad-head">
1966      <span class="lw-ad-brand">
1967        <span class="lw-ad-crest" aria-hidden="true"></span>
1968        Legal Wires
1969      </span>
1970      <span class="lw-ad-spon">Sponsored</span>
1971      <button class="lw-ad-x" id="lw-ad-x" aria-label="Close" type="button">
1972        <svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2"><path d="M18 6 6 18M6 6l12 12"/></svg>
1973      </button>
1974    </div>
1975
1976    <div class="lw-ad-body">
1977      <div class="lw-ad-fallback" id="lw-ad-fallback">
1978        <div class="lw-ad-fb-brand">LITT AI <span>· Agentic</span></div>
1979        <h3>Agentic legal research, cited answers in seconds.</h3>
1980        <p>Not a chatbot. Not a search engine. Agentic AI for lawyers across India, Singapore and the Gulf &mdash; auditable traces across statutes, judgments and regulator orders.</p>
1981        <a class="lw-ad-fb-cta" href="https://app.litt.law/dashboard?utm_source=legal-wires&amp;utm_medium=adgate&amp;utm_campaign=fallback" target="_blank" rel="noopener">Start free &rarr;</a>
1982      </div>
1983
1984      <div class="lw-ad-slot lw-ad-slot-1" id="lw-ad-slot-1">
1985        <ins class="adsbygoogle"
1986             style="display:block"
1987             data-ad-client="ca-pub-6881629173589012"
1988             data-ad-slot="5150027156"
1989             data-ad-format="auto"
1990             data-full-width-responsive="true"></ins>
1991      </div>
1992
1993      <div class="lw-ad-slot lw-ad-slot-2" id="lw-ad-slot-2">
1994        <ins class="adsbygoogle"
1995             style="display:block"
1996             data-ad-client="ca-pub-6881629173589012"
1997             data-ad-slot="5028406524"
1998             data-ad-format="auto"
1999             data-full-width-responsive="true"></ins>
2000      </div>
2001
2002      <div class="lw-ad-note">
2003        <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M12 2 4 5v6c0 5 3.5 8 8 9 4.5-1 8-4 8-9V5z"/></svg>
2004        Ads keep Legal Wires free to read. We never sell your data.
2005      </div>
2006    </div>
2007
2008    <div class="lw-ad-foot">
2009      <span class="lw-ad-litt lw-ad-getpro">
2010        Prefer no ads? <a class="lw-ad-litt-link" href="/plans/">Get Pro &mdash; remove ads &rarr;</a>
2011      </span>
2012      <button class="lw-ad-cont" id="lw-ad-cont" disabled type="button">
2013        <span class="lw-ad-cont-lbl" id="lw-ad-cont-lbl">Continue in</span>
2014        <span class="lw-ad-cont-count" id="lw-ad-cont-count">5</span>
2015        <span class="lw-ad-cont-arr">
2016          <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2"><path d="M5 12h14M13 6l6 6-6 6"/></svg>
2017        </span>
2018      </button>
2019    </div>
2020  </div>
2021</div>
2022
2023<script>
2024(function () {
2025  // ── Gating / frequency ─────────────────────────────────────────
2026  //  · Skip on auth / account / funnel pages (clean UX required).
2027  //  · Show ONCE per session (sessionStorage) — user is not harassed
2028  //    on every article they read. Publisher still gets one impression
2029  //    per browsing session, which is standard interstitial economics.
2030  //  · Cooldown of 30 min in localStorage as a backup so even fresh
2031  //    sessions don't fire more than once per half-hour.
2032  //  · Page-level dedup flag guards against double-mount.
2033  var path = window.location.pathname;
2034  if (/\/(signin|signup|forgot-password|account|funnel)\//.test(path)) return;
2035  if (window.__lwAdInitialized) return;
2036  window.__lwAdInitialized = true;
2037
2038  // Debug hook — ?lw-debug-ad=1 forces immediate open + bypasses cooldown
2039  var DEBUG = /[?&]lw-debug-ad=1(&|$)/.test(location.search);
2040  if (!DEBUG) {
2041    try {
2042      // Session-scoped dedup: shown once per browsing session
2043      if (sessionStorage.getItem('lw_ad_shown_v3') === '1') return;
2044      // Time-based cooldown as belt+suspenders
2045      var lastShown = parseInt(localStorage.getItem('lw_ad_shown_at_v3') || '0', 10);
2046      var COOLDOWN_MS = 30 * 60 * 1000; // 30 min
2047      if (lastShown && (Date.now() - lastShown) < COOLDOWN_MS) return;
2048    } catch (e) { /* storage disabled — proceed with page-view fallback */ }
2049  }
2050
2051  // NOTE: adsbygoogle.push() is NOT called here. The modal is display:none
2052  // at initial load, so <ins> slots have zero measurable width. AdSense's
2053  // SDK measures at push() time — push before layout = permanently unfilled.
2054  // We push AFTER the modal is visible + one frame has painted.
2055
2056  function init() {
2057    var modal     = document.getElementById('lw-ad');
2058    var closeBtn  = document.getElementById('lw-ad-x');
2059    var contBtn   = document.getElementById('lw-ad-cont');
2060    var contLbl   = document.getElementById('lw-ad-cont-lbl');
2061    var contCount = document.getElementById('lw-ad-cont-count');
2062    var slot1     = document.getElementById('lw-ad-slot-1');
2063    var slot2     = document.getElementById('lw-ad-slot-2');
2064    var fallback  = document.getElementById('lw-ad-fallback');
2065    if (!modal || !contBtn) return;
2066
2067    var COUNTDOWN     = 5;
2068    var INITIAL_DELAY = DEBUG ? 100 : 5000;
2069    var AUTO_DISMISS  = 35000;
2070
2071    var tick = null, dismissTimer = null, auditTimer = null;
2072    var n = COUNTDOWN;
2073
2074    function ins(el) { return el ? el.querySelector('ins.adsbygoogle') : null; }
2075
2076    // Strict fill detection: iframe present AND has non-trivial height.
2077    // AdSense sets data-ad-status="filled" when a paid ad renders and
2078    // "unfilled" when it doesn't. We trust that above all else.
2079    function isFilled(insEl) {
2080      if (!insEl) return false;
2081      var status = insEl.getAttribute('data-ad-status');
2082      if (status === 'filled')   return true;
2083      if (status === 'unfilled') return false;
2084      // Fallback: real fill has an iframe child of meaningful height
2085      var iframe = insEl.querySelector('iframe');
2086      if (!iframe) return false;
2087      return iframe.offsetHeight > 40;
2088    }
2089
2090    var pushed = false;
2091    function pushAdSense() {
2092      if (pushed) return;
2093      pushed = true;
2094      // Wait for TWO paint frames so grid layout is fully settled + slots
2095      // have measurable width before AdSense measures them.
2096      requestAnimationFrame(function () {
2097        requestAnimationFrame(function () {
2098          try { (window.adsbygoogle = window.adsbygoogle || []).push({}); } catch (e) { if (DEBUG) console.warn('[lw-ad] push1', e); }
2099          try { (window.adsbygoogle = window.adsbygoogle || []).push({}); } catch (e) { if (DEBUG) console.warn('[lw-ad] push2', e); }
2100          if (DEBUG) console.log('[lw-ad] AdSense pushed');
2101        });
2102      });
2103    }
2104
2105    // Runs every 500ms after open, up to 12s. Reveals slots that confirm
2106    // fill. Hides fallback once ANY slot fills. Idempotent, so re-runs
2107    // are safe (AdSense sometimes fills late — 8-10s on slower networks).
2108    function auditFill(elapsed) {
2109      var f1 = isFilled(ins(slot1));
2110      var f2 = isFilled(ins(slot2));
2111      if (f1) slot1.classList.add('filled');
2112      if (f2) slot2.classList.add('filled');
2113      if ((f1 || f2) && fallback) fallback.classList.add('hidden');
2114      if (DEBUG) {
2115        console.log('[lw-ad] audit @' + elapsed + 'ms', {
2116          slot1: {
2117            status: ins(slot1) && ins(slot1).getAttribute('data-ad-status'),
2118            filled: f1,
2119            iframe: !!(ins(slot1) && ins(slot1).querySelector('iframe')),
2120            iframeH: ins(slot1) && ins(slot1).querySelector('iframe') && ins(slot1).querySelector('iframe').offsetHeight,
2121          },
2122          slot2: {
2123            status: ins(slot2) && ins(slot2).getAttribute('data-ad-status'),
2124            filled: f2,
2125            iframe: !!(ins(slot2) && ins(slot2).querySelector('iframe')),
2126            iframeH: ins(slot2) && ins(slot2).querySelector('iframe') && ins(slot2).querySelector('iframe').offsetHeight,
2127          },
2128          fallbackHidden: fallback && fallback.classList.contains('hidden'),
2129        });
2130      }
2131    }
2132
2133    function forceStyles(el, decls) {
2134      // Set each property with setProperty(name, value, 'important').
2135      // More reliable than cssText across browsers for !important handling.
2136      if (!el) return;
2137      Object.keys(decls).forEach(function (k) {
2138        el.style.setProperty(k, decls[k], 'important');
2139      });
2140    }
2141    function reparentToBody(el) {
2142      // If any ancestor has transform / filter / perspective / will-change,
2143      // it creates a new stacking context that clips our position:fixed
2144      // modal. Moving the element to be a direct child of <body> escapes
2145      // any such trapped stacking context.
2146      if (!el) return;
2147      if (el.parentElement !== document.body) {
2148        document.body.appendChild(el);
2149      }
2150    }
2151
2152    function open() {
2153      // ── PRO READS AD-FREE ──────────────────────────────────────
2154      // Ad-free reading is a paid Pro benefit (/plans/), and that has to
2155      // cover the interstitial too, not just the in-content units — an
2156      // interstitial is the most intrusive ad we serve. Checked here rather
2157      // than at script top because entitlement resolves async via
2158      // /api/pro/me; by open() the INITIAL_DELAY (5s) has long outlasted a
2159      // typical ~300ms resolve, and pro-status.js publishes window.lwPro.
2160      // Unresolved -> we do NOT suppress, matching in-content-ads.js: if
2161      // /api/pro/me is down the member has lost every Pro affordance anyway.
2162      if (window.lwPro && window.lwPro.active) return;
2163
2164      // ── SINGLE-MODAL-AT-A-TIME CONTRACT ────────────────────────
2165      if (document.body.classList.contains('lw-modal-open')) {
2166        setTimeout(open, 3000);
2167        return;
2168      }
2169      // Stamp session + cooldown NOW so any re-entry is blocked immediately.
2170      try {
2171        sessionStorage.setItem('lw_ad_shown_v3', '1');
2172        localStorage.setItem('lw_ad_shown_at_v3', String(Date.now()));
2173      } catch (e) {}
2174
2175      document.body.classList.add('lw-modal-open');
2176      // Escape any trapped stacking context by hoisting modal to body root.
2177      reparentToBody(modal);
2178
2179      modal.classList.add('open');
2180      modal.setAttribute('aria-hidden', 'false');
2181      document.documentElement.style.overflow = 'hidden';
2182
2183      // ── FORCE STYLES via setProperty (highest reliability) ────
2184      forceStyles(modal, {
2185        'position': 'fixed', 'top': '0', 'left': '0', 'right': '0', 'bottom': '0',
2186        'width': '100vw', 'height': '100vh',
2187        'z-index': '2147483647',                // MAX int32 — beats everything
2188        'background': 'rgba(26,20,16,0.62)',
2189        'display': 'flex', 'align-items': 'center', 'justify-content': 'center',
2190        'padding': '24px 18px', 'overflow-y': 'auto', 'margin': '0',
2191        'opacity': '1', 'visibility': 'visible', 'transform': 'none',
2192        'animation': 'none', 'filter': 'none', 'pointer-events': 'auto'
2193      });
2194      var modalCard = modal.querySelector('.lw-ad-modal');
2195      forceStyles(modalCard, {
2196        'width': '100%', 'max-width': '580px',
2197        'max-height': 'calc(100vh - 48px)', 'min-height': '320px',
2198        'background': '#FCF8F0', 'border': '1px solid #E5DBC6',
2199        'border-radius': '20px',
2200        'box-shadow': '0 40px 90px -34px rgba(26,20,16,0.5)',
2201        'display': 'grid', 'grid-template-rows': 'auto 1fr auto',
2202        'overflow': 'hidden', 'opacity': '1', 'visibility': 'visible',
2203        'transform': 'none', 'animation': 'none', 'filter': 'none',
2204        'position': 'relative', 'margin': '0',
2205        'pointer-events': 'auto'
2206      });
2207      forceStyles(fallback, {
2208        'display': 'flex', 'flex-direction': 'column',
2209        'align-items': 'flex-start', 'gap': '12px', 'padding': '18px',
2210        'background': 'linear-gradient(160deg,#F8F3E5,#FCF8F0)',
2211        'border': '1px solid #E5DBC6', 'border-radius': '10px',
2212        'margin-bottom': '12px',
2213        'opacity': '1', 'visibility': 'visible'
2214      });
2215
2216      // Reset fill state on every open (in case a stale run left classes)
2217      slot1.classList.remove('filled');
2218      slot2.classList.remove('filled');
2219      if (fallback) fallback.classList.remove('hidden');
2220
2221      pushAdSense();
2222
2223      // Audit at multiple checkpoints — AdSense timing varies with network
2224      clearInterval(auditTimer);
2225      var elapsed = 0;
2226      auditTimer = setInterval(function () {
2227        elapsed += 500;
2228        auditFill(elapsed);
2229        if (elapsed >= 12000) clearInterval(auditTimer);
2230      }, 500);
2231      // Also run once at 200ms (in case ad returns instantly)
2232      setTimeout(function () { auditFill(200); }, 200);
2233
2234      // 5s Continue countdown
2235      n = COUNTDOWN;
2236      contCount.textContent = n;
2237      contBtn.setAttribute('disabled', '');
2238      contBtn.classList.remove('ready');
2239      contLbl.textContent = 'Continue in';
2240      contCount.style.display = '';
2241      clearInterval(tick);
2242      tick = setInterval(function () {
2243        n--;
2244        if (n <= 0) {
2245          clearInterval(tick);
2246          contBtn.removeAttribute('disabled');
2247          contBtn.classList.add('ready');
2248          contLbl.textContent = 'Continue reading';
2249          contCount.style.display = 'none';
2250        } else {
2251          contCount.textContent = n;
2252        }
2253      }, 1000);
2254
2255      // Auto-dismiss after 35s of no interaction
2256      clearTimeout(dismissTimer);
2257      dismissTimer = setTimeout(function () {
2258        if (modal.classList.contains('open')) close();
2259      }, AUTO_DISMISS);
2260
2261      if (DEBUG) console.log('[lw-ad] opened');
2262    }
2263
2264    function close() {
2265      clearInterval(tick);
2266      clearInterval(auditTimer);
2267      clearTimeout(dismissTimer);
2268      // Clear the inline forced-visibility styles so the modal actually hides
2269      modal.style.cssText = '';
2270      var modalCard = modal.querySelector('.lw-ad-modal');
2271      if (modalCard) modalCard.style.cssText = '';
2272      if (fallback) fallback.style.cssText = '';
2273      modal.classList.remove('open');
2274      modal.setAttribute('aria-hidden', 'true');
2275      document.documentElement.style.overflow = '';
2276      // Release the single-modal lock so other systems can open
2277      document.body.classList.remove('lw-modal-open');
2278    }
2279
2280    closeBtn.addEventListener('click', close);
2281    contBtn.addEventListener('click', function () { if (!contBtn.hasAttribute('disabled')) close(); });
2282    modal.addEventListener('click', function (e) { if (e.target === modal) close(); });
2283    document.addEventListener('keydown', function (e) { if (e.key === 'Escape' && modal.classList.contains('open')) close(); });
2284
2285    // Auto-open on every page view (or immediately in debug mode)
2286    setTimeout(open, INITIAL_DELAY);
2287
2288    // Programmatic opener (call window.lwAdGate() from anywhere)
2289    window.lwAdGate = function () { open(); };
2290  }
2291
2292  if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', init);
2293  else init();
2294})();
2295</script>
2295
2296    <div class="modal-scrim" id="notifications" aria-hidden="true">
2297  <div class="modal notif-modal" role="dialog" aria-modal="true" aria-label="Notifications">
2298    <div class="notif-head">
2299      <div class="notif-title">
2300        <span class="notif-icon"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9"/><path d="M13.73 21a2 2 0 0 1-3.46 0"/></svg></span>
2301        <span class="t">Notifications</span>
2302      </div>
2303      <div class="notif-tabs">
2304        <button class="notif-tab cur" data-notif-tab="inbox" type="button">Inbox</button>
2305        <button class="notif-tab" data-notif-tab="prefs" type="button">Preferences</button>
2306      </div>
2307      <button class="modal-x" aria-label="Close" type="button">
2308        <svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2"><path d="M18 6 6 18M6 6l12 12"/></svg>
2309      </button>
2310    </div>
2311
2312    <div class="notif-pane cur" data-notif-pane="inbox">
2313      <div class="notif-list">
2314          <a class="notif-item" href="/lex-o-pedia/court-commissioner-appointment-limitations/">
2315            <span class="ni-dot"></span>
2316            <div class="ni-tx">
2317              <div class="ni-cat">Lex-O-Pedia</div>
2318              <div class="ni-h">When Can a Court Commissioner Not Be Appointed for Collecting Evidence?</div>
2319              <div class="ni-meta">Sep 15 &middot; Sushant Shukla &middot; 11 min read</div>
2320            </div>
2321            <span class="ni-arr"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="9 18 15 12 9 6"/></svg></span>
2322          </a>
2323          <a class="notif-item" href="/lex-o-pedia/arms-act-definitions-india/">
2324            <span class="ni-dot"></span>
2325            <div class="ni-tx">
2326              <div class="ni-cat">Lex-O-Pedia</div>
2327              <div class="ni-h">How Does the Arms Act, 1959 Define Arms, Ammunition and Related Terms?</div>
2328              <div class="ni-meta">Sep 14 &middot; Sushant Shukla &middot; 12 min read</div>
2329            </div>
2330            <span class="ni-arr"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="9 18 15 12 9 6"/></svg></span>
2331          </a>
2332          <a class="notif-item" href="/lex-o-pedia/use-of-infrastructure-agreements-india/">
2333            <span class="ni-dot"></span>
2334            <div class="ni-tx">
2335              <div class="ni-cat">Lex-O-Pedia</div>
2336              <div class="ni-h">How Do Use of Infrastructure Agreements Differ From Leases Under Indian Law?</div>
2337              <div class="ni-meta">Sep 14 &middot; Sushant Shukla &middot; 22 min read</div>
2338            </div>
2339            <span class="ni-arr"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="9 18 15 12 9 6"/></svg></span>
2340          </a>
2341          <a class="notif-item" href="/lex-o-pedia/sub-lease-deeds-indian-law/">
2342            <span class="ni-dot"></span>
2343            <div class="ni-tx">
2344              <div class="ni-cat">Lex-O-Pedia</div>
2345              <div class="ni-h">What Are the Legal Requirements for a Sub-Lease Deed in India?</div>
2346              <div class="ni-meta">Sep 13 &middot; Sushant Shukla &middot; 27 min read</div>
2347            </div>
2348            <span class="ni-arr"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="9 18 15 12 9 6"/></svg></span>
2349          </a>
2350          <a class="notif-item" href="/lex-o-pedia/lad-clause-contractor-abandonment-malaysia/">
2351            <span class="ni-dot"></span>
2352            <div class="ni-tx">
2353              <div class="ni-cat">Lex-O-Pedia</div>
2354              <div class="ni-h">What Happens to LAD Clauses When a Contractor Abandons a Project in Malaysia?</div>
2355              <div class="ni-meta">Sep 13 &middot; Sushant Shukla &middot; 11 min read</div>
2356            </div>
2357            <span class="ni-arr"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="9 18 15 12 9 6"/></svg></span>
2358          </a>
2359          <a class="notif-item" href="/lex-o-pedia/fraud-criminal-law-china/">
2360            <span class="ni-dot"></span>
2361            <div class="ni-tx">
2362              <div class="ni-cat">Lex-O-Pedia</div>
2363              <div class="ni-h">How Is Fraud Prosecuted Under Chinese Criminal Law?</div>
2364              <div class="ni-meta">Sep 12 &middot; Sushant Shukla &middot; 12 min read</div>
2365            </div>
2366            <span class="ni-arr"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="9 18 15 12 9 6"/></svg></span>
2367          </a>
2368      </div>
2369      <div class="notif-foot">
2370        <a class="notif-all" href="/">View all updates &rarr;</a>
2371      </div>
2372    </div>
2373
2374    <div class="notif-pane" data-notif-pane="prefs">
2375      <div class="notif-section">
2376        <div class="ns-h">Categories you follow</div>
2377        <div class="ns-sub">Choose which sections email you when a new piece is published.</div>
2378        <div class="ns-grid">
2379          <label class="ns-toggle"><input type="checkbox" data-notif-cat="buzz" checked><span class="ns-sw"></span><span class="ns-lbl"><b>Buzz</b><span>Fast dispatches</span></span></label>
2380          <label class="ns-toggle"><input type="checkbox" data-notif-cat="case-study" checked><span class="ns-sw"></span><span class="ns-lbl"><b>Case Studies</b><span>Landmark holdings</span></span></label>
2381          <label class="ns-toggle"><input type="checkbox" data-notif-cat="columns" checked><span class="ns-sw"></span><span class="ns-lbl"><b>Columns</b><span>Long-form analysis</span></span></label>
2382          <label class="ns-toggle"><input type="checkbox" data-notif-cat="lex-o-pedia"><span class="ns-sw"></span><span class="ns-lbl"><b>Lex-O-Pedia</b><span>Doctrine explainers</span></span></label>
2383          <label class="ns-toggle"><input type="checkbox" data-notif-cat="glossary"><span class="ns-sw"></span><span class="ns-lbl"><b>Glossary</b><span>Term definitions</span></span></label>
2384        </div>
2385      </div>
2386
2387      <div class="notif-section">
2388        <div class="ns-h">Email cadence</div>
2389        <div class="ns-radios">
2390          <label><input type="radio" name="notif-cadence" value="instant"><span>Instant</span></label>
2391          <label><input type="radio" name="notif-cadence" value="daily" checked><span>Daily digest</span></label>
2392          <label><input type="radio" name="notif-cadence" value="weekly"><span>Weekly</span></label>
2393          <label><input type="radio" name="notif-cadence" value="off"><span>Off</span></label>
2394        </div>
2395      </div>
2396
2397      <div class="notif-section">
2398        <div class="ns-h">Browser push</div>
2399        <div class="ns-sub">Get breaking-news pings even when this tab is closed.</div>
2400        <button class="btn btn-ghost notif-push" id="notif-enable-push" type="button">Enable browser push</button>
2401      </div>
2402
2403      <div class="notif-actions">
2404        <button class="btn btn-ghost" type="button" data-notif-close>Cancel</button>
2405        <button class="btn btn-primary" type="button" id="notif-save">Save preferences</button>
2406      </div>
2407    </div>
2408  </div>
2409</div>
2410
2411<script>
2412(function () {
2413  document.addEventListener('DOMContentLoaded', function () {
2414    var scrim = document.getElementById('notifications');
2415    if (!scrim) return;
2416    var bell = document.getElementById('notification-bell');
2417    var dot  = document.getElementById('notification-bell-dot');
2418
2419    function open() { scrim.classList.add('open'); scrim.setAttribute('aria-hidden', 'false'); if (dot) dot.style.display = 'none'; }
2420    function close() { scrim.classList.remove('open'); scrim.setAttribute('aria-hidden', 'true'); }
2421
2422    if (bell) bell.addEventListener('click', function (e) { e.preventDefault(); open(); });
2423    scrim.addEventListener('click', function (e) { if (e.target === scrim) close(); });
2424    scrim.querySelectorAll('.modal-x, [data-notif-close]').forEach(function (b) { b.addEventListener('click', close); });
2425    document.addEventListener('keydown', function (e) { if (e.key === 'Escape' && scrim.classList.contains('open')) close(); });
2426
2427    // Tab switching
2428    scrim.querySelectorAll('[data-notif-tab]').forEach(function (t) {
2429      t.addEventListener('click', function () {
2430        var key = t.getAttribute('data-notif-tab');
2431        scrim.querySelectorAll('[data-notif-tab]').forEach(function (x) { x.classList.toggle('cur', x === t); });
2432        scrim.querySelectorAll('[data-notif-pane]').forEach(function (p) { p.classList.toggle('cur', p.getAttribute('data-notif-pane') === key); });
2433      });
2434    });
2435
2436    // Restore preferences
2437    try {
2438      var prefs = JSON.parse(localStorage.getItem('lw_notif_prefs') || '{}');
2439      if (prefs.cats) {
2440        scrim.querySelectorAll('[data-notif-cat]').forEach(function (ch) {
2441          ch.checked = prefs.cats.indexOf(ch.getAttribute('data-notif-cat')) !== -1;
2442        });
2443      }
2444      if (prefs.cadence) {
2445        var r = scrim.querySelector('input[name="notif-cadence"][value="' + prefs.cadence + '"]');
2446        if (r) r.checked = true;
2447      }
2448    } catch (e) {}
2449
2450    // Save
2451    var saveBtn = document.getElementById('notif-save');
2452    if (saveBtn) saveBtn.addEventListener('click', function () {
2453      var cats = Array.prototype.map.call(scrim.querySelectorAll('[data-notif-cat]:checked'), function (ch) { return ch.getAttribute('data-notif-cat'); });
2454      var cadenceEl = scrim.querySelector('input[name="notif-cadence"]:checked');
2455      var cadence = cadenceEl ? cadenceEl.value : 'daily';
2456      try { localStorage.setItem('lw_notif_prefs', JSON.stringify({ cats: cats, cadence: cadence, ts: Date.now() })); } catch (e) {}
2457      saveBtn.textContent = 'Saved ✓';
2458      setTimeout(function () { saveBtn.textContent = 'Save preferences'; close(); }, 900);
2459    });
2460
2461    // Push notifications — delegate to existing push handler if loaded
2462    var pushBtn = document.getElementById('notif-enable-push');
2463    if (pushBtn) pushBtn.addEventListener('click', function () {
2464      if (window.lwEnablePush) {
2465        window.lwEnablePush();
2466      } else if ('Notification' in window) {
2467        Notification.requestPermission().then(function (p) {
2468          pushBtn.textContent = p === 'granted' ? 'Push enabled ✓' : 'Push blocked';
2469          pushBtn.disabled = p === 'granted';
2470        });
2471      } else {
2472        pushBtn.textContent = 'Not supported in this browser';
2473        pushBtn.disabled = true;
2474      }
2475    });
2476  });
2477})();
2478</script>
2478
2479    
2480    
2481    <button class="lw-totop" id="lw-totop" aria-label="Back to top" type="button">
2482      <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><polyline points="18 15 12 9 6 15"/></svg>
2483    </button>
2484    
2484<script defer src="/assets/js/scripts.js?v=64687aacf4?v=113.0"></script>
2484
2485    
2485<script defer src="/assets/js/pro-status.js?v=64687aacf4?v=1.6"></script>
2485
2486    
2487    
2487<script defer src="/assets/js/motion.js?v=64687aacf4?v=91.0"></script>
2487
2488    
2488<script defer src="/assets/js/article-questions.js?v=64687aacf4?v=106.0"></script>
2488
2489    
2490    
2490<script defer src="/assets/js/avatars.js?v=64687aacf4?v=100.0"></script>
2490
2491    
2491<script defer src="/assets/js/bm25-search.js?v=64687aacf4?v=35.0"></script>
2491
2492    
2492<script defer src="/assets/js/search.js?v=64687aacf4?v=50.0"></script>
2492
2493    
2493<script defer src="/assets/js/bot.js?v=64687aacf4?v=35.0"></script>
2493
2494    
2494<script defer src="/assets/js/ad.js?v=64687aacf4?v=35.0"></script>
2494
2495    
2495<script defer src="/assets/js/postCard.js?v=64687aacf4?v=35.0"></script>
2495
2496    
2496<script defer src="/assets/js/helper.js?v=64687aacf4?v=35.0"></script>
2496
2497    
2497<script defer src="/assets/js/submit-article.js?v=64687aacf4?v=70.0"></script>
2497
2498    
2498<script defer src="/assets/js/read-mode.js?v=64687aacf4?v=52.0"></script>
2498
2499    
2499<script defer src="/assets/js/push-notifications.js?v=64687aacf4?v=4.0"></script>
2499
2500    
2500<script defer src="/assets/js/notification-preferences.js?v=64687aacf4?v=1.0"></script>
2500
2501
2502    
2502<script defer src="https://cdn.jsdelivr.net/npm/dayjs@1/dayjs.min.js"></script>
2502
2503    
2503<script defer src="https://cdn.jsdelivr.net/npm/dayjs@1/plugin/relativeTime.js"></script>
2503
2504    
2504<script>document.addEventListener('DOMContentLoaded', function() { if (window.dayjs_plugin_relativeTime) dayjs.extend(dayjs_plugin_relativeTime); });</script>
2504
2505
2506    <div id="premium-subscribe-modal" class="premium-modal-overlay" onclick="if(event.target === this) window.closePremiumModal()">
2507    <div class="premium-modal-container">
2508        <button class="premium-modal-close" onclick="window.closePremiumModal()">
2509            <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>
2510        </button>
2511        <div class="premium-modal-image">
2512           <div style="width:100%; height:100%; background: var(--accent-color); opacity: 0.1;"></div>
2513        </div>
2514        <div class="premium-modal-content">
2515            <h2 class="premium-modal-title" style="margin-bottom: 24px;">Legal Wires</h2>
2516            
2517            <h2 class="premium-modal-title">Legal Wires</h2>
2518            <p class="premium-modal-desc">Stay ahead of the legal curve. Get expert analysis and regulatory updates natively delivered to your inbox.</p>
2519            
2520            <form data-lw-subscribe="premium-modal" class="premium-form">
2521                <div class="premium-input-group">
2522                    <input data-members-name type="text" class="premium-input" placeholder="Jamie Larson" required>
2523                </div>
2524                <div class="premium-input-group">
2525                    <input data-members-email type="email" class="premium-input" placeholder="[email protected]" required>
2526                </div>
2527                <label class="premium-checkbox-wrapper">
2528                    <input type="checkbox" required class="premium-checkbox">
2529                    <span>By signing up, I agree to receive emails from Legal Wires Publication</span>
2530                </label>
2531                <div style="margin-top: 32px;"></div>
2532                <button type="submit" class="premium-btn" style="width: 100%;">
2533                    <span class="button-text">Sign up</span>
2534                    <span class="button-loader" style="display: none;">Processing...</span>
2535                </button>
2536                <div class="message-success">
2537                    <strong>Success!</strong> Please check your inbox and click the link to confirm your subscription.
2538                </div>
2539                <div class="message-error" data-members-error>
2540                    <!-- Error message injected by Ghost -->
2541                </div>
2542            </form>
2543            
2544            <div class="premium-modal-footer">
2545                Already a member? <a href="/signin/" onclick="window.closePremiumModal()">Sign in</a>
2546            </div>
2547        </div>
2548    </div>
2549</div>
2550
2551<script>
2552    window.openPremiumModal = function(e) {
2553        if(e) e.preventDefault();
2554        document.getElementById('premium-subscribe-modal').classList.add('active');
2555        document.body.style.overflow = 'hidden';
2556    }
2557
2558    window.closePremiumModal = function() {
2559        document.getElementById('premium-subscribe-modal').classList.remove('active');
2560        document.body.style.overflow = '';
2561        // Clear hash if we opened it via hash change
2562        if (window.location.hash === '#/portal' || window.location.hash === '#/portal/signup') {
2563            history.pushState("", document.title, window.location.pathname + window.location.search);
2564        }
2565    }
2566
2567    // Intercept default portal triggers
2568    // BUT never intercept magic link tokens — let Ghost Portal handle auth
2569    function hashHasToken() {
2570        return window.location.hash.includes('token=') || window.location.hash.includes('action=signin');
2571    }
2572
2573    // Detect successful magic link auth from URL params and redirect
2574    (function() {
2575        var params = new URLSearchParams(window.location.search);
2576        if (params.get('action') === 'signin' && params.get('success') === 'true') {
2577            // Auth succeeded — redirect away from signin/signup pages
2578            if (window.location.pathname.includes('/signin') || window.location.pathname.includes('/signup')) {
2579                window.location.href = '/';
2580                return;
2581            }
2582        }
2583    })();
2584
2585    // After magic link auth, monitor token processing and redirect
2586    // This runs outside DOMContentLoaded so it's not blocked by the early return
2587    if (hashHasToken()) {
2588        var authCheckInterval = setInterval(function() {
2589            if (!window.location.hash.includes('token=')) {
2590                clearInterval(authCheckInterval);
2591                setTimeout(function() {
2592                    if (window.location.pathname.includes('/signin') || window.location.pathname.includes('/signup')) {
2593                        window.location.href = '/';
2594                    } else {
2595                        window.location.reload();
2596                    }
2597                }, 500);
2598            }
2599        }, 300);
2600        setTimeout(function() { clearInterval(authCheckInterval); }, 15000);
2601    }
2602
2603    document.addEventListener('DOMContentLoaded', () => {
2604        // If the page loaded with a magic link token, do NOT intercept — let Portal handle it
2605        if (hashHasToken()) {
2606            console.log('[LW] Magic link token detected, letting Ghost Portal handle auth');
2607            return; // Exit early — don't intercept anything
2608        }
2609
2610        const interceptPortal = () => {
2611            const portalLinks = document.querySelectorAll('a[href="#/portal"], a[href="#/portal/signup"], [data-portal="signup"], [data-portal=""]');
2612            portalLinks.forEach(link => {
2613                // Don't intercept signin portal links (needed for magic link flow)
2614                if (link.getAttribute('data-portal') === 'signin' || (link.href && link.href.includes('signin'))) return;
2615                link.removeAttribute('data-portal');
2616                link.addEventListener('click', (e) => {
2617                    e.preventDefault();
2618                    window.openPremiumModal();
2619                });
2620            });
2621        };
2622
2623        interceptPortal();
2624
2625        // Sometimes ghost re-injects or handles hash on load
2626        if ((window.location.hash === '#/portal' || window.location.hash === '#/portal/signup') && !hashHasToken()) {
2627            window.openPremiumModal();
2628        }
2629
2630        // Listen for Ghost injected portals just in case
2631        window.addEventListener('hashchange', () => {
2632            if (hashHasToken()) return; // Don't intercept magic link tokens
2633            if (window.location.hash === '#/portal' || window.location.hash === '#/portal/signup') {
2634                window.openPremiumModal();
2635            }
2636        });
2637
2638        // Premium modal form state handling
2639        const premiumForm = document.querySelector('#premium-subscribe-modal form[data-members-form]');
2640        if (premiumForm) {
2641            premiumForm.addEventListener('submit', function() {
2642                const btn = premiumForm.querySelector('.premium-btn');
2643                const btnText = premiumForm.querySelector('.button-text');
2644                const btnLoader = premiumForm.querySelector('.button-loader');
2645                if (btn) btn.disabled = true;
2646                if (btnText) btnText.style.display = 'none';
2647                if (btnLoader) btnLoader.style.display = 'inline';
2648            });
2649
2650            // Watch for Ghost injecting success/error classes
2651            const formObserver = new MutationObserver(() => {
2652                const btn = premiumForm.querySelector('.premium-btn');
2653                const btnText = premiumForm.querySelector('.button-text');
2654                const btnLoader = premiumForm.querySelector('.button-loader');
2655                const successEl = premiumForm.querySelector('.message-success');
2656                const errorEl = premiumForm.querySelector('.message-error');
2657
2658                if (premiumForm.classList.contains('success')) {
2659                    if (btnLoader) btnLoader.style.display = 'none';
2660                    if (btnText) { btnText.textContent = 'Subscribed!'; btnText.style.display = 'inline'; }
2661                    if (btn) btn.disabled = true;
2662                    if (successEl) successEl.style.display = 'block';
2663                    localStorage.setItem("newsLetterJoined", true);
2664                } else if (premiumForm.classList.contains('error')) {
2665                    if (btnLoader) btnLoader.style.display = 'none';
2666                    if (btnText) { btnText.textContent = 'Sign up'; btnText.style.display = 'inline'; }
2667                    if (btn) btn.disabled = false;
2668                    if (errorEl) errorEl.style.display = 'block';
2669                }
2670            });
2671            formObserver.observe(premiumForm, { attributes: true, childList: true, subtree: true });
2672        }
2673
2674        // Escape key closes any open modal
2675        document.addEventListener('keydown', (e) => {
2676            if (e.key === 'Escape') {
2677                const premiumModal = document.getElementById('premium-subscribe-modal');
2678                if (premiumModal && premiumModal.classList.contains('active')) {
2679                    window.closePremiumModal();
2680                    return;
2681                }
2682                const communityModal = document.getElementById('show-join-community');
2683                if (communityModal && communityModal.style.display !== 'none') {
2684                    if (typeof window.hideJoinCommunityPopUp === 'function') {
2685                        window.hideJoinCommunityPopUp();
2686                    }
2687                }
2688            }
2689        });
2690    });
2691</script>
2691
2692    
2693
2694<script>(function(){function c(){var b=a.contentDocument||(a.contentWindow&&a.contentWindow.document);if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'a4450d2d6f3f4202',t:'MTc5MDk1ODIwNQ=='};var a=document.createElement('script');a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script>
2694<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"51ebb3ea9efb487fa69f2845a5a710db","r":1,"spa":2}' crossorigin="anonymous"></script>
2694
2695</body>
2696
2697</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.