/*
 * Jus-Tice new look v3.
 * Additive visual layer for the owner-controlled new-look switch.
 */

body.jt-look-v3 {
	--l3-bg: #f7f6f2;
	--l3-paper: #fffefa;
	--l3-card: #ffffff;
	--l3-ink: #192b32;
	--l3-muted: #526064;
	--l3-navy: #07182d;
	--l3-navy-2: #102b4b;
	--l3-blue: #174f8f;
	--l3-line: rgba(19, 32, 51, 0.13);
	--l3-accent: #315a4c;
	--l3-accent-2: #cdd8ce;
	--l3-cyan: #67e8f9;
	--l3-radius: 8px;
	--l3-shadow: 0 18px 48px rgba(25, 43, 50, 0.08);
	--l3-serif: "Frank Ruhl Libre", "Noto Serif Hebrew", "Heebo", serif;
	--l3-sans: "Heebo", "Assistant", Arial, sans-serif;
	margin: 0;
	background: var(--l3-bg);
	color: var(--l3-ink);
	font-family: var(--l3-sans);
}

body.jt-look-v3 .site-main {
	background:
		radial-gradient(circle at 8% 8%, rgba(199, 80, 43, 0.08), transparent 28rem),
		linear-gradient(180deg, #fffaf2 0%, #f6f3ed 48%, #ffffff 100%);
}

body.jt-look-v3 a { color: inherit; text-decoration: none; }
body.jt-look-v3 img { max-width: 100%; height: auto; }

body.jt-look-v3 h1,
body.jt-look-v3 h2,
body.jt-look-v3 h3 {
	font-family: var(--l3-serif);
	letter-spacing: 0;
	text-wrap: pretty;
}

body.jt-look-v3 .l3-num { font-variant-numeric: tabular-nums; }

body.jt-look-v3 .l3-kicker {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	margin-bottom: 0.85rem;
	color: var(--l3-accent);
	font-size: 0.86rem;
	font-weight: 800;
	letter-spacing: 0.01em;
}

body.jt-look-v3 .l3-kicker::before {
	content: "";
	width: 0.55rem;
	height: 0.55rem;
	border-radius: 999px;
	background: currentColor;
	box-shadow: 0 0 0 5px rgba(199, 80, 43, 0.12);
}

body.jt-look-v3 .l3-kicker--light { color: var(--l3-cyan); }

body.jt-look-v3 .l3-h2 {
	margin: 0;
	color: var(--l3-ink);
	font-size: clamp(2rem, 3.1vw, 3.45rem);
	line-height: 1.05;
	font-weight: 800;
}

body.jt-look-v3 .l3-h2--small { font-size: clamp(1.55rem, 2.3vw, 2.45rem); }
body.jt-look-v3 .l3-h2--light { color: #fff; }

body.jt-look-v3 .l3-btn,
body.jt-look-v3 button.l3-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0.7rem 1.35rem;
	border-radius: 999px;
	border: 1px solid transparent;
	background: var(--l3-accent);
	color: #fff;
	font-weight: 800;
	cursor: pointer;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

body.jt-look-v3 .l3-btn:hover {
	transform: translateY(-1px);
	box-shadow: 0 12px 28px rgba(199, 80, 43, 0.24);
}

body.jt-look-v3 .l3-btn--outline-light {
	border-color: rgba(255, 255, 255, 0.28);
	background: rgba(255, 255, 255, 0.08);
}

body.jt-look-v3 .l3-btn--lead { width: 100%; }

body.jt-look-v3 .l3-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: rgba(7, 24, 45, 0.96);
	color: #fff;
	backdrop-filter: blur(18px);
	border-bottom: 1px solid rgba(255, 255, 255, 0.09);
}

body.jt-look-v3 .l3-header__main {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 1.4rem;
	max-width: 1240px;
	margin: 0 auto;
	padding: 0.7rem 1.25rem;
}

body.jt-look-v3 .l3-brand {
	display: inline-flex;
	align-items: center;
	gap: 0.65rem;
	font-size: 1.2rem;
	font-weight: 900;
	letter-spacing: 0.03em;
}

body.jt-look-v3 .l3-brand img {
	width: 32px;
	height: 32px;
	border-radius: 10px;
}

body.jt-look-v3 .l3-nav .menu {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1.05rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.jt-look-v3 .l3-nav a,
body.jt-look-v3 .l3-nav__mega-trigger {
	color: rgba(255, 255, 255, 0.82);
	background: transparent;
	border: 0;
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}

body.jt-look-v3 .l3-nav a:hover,
body.jt-look-v3 .l3-nav__mega-trigger:hover,
body.jt-look-v3 .l3-topics a:hover,
body.jt-look-v3 .l3-topics button:hover { color: #fff; }

body.jt-look-v3 .l3-nav__mega-fallback,
body.jt-look-v3 .l3-nav__phone { display: none; }

body.jt-look-v3 .l3-header__actions {
	display: inline-flex;
	align-items: center;
	gap: 0.65rem;
}

body.jt-look-v3 .l3-header__phone,
body.jt-look-v3 .l3-header__whatsapp,
body.jt-look-v3 .l3-header__toggle {
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.14);
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
	padding: 0.55rem 0.85rem;
	font-weight: 800;
}

body.jt-look-v3 .l3-header__whatsapp {
	background: #128c7e;
	border-color: transparent;
}

body.jt-look-v3 .l3-header__toggle { display: none; }

body.jt-look-v3 .l3-topics {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 1.25rem 0.65rem;
	overflow-x: auto;
	white-space: nowrap;
	scrollbar-width: thin;
}

body.jt-look-v3 .l3-topics a,
body.jt-look-v3 .l3-topics button {
	display: inline-flex;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.06);
	color: rgba(255, 255, 255, 0.8);
	padding: 0.42rem 0.82rem;
	font-size: 0.88rem;
	font-weight: 700;
}

body.jt-look-v3 .l3-topics__triage {
	color: #fff;
	background: rgba(199, 80, 43, 0.2);
}

body.jt-look-v3 .l3-mega[hidden] { display: none; }

body.jt-look-v3 .l3-mega {
	position: absolute;
	inset-inline: 1.25rem;
	top: calc(100% + 0.5rem);
	max-width: 1180px;
	margin: 0 auto;
	padding: 1.2rem;
	border-radius: 22px;
	background: #fff;
	color: var(--l3-ink);
	box-shadow: var(--l3-shadow);
	border: 1px solid var(--l3-line);
}

body.jt-look-v3 .l3-mega__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1rem;
}

body.jt-look-v3 .l3-mega a {
	display: block;
	padding: 0.35rem 0;
	color: var(--l3-muted);
}

body.jt-look-v3 .l3-mega strong,
body.jt-look-v3 .l3-mega__title { color: var(--l3-ink); }

body.jt-look-v3 .l3-hero {
	position: relative;
	overflow: hidden;
	background: var(--l3-bg);
	color: var(--l3-ink);
	border-bottom: 1px solid var(--l3-line);
}

body.jt-look-v3 .l3-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.06fr) minmax(320px, 0.74fr);
	gap: clamp(1.5rem, 4vw, 4rem);
	align-items: center;
	max-width: 1240px;
	margin: 0 auto;
	padding: clamp(3.4rem, 7vw, 6.8rem) 1.25rem;
}

body.jt-look-v3 .l3-hero__title {
	max-width: 20ch;
	margin: 0;
	color: var(--l3-ink);
	font-size: clamp(2.5rem, 4.7vw, 4.2rem);
	line-height: 1.12;
	font-weight: 700;
}

body.jt-look-v3 .l3-hero__lead {
	max-width: 58ch;
	margin: 1.25rem 0 0;
	color: var(--l3-muted);
	font-size: clamp(1.03rem, 1.45vw, 1.25rem);
	line-height: 1.75;
}

body.jt-look-v3 .l3-search {
	display: grid;
	grid-template-columns: 1fr 1fr auto;
	gap: 0.7rem;
	max-width: 760px;
	margin-top: 1.75rem;
	padding: 0.45rem;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.16);
}

body.jt-look-v3 .l3-search select,
body.jt-look-v3 .l3-search button,
body.jt-look-v3 .l3-field input,
body.jt-look-v3 .l3-field select,
body.jt-look-v3 .l3-field textarea {
	width: 100%;
	min-height: 52px;
	border: 1px solid var(--l3-line);
	border-radius: 14px;
	background: #fff;
	color: var(--l3-ink);
	padding: 0.72rem 0.95rem;
	font: inherit;
}

body.jt-look-v3 .l3-search button {
	min-width: 150px;
	border-color: transparent;
	background: var(--l3-accent);
	color: #fff;
	font-weight: 900;
	cursor: pointer;
}

body.jt-look-v3 .l3-hero__proof {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	margin-top: 1.15rem;
	color: var(--l3-muted);
}

body.jt-look-v3 .l3-hero__proof span,
body.jt-look-v3 .l3-hero__triage {
	display: inline-flex;
	align-items: center;
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.15);
	background: rgba(255, 255, 255, 0.07);
	padding: 0.5rem 0.78rem;
}

body.jt-look-v3 .l3-hero__proof strong {
	color: var(--l3-ink);
	margin-inline-end: 0.3rem;
}

body.jt-look-v3 .l3-hero__triage {
	margin-top: 1rem;
	color: #24463f;
	font-weight: 800;
	background: #e9eee7;
}

body.jt-look-v3 .l3-hero__aside {
	color: var(--l3-ink);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.95), rgba(255, 250, 242, 0.92));
	border: 1px solid rgba(19, 32, 51, 0.12);
	border-radius: 30px;
	padding: clamp(1.1rem, 2.3vw, 1.8rem);
	box-shadow: var(--l3-shadow);
}

body.jt-look-v3 .l3-hero__aside-title {
	display: block;
	font-family: var(--l3-serif);
	font-size: clamp(1.35rem, 2.2vw, 2.1rem);
	line-height: 1.15;
	margin-bottom: 1rem;
}

body.jt-look-v3 .l3-situations { display: grid; gap: 0.65rem; }

body.jt-look-v3 .l3-situation {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.85rem 1rem;
	border-radius: 16px;
	background: #fff;
	border: 1px solid var(--l3-line);
}

body.jt-look-v3 .l3-situation:hover {
	border-color: rgba(199, 80, 43, 0.42);
	box-shadow: 0 12px 26px rgba(19, 32, 51, 0.08);
}

body.jt-look-v3 .l3-situation__label {
	color: var(--l3-accent);
	font-size: 0.9rem;
	font-weight: 800;
}

body.jt-look-v3 .l3-section { padding: clamp(3.2rem, 6vw, 5.2rem) 1.25rem; }
body.jt-look-v3 .l3-section--paper { background: var(--l3-paper); }
body.jt-look-v3 .l3-section__inner { max-width: 1240px; margin: 0 auto; }

body.jt-look-v3 .l3-section__head {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.4rem;
}

body.jt-look-v3 .l3-more {
	color: var(--l3-blue);
	font-weight: 900;
}

body.jt-look-v3 .l3-tools__grid,
body.jt-look-v3 .l3-areas__grid,
body.jt-look-v3 .l3-guides__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

body.jt-look-v3 .l3-tool,
body.jt-look-v3 .l3-area,
body.jt-look-v3 .l3-guide {
	display: grid;
	align-content: start;
	min-height: 150px;
	padding: 1.25rem;
	border-radius: var(--l3-radius);
	background: var(--l3-card);
	border: 1px solid var(--l3-line);
	box-shadow: none;
	transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

body.jt-look-v3 .l3-tool:hover,
body.jt-look-v3 .l3-area:hover,
body.jt-look-v3 .l3-guide:hover {
	transform: translateY(-2px);
	border-color: rgba(23, 79, 143, 0.42);
	box-shadow: 0 18px 42px rgba(15, 25, 40, 0.1);
}

body.jt-look-v3 .l3-tool__kind,
body.jt-look-v3 .l3-area__subs,
body.jt-look-v3 .l3-guide__area,
body.jt-look-v3 .l3-area__count {
	color: var(--l3-muted);
	font-size: 0.92rem;
	line-height: 1.55;
}

body.jt-look-v3 .l3-tool strong,
body.jt-look-v3 .l3-area__name,
body.jt-look-v3 .l3-guide__title {
	color: var(--l3-ink);
	font-size: 1.18rem;
	line-height: 1.35;
	font-weight: 900;
}

body.jt-look-v3 .l3-guide__more {
	align-self: end;
	margin-top: 1rem;
	color: var(--l3-accent);
	font-weight: 900;
}

body.jt-look-v3 .l3-sim {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(320px, 1.1fr);
	gap: clamp(1.3rem, 4vw, 3rem);
	align-items: center;
	max-width: 1240px;
	margin: clamp(3rem, 6vw, 5rem) auto;
	padding: clamp(1.3rem, 3vw, 2rem);
	border: 1px solid var(--l3-line);
	border-radius: 8px;
	background: var(--l3-paper);
	color: var(--l3-ink);
	box-shadow: var(--l3-shadow);
}

body.jt-look-v3 .l3-sim .l3-kicker--light { color: var(--l3-accent); }
body.jt-look-v3 .l3-sim .l3-h2--light { color: var(--l3-ink); }
body.jt-look-v3 .l3-sim .l3-btn--outline-light { background: #24463f; color: #fffefa; border-color: #24463f; border-radius: 6px; }

body.jt-look-v3 .l3-sim__copy p {
	color: var(--l3-muted);
	font-size: 1.08rem;
	line-height: 1.75;
}

body.jt-look-v3 .l3-sim__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.85rem;
	margin-top: 1.35rem;
}

body.jt-look-v3 .l3-sim__note { color: var(--l3-muted); }

body.jt-look-v3 .l3-sim__media {
	position: relative;
	display: block;
	overflow: hidden;
	border-radius: 24px;
	border: 1px solid rgba(255, 255, 255, 0.14);
	background: rgba(255, 255, 255, 0.06);
}

body.jt-look-v3 .l3-sim__media img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

body.jt-look-v3 .l3-sim__live {
	position: absolute;
	top: 1rem;
	inset-inline-start: 1rem;
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	border-radius: 999px;
	background: rgba(7, 24, 45, 0.74);
	color: #fff;
	padding: 0.45rem 0.75rem;
	font-weight: 900;
}

body.jt-look-v3 .l3-sim__live span {
	width: 0.55rem;
	height: 0.55rem;
	border-radius: 999px;
	background: #22c55e;
	box-shadow: 0 0 0 5px rgba(34, 197, 94, 0.18);
}

body.jt-look-v3 .l3-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	margin-top: 1rem;
}

body.jt-look-v3 .l3-chip {
	border: 1px solid var(--l3-line);
	border-radius: 999px;
	background: #fff;
	padding: 0.6rem 0.95rem;
	color: var(--l3-blue);
	font-weight: 800;
}

body.jt-look-v3 .l3-legacy {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 1.25rem;
}

body.jt-look-v3 .l3-lead {
	max-width: 1180px;
	margin: clamp(3rem, 6vw, 5rem) auto;
	padding: clamp(1.2rem, 3vw, 2rem);
	border-radius: 30px;
	background: #fff;
	border: 1px solid var(--l3-line);
	box-shadow: var(--l3-shadow);
}

body.jt-look-v3 .l3-lead__head {
	max-width: 760px;
	margin-bottom: 1.3rem;
}

body.jt-look-v3 .l3-lead__head p {
	color: var(--l3-muted);
	line-height: 1.65;
}

body.jt-look-v3 .l3-lead__fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.85rem;
}

body.jt-look-v3 .l3-field--full { grid-column: 1 / -1; }

body.jt-look-v3 .l3-field label {
	display: block;
	margin-bottom: 0.32rem;
	color: var(--l3-muted);
	font-size: 0.92rem;
	font-weight: 800;
}

body.jt-look-v3 .l3-lead__consent {
	display: flex;
	align-items: start;
	gap: 0.6rem;
	margin: 1rem 0;
	color: var(--l3-muted);
	font-size: 0.95rem;
}

body.jt-look-v3 .l3-lead__notice {
	margin-bottom: 1rem;
	padding: 0.9rem 1rem;
	border-radius: 14px;
	background: #eef6ff;
	color: var(--l3-blue);
}

body.jt-look-v3 .l3-footer {
	background: var(--l3-navy);
	color: #fff;
	padding: clamp(2.4rem, 5vw, 4.5rem) 1.25rem 1.5rem;
}

body.jt-look-v3 .l3-footer__grid,
body.jt-look-v3 .l3-footer__bottom {
	max-width: 1240px;
	margin: 0 auto;
}

body.jt-look-v3 .l3-footer__grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 1.25rem;
}

body.jt-look-v3 .l3-footer__title {
	margin: 0 0 0.9rem;
	color: #fff;
	font-family: var(--l3-serif);
	font-size: 1.12rem;
}

body.jt-look-v3 .l3-footer__col a {
	display: block;
	padding: 0.32rem 0;
	color: rgba(255, 255, 255, 0.72);
	line-height: 1.45;
}

body.jt-look-v3 .l3-footer__col a:hover { color: #fff; }
body.jt-look-v3 .l3-footer__phone { color: #fff !important; font-weight: 900; }

body.jt-look-v3 .l3-footer__bottom {
	margin-top: 2rem;
	padding-top: 1.4rem;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	color: rgba(255, 255, 255, 0.68);
	font-size: 0.92rem;
}

body.jt-look-v3 .l3-footer__disclaimer,
body.jt-look-v3 .l3-footer__address {
	margin: 0 0 0.75rem;
	line-height: 1.7;
}

body.jt-look-v3 .l3-footer__legal {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	flex-wrap: wrap;
}

body.jt-look-v3 .l3-footer__legal-links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.85rem;
}

body.jt-look-v3 .l3-footer__brand {
	color: #fff;
	font-weight: 900;
}

@media (max-width: 1024px) {
	body.jt-look-v3 .l3-header__main {
		grid-template-columns: auto auto;
		justify-content: space-between;
	}

	body.jt-look-v3 .l3-nav { display: none; }
	body.jt-look-v3 .l3-header__toggle { display: inline-flex; }

	body.jt-look-v3 .l3-hero__grid,
	body.jt-look-v3 .l3-sim {
		grid-template-columns: 1fr;
	}

	body.jt-look-v3 .l3-hero {
		background: var(--l3-bg);
	}

	body.jt-look-v3 .l3-tools__grid,
	body.jt-look-v3 .l3-areas__grid,
	body.jt-look-v3 .l3-guides__grid,
	body.jt-look-v3 .l3-footer__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 720px) {
	body.jt-look-v3 .l3-header { position: relative; }
	body.jt-look-v3 .l3-header__phone { display: none; }
	body.jt-look-v3 .l3-topics { padding-inline: 1rem; }

	body.jt-look-v3 .l3-hero__grid {
		padding: 2.5rem 1rem 3rem;
	}

	body.jt-look-v3 .l3-hero__title {
		font-size: clamp(2.35rem, 10vw, 3.2rem);
		max-width: 17ch;
	}

	body.jt-look-v3 .l3-search,
	body.jt-look-v3 .l3-lead__fields {
		grid-template-columns: 1fr;
	}

	body.jt-look-v3 .l3-section,
	body.jt-look-v3 .l3-legacy {
		padding-inline: 1rem;
	}

	body.jt-look-v3 .l3-section__head {
		align-items: start;
		flex-direction: column;
	}

	body.jt-look-v3 .l3-tools__grid,
	body.jt-look-v3 .l3-areas__grid,
	body.jt-look-v3 .l3-guides__grid,
	body.jt-look-v3 .l3-footer__grid {
		grid-template-columns: 1fr;
	}

	body.jt-look-v3 .l3-sim,
	body.jt-look-v3 .l3-lead {
		margin-inline: 1rem;
		border-radius: 22px;
	}
}

/* Editorial portal system. Existing content and route ownership stay intact. */
body.jt-look-v3 {
	--l3-navy: #192f2b;
	--l3-blue: #254c43;
	--jt-primary-deep: #192b32;
	--jt-accent: #254c43;
	--color-accent: #254c43;
	--color-surface: #fffefa;
	--color-border: rgba(25,43,50,.14);
}
body.jt-look-v3 .site-main { background: var(--l3-bg); }
body.jt-look-v3 :is(a,button,input,select,textarea):focus-visible { outline: 3px solid #52766a; outline-offset: 4px; }
body.jt-look-v3 .l3-header { background: rgba(255,254,250,.97); color: var(--l3-ink); border-bottom-color: var(--l3-line); box-shadow: none; }
body.jt-look-v3.admin-bar .l3-header { top: 32px; }
body.jt-look-v3 .l3-header__main { min-height: 80px; }
body.jt-look-v3 .l3-nav .menu { flex-wrap: nowrap; gap: .85rem; }
body.jt-look-v3 .l3-nav .menu > li { margin: 0; }
body.jt-look-v3 :is(.l3-nav a,.l3-nav__mega-trigger) { font-size: .88rem; padding: .5rem 0; white-space: nowrap; }
body.jt-look-v3 .l3-brand { font-family: Georgia,serif; font-size: 1.5rem; letter-spacing: -.045em; font-weight: 500; }
body.jt-look-v3 :is(.l3-nav a,.l3-nav__mega-trigger,.l3-topics a,.l3-topics button) { color: var(--l3-ink); }
body.jt-look-v3 :is(.l3-nav a,.l3-nav__mega-trigger,.l3-topics a,.l3-topics button):hover { color: var(--l3-accent); }
body.jt-look-v3 :is(.l3-header__phone,.l3-header__toggle) { color: var(--l3-ink); background: transparent; border-color: var(--l3-line); border-radius: 4px; }
body.jt-look-v3 .l3-header__whatsapp { background: #254c43; color: #fff; border-radius: 4px; }
body.jt-look-v3 .l3-topics { padding-top: .5rem; padding-bottom: .8rem; border-top: 1px solid var(--l3-line); }
body.jt-look-v3 :is(.l3-topics a,.l3-topics button) { border: 0; border-inline-end: 1px solid var(--l3-line); border-radius: 0; background: transparent; font-weight: 500; padding: .25rem .75rem; }
body.jt-look-v3 .l3-kicker { font-weight: 600; letter-spacing: .015em; }
body.jt-look-v3 .l3-kicker::before { width: 1.8rem; height: 1px; border-radius: 0; box-shadow: none; }
body.jt-look-v3 .l3-hero__title { max-width: 17ch; font-weight: 600; }
body.jt-look-v3 .l3-hero__grid { padding-block: clamp(3.5rem,6vw,6rem); }
body.jt-look-v3 .l3-search { padding: .5rem; background: var(--l3-paper); border: 1px solid var(--l3-line); border-radius: 6px; box-shadow: 0 10px 25px rgba(25,43,50,.04); }
body.jt-look-v3 :is(.l3-btn,.l3-search select,.l3-search button,.l3-field input,.l3-field select,.l3-field textarea) { border-radius: 4px; }
body.jt-look-v3 :is(.l3-btn,.l3-search button) { background: #254c43; font-weight: 700; }
body.jt-look-v3 .l3-btn:hover { box-shadow: 0 6px 18px rgba(25,47,43,.15); }
body.jt-look-v3 .l3-hero__proof { gap: 1rem; font-size: .85rem; }
body.jt-look-v3 .l3-hero__proof span { padding: 0; background: transparent; border: 0; }
body.jt-look-v3 .l3-hero__triage { padding: .6rem 0; background: transparent; border: 0; border-radius: 0; font-size: .9rem; }
body.jt-look-v3 .l3-hero__aside { background: #eeeee6; border: 0; border-top: 3px solid #52766a; border-radius: 0; box-shadow: none; padding: 2rem; }
body.jt-look-v3 .l3-hero__aside-title { font-weight: 500; margin-bottom: 1.6rem; }
body.jt-look-v3 .l3-situations { gap: 0; counter-reset: situation; }
body.jt-look-v3 .l3-situation { position: relative; counter-increment: situation; border: 0; border-top: 1px solid var(--l3-line); border-radius: 0; background: transparent; padding: 1rem 0; gap: .7rem; }
body.jt-look-v3 .l3-situation::before { content: counter(situation,decimal-leading-zero); color: #52766a; font: .75rem Georgia,serif; }
body.jt-look-v3 .l3-situation > span:first-of-type { flex: 1; }
body.jt-look-v3 .l3-situation:hover { box-shadow: none; color: #254c43; border-color: #52766a; }
body.jt-look-v3 .l3-situation__label { font-size: .78rem; font-weight: 600; }
body.jt-look-v3 .l3-h2 { font-weight: 600; line-height: 1.2; }
body.jt-look-v3 .l3-section__head { margin-bottom: 2rem; }
body.jt-look-v3 .l3-more { font-weight: 600; font-size: .9rem; }
body.jt-look-v3 .l3-tool { border: 0; border-top: 1px solid #52766a; border-radius: 0; background: transparent; padding-inline: 0; }
body.jt-look-v3 .l3-areas__grid { gap: 0; border-top: 1px solid var(--l3-line); }
body.jt-look-v3 .l3-area { min-height: 170px; background: transparent; border: 0; border-bottom: 1px solid var(--l3-line); border-inline-end: 1px solid var(--l3-line); border-radius: 0; padding: 1.6rem; gap: .45rem; }
body.jt-look-v3 .l3-guides__grid { gap: 1.5rem; }
body.jt-look-v3 .l3-guide { border-radius: 0; min-height: 205px; padding: 1.5rem; border: 0; border-top: 2px solid #254c43; }
body.jt-look-v3 :is(.l3-tool strong,.l3-area__name,.l3-guide__title) { font-weight: 600; font-size: 1.3rem; }
body.jt-look-v3 :is(.l3-tool,.l3-area,.l3-guide):hover { transform: none; box-shadow: none; background: #eeeee6; }
body.jt-look-v3 :is(.l3-sim,.l3-lead,.l3-sim__media) { border-radius: 4px; }
body.jt-look-v3 .l3-sim { padding: clamp(1.5rem,4vw,3rem); box-shadow: none; border-block: 1px solid var(--l3-line); }
body.jt-look-v3 .l3-sim__live { font-weight: 500; font-size: .82rem; border-radius: 3px; }
body.jt-look-v3 .l3-sim__live span { background: #d2c3a4; box-shadow: none; }
body.jt-look-v3 .l3-chip { border-radius: 3px; font-weight: 500; }
body.jt-look-v3 .l3-lead { border-top: 3px solid #52766a; box-shadow: none; }
body.jt-look-v3 .l3-footer__title { font-size: 1.25rem; font-weight: 500; }
body.jt-look-v3 .l3-footer__col a { font-size: .92rem; padding-block: .45rem; }
/* Reading and directory surfaces inherit the same visual language. */
body.jt-look-v3 :is(.archive-header,.lawyer-directory .section-header) { border-bottom: 1px solid var(--l3-line); padding-bottom: 2rem; text-align: start; }
body.jt-look-v3 :is(.single-article__header,.glass-panel) { background: var(--l3-paper); box-shadow: none; border: 1px solid var(--l3-line); }
body.jt-look-v3 .single-article__header { border-radius: 0 !important; border: 0; border-bottom: 1px solid var(--l3-line); }
body.jt-look-v3 .single-article__title { font-weight: 600; color: var(--l3-ink) !important; }
body.jt-look-v3 .entry-content { color: var(--l3-ink); font-size: 1.1rem; line-height: 1.95; }
body.jt-look-v3 .entry-content p { margin-block: 0 1.35em; }
body.jt-look-v3 .entry-content a { color: #254c43; text-decoration: underline; text-underline-offset: .18em; }
body.jt-look-v3 .entry-content :is(h2,h3) { line-height: 1.35; margin-top: 1.7em; }
body.jt-look-v3 :is(.lawyer-card,.article-card) { border: 1px solid var(--l3-line); border-radius: 4px; box-shadow: none; background: var(--l3-paper); }
body.jt-look-v3 .lawyer-card__media--initials { background: #e8ebe3; color: #254c43; }
body.jt-look-v3 :is(.button--primary,.button--gold) { background: #254c43; color: #fff; border-color: #254c43; border-radius: 4px; }
@media (max-width: 1024px) {
	body.jt-look-v3.nav-is-open .l3-nav { display: block; position: absolute; top: 100%; bottom: auto; height: auto; inset-inline: 0; width: 100%; padding: 1rem 1.5rem; background: var(--l3-paper); border-bottom: 1px solid var(--l3-line); max-height: 70vh; overflow-y: auto; box-shadow: var(--l3-shadow); }
	body.jt-look-v3 .l3-nav .menu { display: grid; gap: 0; justify-content: stretch; }
	body.jt-look-v3 .l3-nav .menu > li { border-bottom: 1px solid var(--l3-line); padding: .8rem 0; }
	body.jt-look-v3 .l3-nav a { min-height: 44px; padding: .6rem 0; }
	body.jt-look-v3 .l3-mega { max-height: 65vh; overflow-y: auto; }
	body.jt-look-v3 .l3-mega__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px) {
	body.jt-look-v3 .l3-header__main { min-height: 70px; padding-inline: 1rem; gap: .75rem; }
	body.jt-look-v3.admin-bar .l3-header { top: 0; }
	body.jt-look-v3 .l3-hero__grid { padding: 2.75rem 1rem; }
	body.jt-look-v3 .l3-hero__aside { padding: 1.5rem; margin-top: .5rem; }
	body.jt-look-v3 .l3-kicker { font-size: .78rem; }
	body.jt-look-v3 .l3-hero__proof { gap: .6rem 1rem; }
	body.jt-look-v3 .l3-search { gap: .5rem; }
	body.jt-look-v3 .l3-h2 { font-size: 2rem; }
	body.jt-look-v3 .l3-area { min-height: auto; padding: 1.3rem 0; border-inline: 0; }
	body.jt-look-v3 :is(.l3-sim,.l3-lead) { border-radius: 4px; }
	body.jt-look-v3 .l3-footer__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2rem 1rem; }
	body.jt-look-v3 .l3-footer__col:last-child { grid-column: 1/-1; }
	body.jt-look-v3 .single-article__header { padding: 2rem 1rem !important; margin-block: 0 2rem !important; }
}
@media (prefers-reduced-motion: reduce) { body.jt-look-v3 * { scroll-behavior: auto !important; transition: none !important; } }

/* Look3 editorial library: compact masthead, browsable subjects, reading-first cards. */
body.jt-look-v3.post-type-archive-articles .archive-header {
	background: #e9ebe3;
	color: var(--l3-ink);
	border: 0;
	border-block: 1px solid var(--l3-line);
	border-radius: 0;
	box-shadow: none;
	padding-block: clamp(2rem, 4vw, 3.5rem);
}
body.jt-look-v3.post-type-archive-articles .archive-header > .container {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
	gap: 1rem 3rem;
	align-items: end;
}
body.jt-look-v3.post-type-archive-articles .archive-header p { color: var(--l3-muted); margin: 0; max-width: 44ch; font-size: 1rem; line-height: 1.7; }
body.jt-look-v3.post-type-archive-articles .archive-header .archive-header__eyebrow { grid-column: 1 / -1; color: #315a4c; font-size: .8rem; font-weight: 600; letter-spacing: 0; }
body.jt-look-v3.post-type-archive-articles .archive-header__eyebrow::before { width: 1.8rem; height: 2px; background: #52766a; box-shadow: none; border-radius: 0; vertical-align: middle; }
body.jt-look-v3.post-type-archive-articles .archive-header h1 { color: #192f2b; margin: 0; max-width: 19ch; font-size: clamp(2rem, 3.7vw, 3.2rem); font-weight: 600; line-height: 1.15; letter-spacing: -.025em; text-wrap: balance; }
body.jt-look-v3.post-type-archive-articles .archive-content { padding-block: 2.5rem 4rem; }
body.jt-look-v3.post-type-archive-articles .archive-layout { grid-template-columns: 220px minmax(0, 1fr); gap: 2.5rem; margin-top: 0; padding-bottom: 0; align-items: start; }
body.jt-look-v3.post-type-archive-articles :is(.archive-main, .archive-sidebar) { min-width: 0; }
body.jt-look-v3.post-type-archive-articles .archive-sidebar { border-top: 2px solid #52766a; padding-top: 1rem; }
body.jt-look-v3.post-type-archive-articles .archive-sidebar h2 { margin: 0 0 .7rem; padding: 0; border: 0; color: var(--l3-ink); font-size: 1.25rem; font-weight: 600; }
body.jt-look-v3.post-type-archive-articles .term-list li { margin: 0; }
body.jt-look-v3.post-type-archive-articles .term-list a { min-height: 44px; gap: 1rem; padding: .65rem 0; border-color: var(--l3-line); font-size: .9rem; line-height: 1.4; color: var(--l3-ink); }
body.jt-look-v3.post-type-archive-articles .term-list a:hover { color: #254c43; text-decoration: underline; text-underline-offset: .2em; }
body.jt-look-v3.post-type-archive-articles .term-list span { color: var(--l3-muted); font-size: .75rem; font-variant-numeric: tabular-nums; }
body.jt-look-v3.post-type-archive-articles .article-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.5rem 1.5rem; }
body.jt-look-v3.post-type-archive-articles .article-card { border: 0; border-bottom: 1px solid var(--l3-line); border-radius: 0; background: transparent; box-shadow: none; }
body.jt-look-v3.post-type-archive-articles .article-card:hover { transform: none; box-shadow: none; }
body.jt-look-v3.post-type-archive-articles .article-card__media { height: auto !important; aspect-ratio: 16 / 9; border-radius: 2px !important; }
body.jt-look-v3.post-type-archive-articles .article-card__media img { border-radius: 2px !important; }
/* Decorative blank-document graphics are not article photography. Keep the real text link. */
body.jt-look-v3.post-type-archive-articles .article-card__media:has(.article-card__placeholder) { display: none !important; }
body.jt-look-v3.post-type-archive-articles .article-card__content { padding: 1.25rem 0 0 !important; }
body.jt-look-v3.post-type-archive-articles .article-card__term { align-self: flex-start; background: transparent !important; color: #315a4c !important; padding: 0 !important; border-radius: 0 !important; font-weight: 600 !important; }
body.jt-look-v3.post-type-archive-articles .article-card__title { font-size: 1.5rem !important; font-weight: 600; line-height: 1.3 !important; }
body.jt-look-v3.post-type-archive-articles .article-card__title a { color: var(--l3-ink) !important; }
body.jt-look-v3.post-type-archive-articles .article-card__title a:hover { text-decoration: underline; text-underline-offset: .15em; }
body.jt-look-v3.post-type-archive-articles .article-card__meta { flex-wrap: wrap; gap: .4rem 1rem !important; color: var(--l3-muted) !important; }
body.jt-look-v3.post-type-archive-articles .article-card__excerpt { color: var(--l3-muted) !important; line-height: 1.75 !important; }
body.jt-look-v3.post-type-archive-articles .article-card__read-more { min-height: 44px; padding-block: .85rem !important; border-top: 0 !important; color: #254c43 !important; font-size: .9rem; }
body.jt-look-v3.post-type-archive-articles .pagination { margin-top: 2.5rem; }

/* Article attribution remains visible beside a quieter, left/right-aware masthead. */
body.jt-look-v3 .single-article__header { text-align: start !important; border-top: 2px solid #52766a; padding-block: 2rem !important; }
body.jt-look-v3 .single-article__header .container { padding-inline: 0; }
body.jt-look-v3 .single-article__term { background: transparent !important; padding: .4rem 0 !important; border-radius: 0 !important; color: #315a4c !important; font-weight: 600 !important; }
body.jt-look-v3 .single-article__title { text-wrap: balance; margin-inline: 0; }
body.jt-look-v3 :is(.single-article__author, .single-article__meta) { justify-content: flex-start !important; flex-wrap: wrap; font-weight: 500 !important; }
body.jt-look-v3 .single-article__meta { color: var(--l3-muted) !important; gap: .5rem 1.25rem !important; }
body.jt-look-v3 .single-article__image { border-radius: 2px !important; box-shadow: none !important; }

@media (max-width: 1024px) {
	body.jt-look-v3.post-type-archive-articles .archive-layout { grid-template-columns: minmax(0, 1fr); gap: 1.75rem; }
	body.jt-look-v3.post-type-archive-articles .archive-sidebar { padding-top: .75rem; }
	/* All subjects stay in the DOM and keyboard-accessible within a two-row rail. */
	body.jt-look-v3.post-type-archive-articles .term-list { display: grid; grid-auto-flow: column; grid-template-rows: repeat(2, auto); grid-auto-columns: max-content; gap: .4rem .6rem; overflow-x: auto; padding: .15rem .15rem .6rem; scroll-padding-inline: .15rem; scrollbar-width: thin; scrollbar-color: #52766a #e9ebe3; }
	body.jt-look-v3.post-type-archive-articles .term-list a { box-sizing: border-box; height: 100%; padding: .55rem .85rem; background: var(--l3-paper); border: 1px solid var(--l3-line); border-radius: 2px; }
	body.jt-look-v3.post-type-archive-articles .term-list a:focus-visible { outline-offset: -3px; }
}
@media (max-width: 720px) {
	body.jt-look-v3.post-type-archive-articles .archive-header { padding-block: 1.75rem; }
	body.jt-look-v3.post-type-archive-articles .archive-header > .container { grid-template-columns: minmax(0, 1fr); gap: .8rem; }
	body.jt-look-v3.post-type-archive-articles .archive-header h1 { font-size: 2.1rem; max-width: 20ch; }
	body.jt-look-v3.post-type-archive-articles .archive-header p { font-size: .92rem; line-height: 1.6; }
	body.jt-look-v3.post-type-archive-articles .archive-content { padding-top: 1.25rem; }
	body.jt-look-v3.post-type-archive-articles .article-grid { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
	body.jt-look-v3.post-type-archive-articles .article-card__title { font-size: 1.4rem !important; }
	body.jt-look-v3 .single-article__header { margin-block: 1rem 0 !important; }
	body.jt-look-v3 .single-article__meta { font-size: .82rem !important; }
}

/* Public product entry: two real actions, one page scroll, no account-status badges. */
body.jt-look-v3 .l3-hero-rehearsal { display: grid; grid-template-columns: 132px minmax(0,1fr); gap: 1rem; margin: 1.5rem 0; padding: .7rem; border: 1px solid #c0cec4; border-radius: 6px; background: #edf1e9; color: #193d33; text-align: start; text-decoration: none; }
body.jt-look-v3 .l3-hero-rehearsal img { width: 100%; height: 100%; min-height: 120px; object-fit: cover; object-position: 50% 52%; border-radius: 3px; }
body.jt-look-v3 .l3-hero-rehearsal__copy { display: grid; align-content: center; gap: .3rem; min-width: 0; font-size: .88rem; line-height: 1.5; }
body.jt-look-v3 .l3-hero-rehearsal__brand { justify-self: start; font-family: Georgia,serif; font-size: .85rem; letter-spacing: .04em; color: #466353; }
body.jt-look-v3 .l3-hero-rehearsal strong { font-size: 1.2rem; line-height: 1.35; }
body.jt-look-v3 .l3-hero-rehearsal__action { font-weight: 700; text-decoration: underline; text-underline-offset: .22em; }
body.jt-look-v3 .l3-hero-rehearsal:hover { border-color: #285348; background: #e4ece0; }
body.jt-look-v3 .l3-hero-rehearsal:focus-visible { outline: 3px solid #285348; outline-offset: 4px; }
@media (max-width: 650px) {
	body.jt-look-v3 .l3-hero-rehearsal { grid-template-columns: 88px minmax(0,1fr); gap: .75rem; margin-block: 1rem; padding: .55rem; }
	body.jt-look-v3 .l3-hero-rehearsal strong { font-size: 1.05rem; }
	body.jt-look-v3 .l3-hero-rehearsal__copy { font-size: .82rem; }
}
body.jt-look-v3 .lawyer-card__status--inactive { display: none; }
body.jt-look-v3 .l3-article-simulation { margin: 1.5rem 0 2rem; padding: 1.5rem; border: 1px solid #bdc9bd; border-inline-start: 4px solid #285348; background: #eef2e9; color: #1c372f; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .75rem 1.5rem; border-radius: 6px; }
body.jt-look-v3 .l3-article-simulation strong { display: block; font-size: 1.25rem; }
body.jt-look-v3 .l3-article-simulation:has(.l3-article-simulation__visual) { grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: center; }
body.jt-look-v3 .l3-article-simulation__visual { position: relative; grid-row: span 3; display: block; align-self: stretch; min-height: 210px; overflow: hidden; border-radius: 4px; background: #183b31; color: #fff; }
body.jt-look-v3 .l3-article-simulation__visual img { display: block; position: absolute; width: 100%; height: 100%; inset: 0; object-fit: cover; object-position: center; margin: 0; }
body.jt-look-v3 .l3-article-simulation__visual > span { position: absolute; inset-inline: .75rem; bottom: .75rem; display: flex; justify-content: space-between; align-items: center; padding: .5rem .75rem; background: #173a32; color: #fff; font-size: .875rem; font-weight: 700; direction: ltr; }
body.jt-look-v3 .l3-article-simulation__visual:focus-visible { outline: 3px solid #285348; outline-offset: 4px; }
body.jt-look-v3 .l3-article-simulation:has(.l3-article-simulation__visual) small { grid-column: 2; }
body.jt-look-v3 .l3-article-simulation p { margin: .4rem 0 0; font-size: 1rem; line-height: 1.7; }
body.jt-look-v3 .l3-article-simulation small { grid-column: 1 / -1; font-size: .8rem; color: #4d6359; }
body.jt-look-v3 .l3-article-simulation__actions { display: flex; flex-direction: column; gap: .5rem; justify-content: center; }
body.jt-look-v3 .l3-article-simulation__actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: .65rem 1.2rem; border: 1px solid #285348; border-radius: 4px; background: #285348; color: #fff; font-size: .98rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
body.jt-look-v3 .l3-article-simulation__actions a.l3-article-simulation__secondary { background: transparent; color: #234c40; }
body.jt-look-v3 .l3-article-simulation__actions a:hover { background: #183b31; color: #fff; }
body.jt-look-v3 .l3-article-simulation__actions a:focus-visible { outline: 3px solid #1c372f; outline-offset: 3px; }
@media (max-width: 650px) {
	body.jt-look-v3 .l3-article-simulation:has(.l3-article-simulation__visual) { grid-template-columns: minmax(0,1fr); }
	body.jt-look-v3 .l3-article-simulation__visual { grid-row: auto; min-height: 0; aspect-ratio: 16 / 9; }
	body.jt-look-v3 .l3-article-simulation:has(.l3-article-simulation__visual) small { grid-column: 1; }
	body.jt-look-v3 .l3-article-simulation { grid-template-columns: minmax(0,1fr); padding: 1rem; }
	body.jt-look-v3 .l3-article-simulation__actions { flex-direction: row; flex-wrap: wrap; }
	body.jt-look-v3 .l3-article-simulation__actions a { flex: 1; }
}