/*!
 * ==========================================================
 * LANO Authority Article Framework
 * Version: 3.3.0
 * ==========================================================
 *
 * Scope
 * ----------------------------------------------------------
 * .lano-local-guide
 *
 * Purpose
 * ----------------------------------------------------------
 * Long-form Authority Articles
 * EEAT Content
 * Local Guide
 * Buying Guide
 * Leather Knowledge Base
 * Handmade Knowledge
 *
 * Components
 * ----------------------------------------------------------
 * ✓ Hero
 * ✓ Quick Answer
 * ✓ Section Layout
 * ✓ Reading Width
 * ✓ Checklist
 * ✓ Comparison Grid
 * ✓ Decision Box
 * ✓ Warning Box
 * ✓ Experience Box
 * ✓ Myth vs Reality
 * ✓ Decision Tree
 * ✓ Bespoke CTA
 * ✓ CTA Block
 * ✓ Tables
 * ✓ Figures & Captions
 * ✓ Figure Numbering (Opt-in)
 * ✓ Heading Numbering (Opt-in)
 * ✓ Reading Meta
 * ✓ Reading Progress Bar
 * ✓ Copy Heading Link
 * ✓ Image Lightbox
 * ✓ Responsive Layout
 * ✓ Print Styles
 * ✓ Accessibility
 *
 * TOC Integration
 * ----------------------------------------------------------
 * ✓ Lano TOC v2.0
 * ✓ Active Heading
 * ✓ Read State
 * ✓ Shared Reading Progress
 * ✓ Keyboard Accessibility
 * ✓ Smooth Scroll Support
 *
 * Dependencies
 * ----------------------------------------------------------
 * Vanilla CSS
 * No Framework
 *
 * Author
 * ----------------------------------------------------------
 * Lano.vn
 *
 * Changelog
 * ----------------------------------------------------------
 * v3.3.0
 * - Upgraded long-form prose typography and vertical rhythm.
 * - Removed negative paragraph margins and sticky TOC support.
 * - Improved figure, caption, table and mobile presentation.
 * - Added safer nested-component spacing rules.
 * - Improved lightbox trigger affordance and accessibility.
 * - Aligned framework version and component governance.
 */

.lano-local-guide {
	--lano-gold: #887839;
	--lano-gold-dark: #6f612d;
	--lano-gold-light: #b4a267;
	--lano-gold-soft: #f6f2e5;
	--lano-gold-pale: #fbf8ef;
	--lano-text: #282828;
	--lano-heading: #24221d;
	--lano-muted: #666;
	--lano-border: #e7e2d5;
	--lano-border-strong: rgba(136, 120, 57, 0.34);
	--lano-bg-soft: #faf9f6;
	--lano-bg-dark: #29271f;
	--lano-white: #fff;
	--lano-radius-sm: 11px;
	--lano-radius: 16px;
	--lano-radius-lg: 22px;
	--lano-shadow-sm: 0 8px 24px rgba(31, 27, 18, 0.05);
	--lano-shadow: 0 14px 40px rgba(31, 27, 18, 0.075);
	--lano-shadow-hover: 0 18px 48px rgba(31, 27, 18, 0.11);
	--lano-content-width: 1180px;
	--lano-prose-width: 920px;
	--lano-prose-font-size: 1.04rem;
	--lano-prose-line-height: 1.92;
	--lano-prose-paragraph-gap: 1.3rem;
	--lano-section-gap: clamp(28px, 4vw, 42px);
	--lano-scroll-offset: 110px;
	--lano-focus-ring: 0 0 0 3px rgba(136, 120, 57, 0.28);
	--lano-warning: #9b5b22;
	--lano-warning-soft: #fff7ed;
	--lano-success: #506b42;
	--lano-success-soft: #f1f6ed;
	--lano-danger: #8a453f;
	--lano-danger-soft: #fbf0ef;

	position: relative;
	color: var(--lano-text);
	font-size: 17px;
	line-height: 1.82;
}

.lano-local-guide,
.lano-local-guide * {
	box-sizing: border-box;
}

.lano-local-guide p {
	margin: 0 0 18px;
}

.lano-local-guide p:last-child {
	margin-bottom: 0;
}

.lano-local-guide strong {
	color: #383328;
}

.lano-local-guide a {
	color: var(--lano-gold-dark);
	font-weight: 600;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	transition: color 0.2s ease, text-decoration-color 0.2s ease;
}

.lano-local-guide a:hover {
	color: var(--lano-gold);
	text-decoration-color: var(--lano-gold);
}

.lano-local-guide ul,
.lano-local-guide ol {
	margin: 0 0 20px;
	padding-left: 24px;
}

.lano-local-guide li {
	margin-bottom: 8px;
}

.lano-local-guide h2 {
	position: relative;
	margin: 0 0 24px;
	padding: 0 0 14px;
	color: var(--lano-heading);
	font-size: clamp(26px, 3vw, 35px);
	font-weight: 700;
	line-height: 1.28;
	letter-spacing: -0.015em;
}

.lano-local-guide h2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 74px;
	height: 3px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--lano-gold), var(--lano-gold-light));
}

.lano-local-guide h3 {
	margin: 30px 0 12px;
	color: #302d25;
	font-size: clamp(20px, 2.2vw, 23px);
	font-weight: 700;
	line-height: 1.42;
}

.lano-local-guide h4 {
	margin: 24px 0 10px;
	color: #363128;
	font-size: 18px;
	line-height: 1.45;
}

/* ---------------------------------------------------------
   INTRO / HERO
--------------------------------------------------------- */

.lano-guide-intro {
	position: relative;
	overflow: hidden;
	margin: 0 0 34px;
	padding: clamp(26px, 5vw, 50px);
	border: 1px solid var(--lano-border);
	border-radius: var(--lano-radius-lg);
	background:
		radial-gradient(circle at top right, rgba(136, 120, 57, 0.14), transparent 34%),
		linear-gradient(135deg, rgba(136, 120, 57, 0.08), rgba(255, 255, 255, 0.92)),
		var(--lano-white);
	box-shadow: var(--lano-shadow);
	isolation: isolate;
}

.lano-guide-intro::before,
.lano-guide-intro::after {
	content: "";
	position: absolute;
	z-index: -1;
	border-radius: 50%;
	pointer-events: none;
}

.lano-guide-intro::before {
	top: -105px;
	right: -92px;
	width: 245px;
	height: 245px;
	background: rgba(136, 120, 57, 0.085);
}

.lano-guide-intro::after {
	left: -85px;
	bottom: -105px;
	width: 190px;
	height: 190px;
	background: rgba(136, 120, 57, 0.045);
}

.lano-local-guide h2.lano-guide-kicker {
	display: inline-flex;
	align-items: center;
	width: auto;
	max-width: 100%;
	margin: 0 0 18px;
	padding: 10px 18px;
	border-radius: 999px;
	background: linear-gradient(135deg, var(--lano-gold), var(--lano-gold-dark));
	color: var(--lano-white);
	font-size: 14px;
	font-weight: 800;
	line-height: 1.35;
	letter-spacing: 0.045em;
	text-transform: uppercase;
	box-shadow: 0 7px 18px rgba(111, 97, 45, 0.18);
}

.lano-local-guide h2.lano-guide-kicker::after {
	display: none;
	content: none;
}

.lano-guide-lead {
	position: relative;
	max-width: 980px;
	color: #353129;
	font-size: clamp(19px, 2.2vw, 23px);
	line-height: 1.68;
}

/* ---------------------------------------------------------
   SUMMARY / KEY POINTS
--------------------------------------------------------- */

.lano-guide-summary {
	position: relative;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
	margin-top: 28px;
}

.lano-guide-summary-item {
	min-width: 0;
	padding: 18px;
	border: 1px solid rgba(136, 120, 57, 0.22);
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.82);
	box-shadow: 0 7px 20px rgba(31, 27, 18, 0.035);
	backdrop-filter: blur(3px);
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.lano-guide-summary-item:hover {
	transform: translateY(-2px);
	border-color: rgba(136, 120, 57, 0.36);
	box-shadow: var(--lano-shadow-sm);
}

.lano-guide-summary-item strong {
	display: block;
	margin-bottom: 5px;
	color: var(--lano-gold-dark);
	font-size: 16px;
}

.lano-guide-summary-item span {
	display: block;
	color: var(--lano-muted);
	font-size: 14px;
	line-height: 1.58;
}

/* ---------------------------------------------------------
   MAIN ARTICLE SECTION
--------------------------------------------------------- */

.lano-guide-section {
	position: relative;
	margin: 34px 0;
	padding: clamp(25px, 4vw, 42px);
	border: 1px solid var(--lano-border);
	border-radius: var(--lano-radius);
	background: var(--lano-white);
	box-shadow: var(--lano-shadow-sm);
}

.lano-guide-section.is-soft {
	background:
		linear-gradient(180deg, rgba(255,255,255,0.72), rgba(250,249,246,0.96)),
		var(--lano-bg-soft);
}

.lano-guide-section.is-highlight {
	border-color: var(--lano-border-strong);
	background:
		linear-gradient(180deg, rgba(255,255,255,0.98), rgba(251,248,239,0.98)),
		var(--lano-gold-pale);
	box-shadow: 0 12px 34px rgba(111, 97, 45, 0.08);
}

.lano-guide-section > :last-child {
	margin-bottom: 0;
}

/* ---------------------------------------------------------
   PROCESS / TIMELINE ENHANCEMENT
   Automatically enhances numbered H2 sections in process articles.
--------------------------------------------------------- */

.lano-wallet-process .lano-guide-section {
	padding-left: clamp(30px, 5vw, 58px);
}

.lano-wallet-process .lano-guide-section::before {
	content: "";
	position: absolute;
	top: 40px;
	bottom: 40px;
	left: 20px;
	width: 2px;
	border-radius: 999px;
	background: linear-gradient(
		180deg,
		rgba(136, 120, 57, 0.55),
		rgba(136, 120, 57, 0.10)
	);
}

.lano-wallet-process .lano-guide-section > h2:first-child::before {
	content: "";
	position: absolute;
	top: 8px;
	left: calc(clamp(30px, 5vw, 58px) * -1 + 11px);
	width: 18px;
	height: 18px;
	border: 4px solid var(--lano-gold-soft);
	border-radius: 50%;
	background: var(--lano-gold);
	box-shadow: 0 0 0 1px rgba(136, 120, 57, 0.22);
}

.lano-wallet-process .lano-guide-section:first-of-type::before,
.lano-wallet-process .lano-guide-conclusion::before,
.lano-wallet-process .lano-guide-bespoke::before {
	display: none;
}

/* ---------------------------------------------------------
   CARDS
--------------------------------------------------------- */

.lano-guide-cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	margin: 24px 0 4px;
}

.lano-guide-card {
	min-width: 0;
	padding: 21px;
	border: 1px solid var(--lano-border);
	border-radius: 14px;
	background: var(--lano-white);
	box-shadow: 0 6px 18px rgba(31, 27, 18, 0.035);
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.lano-guide-card:hover {
	transform: translateY(-3px);
	border-color: rgba(136, 120, 57, 0.34);
	box-shadow: var(--lano-shadow-sm);
}

.lano-guide-card h3 {
	margin-top: 0;
	margin-bottom: 10px;
	color: var(--lano-gold-dark);
	font-size: 19px;
}

.lano-guide-card p:last-child {
	margin-bottom: 0;
}

/* ---------------------------------------------------------
   CHECKLIST
--------------------------------------------------------- */

.lano-guide-checklist {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin: 22px 0 8px;
	padding: 0;
	list-style: none;
}

.lano-guide-checklist li {
	position: relative;
	margin: 0;
	padding: 15px 16px 15px 46px;
	border: 1px solid var(--lano-border);
	border-radius: 12px;
	background: var(--lano-white);
	line-height: 1.58;
	box-shadow: 0 4px 14px rgba(31, 27, 18, 0.025);
}

.lano-guide-checklist li::before {
	content: "✓";
	position: absolute;
	top: 15px;
	left: 16px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: var(--lano-gold-soft);
	color: var(--lano-gold-dark);
	font-size: 13px;
	font-weight: 800;
}

/* ---------------------------------------------------------
   NOTES / CALLOUTS / INSIGHTS
--------------------------------------------------------- */

.lano-guide-note {
	position: relative;
	margin: 24px 0;
	padding: 21px 22px 21px 24px;
	border: 1px solid rgba(136, 120, 57, 0.20);
	border-left: 4px solid var(--lano-gold);
	border-radius: 0 13px 13px 0;
	background:
		linear-gradient(90deg, rgba(246, 242, 229, 0.96), rgba(255,255,255,0.94));
	box-shadow: 0 5px 18px rgba(111, 97, 45, 0.04);
}

.lano-guide-note strong {
	color: var(--lano-gold-dark);
}

.lano-guide-insight {
	position: relative;
	margin: 26px 0;
	padding: 22px 24px 22px 58px;
	border: 1px solid rgba(136, 120, 57, 0.28);
	border-radius: 14px;
	background: #fffdf7;
}

.lano-guide-insight::before {
	content: "✦";
	position: absolute;
	top: 21px;
	left: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: var(--lano-gold);
	color: var(--lano-white);
	font-size: 13px;
	font-weight: 800;
}

.lano-guide-quote {
	margin: 28px 0;
	padding: 24px 26px;
	border: 0;
	border-radius: 14px;
	background: #f5f2e9;
	color: #39352c;
	font-size: 19px;
	font-style: italic;
	line-height: 1.65;
	box-shadow: inset 4px 0 0 var(--lano-gold);
}

/* ---------------------------------------------------------
   COMPARISON
--------------------------------------------------------- */

.lano-guide-comparison {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	margin: 24px 0;
}

.lano-guide-comparison > div {
	min-width: 0;
	padding: 23px;
	border: 1px solid var(--lano-border);
	border-radius: 14px;
	background: var(--lano-white);
	box-shadow: 0 6px 18px rgba(31, 27, 18, 0.035);
}

.lano-guide-comparison h3 {
	margin-top: 0;
	color: var(--lano-gold-dark);
}

.lano-guide-bespoke .lano-guide-comparison > div{
	color:var(--lano-text);
}

.lano-guide-bespoke .lano-guide-comparison h3{
	color:var(--lano-gold-dark);
}

.lano-guide-bespoke .lano-guide-comparison .lano-guide-checklist li{
	color:var(--lano-text);
}

.lano-guide-bespoke .lano-guide-comparison .lano-guide-checklist li::before{
	background:var(--lano-gold-soft);
	color:var(--lano-gold-dark);
}

/* Optional semantic table */
.lano-guide-table {
	width: 100%;
	margin: 24px 0;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	border: 1px solid var(--lano-border);
	border-radius: 14px;
	background: var(--lano-white);
	box-shadow: var(--lano-shadow-sm);
}

.lano-guide-table th,
.lano-guide-table td {
	padding: 15px 17px;
	border-right: 1px solid var(--lano-border);
	border-bottom: 1px solid var(--lano-border);
	text-align: left;
	vertical-align: top;
}

.lano-guide-table th {
	background: var(--lano-gold-soft);
	color: var(--lano-gold-dark);
	font-weight: 700;
}

.lano-guide-table tr:last-child td {
	border-bottom: 0;
}

.lano-guide-table th:last-child,
.lano-guide-table td:last-child {
	border-right: 0;
}

/* ---------------------------------------------------------
   INTERNAL LINK / RELATED CONTENT
--------------------------------------------------------- */

.lano-guide-linkbox {
	margin: 25px 0;
	padding: 21px 22px;
	border: 1px dashed rgba(136, 120, 57, 0.58);
	border-radius: 13px;
	background: #fffdf7;
}

.lano-guide-linkbox p:last-child {
	margin-bottom: 0;
}

.lano-guide-product-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin: 20px 0;
	padding: 0;
	list-style: none;
}

.lano-guide-product-list li {
	margin: 0;
	padding: 16px 17px;
	border: 1px solid var(--lano-border);
	border-radius: 12px;
	background: var(--lano-bg-soft);
}

/* ---------------------------------------------------------
   BESPOKE / DARK CTA BLOCK
--------------------------------------------------------- */

.lano-guide-bespoke {
	position: relative;
	overflow: hidden;
	margin: 36px 0;
	padding: clamp(28px, 5vw, 46px);
	border: 1px solid rgba(255,255,255,0.04);
	border-radius: 19px;
	background:
		radial-gradient(circle at bottom right, rgba(136, 120, 57, 0.34), transparent 34%),
		linear-gradient(135deg, #302e25, var(--lano-bg-dark));
	color: #f7f5ef;
	box-shadow: 0 16px 42px rgba(31, 27, 18, 0.18);
}

.lano-guide-bespoke::after {
	content: "";
	position: absolute;
	right: -70px;
	bottom: -100px;
	width: 230px;
	height: 230px;
	border-radius: 50%;
	background: rgba(136, 120, 57, 0.18);
}

.lano-guide-bespoke h2,
.lano-guide-bespoke h3 {
	position: relative;
	z-index: 1;
	color: var(--lano-white);
}

.lano-guide-bespoke h2::after {
	background: #d7c57b;
}

.lano-guide-bespoke p,
.lano-guide-bespoke ul {
	position: relative;
	z-index: 1;
}

.lano-guide-bespoke strong {
	color: #fff;
}

.lano-guide-bespoke a {
	color: #f0d98f;
}

.lano-guide-bespoke a:hover {
	color: #fff0b6;
}

/* Optional buttons */
.lano-guide-actions {
	position: relative;
	z-index: 1;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 22px;
}

.lano-guide-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 10px 19px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: var(--lano-gold);
	color: var(--lano-white) !important;
	font-weight: 700;
	text-decoration: none !important;
	transition: transform 0.2s ease, background 0.2s ease;
}

.lano-guide-button:hover {
	transform: translateY(-1px);
	background: var(--lano-gold-dark);
}

.lano-guide-button.is-outline {
	border-color: rgba(255,255,255,0.34);
	background: transparent;
	color: var(--lano-white) !important;
}

/* ---------------------------------------------------------
   STORE / LOCAL SECTION
--------------------------------------------------------- */

.lano-guide-store {
	margin: 36px 0;
	padding: clamp(27px, 5vw, 46px);
	border: 1px solid var(--lano-border-strong);
	border-radius: 20px;
	background:
		linear-gradient(145deg, rgba(255,255,255,0.98), rgba(247,242,227,0.96));
	box-shadow: var(--lano-shadow);
}

.lano-guide-store-layout {
	display: grid;
	grid-template-columns: minmax(280px, 0.8fr) minmax(0, 1.2fr);
	gap: clamp(24px, 4vw, 42px);
	align-items: center;
	margin-top: 24px;
}

.lano-guide-store-media,
.lano-guide-store-content {
	min-width: 0;
}

.lano-guide-store-media .lano-guide-image,
.lano-guide-store-media .wp-caption {
	margin: 0 auto;
}

.lano-guide-store-content > p:first-child {
	margin-top: 0;
}

.lano-guide-store-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 18px;
	margin-top: 24px;
}

.lano-guide-address {
	width: 100%;
	padding: 22px;
	border: 1px solid var(--lano-border);
	border-radius: 14px;
	background: var(--lano-white);
	box-shadow: 0 5px 16px rgba(31, 27, 18, 0.03);
}

.lano-guide-address h3 {
	margin-top: 0;
	color: var(--lano-gold-dark);
}

.lano-guide-address p:last-child {
	margin-bottom: 0;
}

.lano-guide-hotline {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 22px;
}

.lano-guide-hotline a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 10px 18px;
	border-radius: 999px;
	background: var(--lano-gold);
	color: var(--lano-white);
	font-weight: 700;
	text-decoration: none;
}

.lano-guide-hotline a:hover {
	background: var(--lano-gold-dark);
	color: var(--lano-white);
}

/* ---------------------------------------------------------
   CONCLUSION
--------------------------------------------------------- */

.lano-guide-conclusion {
	position: relative;
	margin: 36px 0;
	padding: clamp(26px, 4vw, 40px);
	border: 1px solid rgba(136, 120, 57, 0.16);
	border-radius: var(--lano-radius);
	background:
		linear-gradient(135deg, rgba(245,242,233,0.98), rgba(251,249,243,0.96));
}

.lano-guide-conclusion h2 {
	margin-top: 0;
}

/* ---------------------------------------------------------
   IMAGE SYSTEM
--------------------------------------------------------- */

.lano-guide-image {
	margin: 30px 0;
	text-align: center;
}

.lano-local-guide .wp-caption,
.lano-local-guide figure {
	display: block;
	width: fit-content;
	max-width: 100%;
	margin: 30px auto;
	padding: 10px;
	overflow: hidden;
	border: 1px solid var(--lano-border);
	border-radius: 16px;
	background: var(--lano-white);
	box-shadow: var(--lano-shadow-sm);
}

.lano-local-guide .wp-caption img,
.lano-local-guide figure img,
.lano-local-guide > img,
.lano-guide-image img,
.lano-local-guide section > img {
	display: block;
	max-width: 100%;
	height: auto;
	margin: 30px auto;
	border-radius: 11px;
	box-shadow: 0 8px 24px rgba(31, 27, 18, 0.07);
	transition: transform 0.28s ease, box-shadow 0.28s ease;
}

.lano-local-guide .wp-caption img:hover,
.lano-local-guide figure img:hover,
.lano-guide-image img:hover,
.lano-local-guide section > img:hover {
	transform: translateY(-2px);
	box-shadow: var(--lano-shadow-hover);
}

.lano-local-guide .wp-caption-text,
.lano-local-guide figcaption {
	display: block;
	width: 100%;
	max-width: 760px;
	margin: 12px auto 0;
	padding: 0 6px 2px;
	color: var(--lano-muted);
	font-size: 14px;
	line-height: 1.58;
	text-align: center;
}

/* Avoid double spacing inside caption frame */
.lano-local-guide .wp-caption img,
.lano-local-guide figure img {
	margin: 0 auto;
}

/* ---------------------------------------------------------
   TWO-COLUMN MEDIA / CONTENT
--------------------------------------------------------- */

.lano-guide-split {
	display: grid;
	grid-template-columns: minmax(300px, 0.78fr) minmax(0, 1.22fr);
	gap: clamp(28px, 4vw, 48px);
	align-items: start;
	margin-top: 28px;
}

.lano-guide-split.is-reverse {
	grid-template-columns: minmax(0, 1.22fr) minmax(300px, 0.78fr);
}

.lano-guide-split.is-reverse .lano-guide-split-media {
	order: 2;
}

.lano-guide-split.is-reverse .lano-guide-split-content {
	order: 1;
}

.lano-guide-split-media,
.lano-guide-split-content {
	min-width: 0;
}

.lano-guide-split-media {
	align-self: start;
}

.lano-guide-split-media .gallery,
.lano-guide-split-media .lano-guide-image,
.lano-guide-split-media figure,
.lano-guide-split-media .wp-caption {
	width: 100%;
	max-width: 470px !important;
	margin: 0 auto !important;
}

.lano-guide-split-media img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	margin: 0 auto !important;
	object-fit: contain;
}

.lano-guide-split-content {
	align-self: start;
}

.lano-guide-split-content > :first-child {
	margin-top: 0;
}

.lano-guide-split-content > :last-child {
	margin-bottom: 0;
}

.lano-guide-split-content p {
	margin: 0 0 17px;
}

.lano-guide-split-content ul,
.lano-guide-split-content ol {
	margin: 4px 0 20px;
	padding-left: 25px;
}

.lano-guide-split-content li {
	margin-bottom: 7px;
}

.lano-guide-split-content .lano-guide-quote {
	margin: 24px 0;
	padding: 21px 23px;
	font-size: 18px;
}

/* ---------------------------------------------------------
   YOUTUBE SHORT + CONTENT
--------------------------------------------------------- */

.lano-guide-video-split {
	grid-template-columns: 300px minmax(0,1fr);
	margin-top: clamp(34px, 5vw, 56px);
	padding-top: clamp(28px, 4vw, 42px);
	border-top: 1px solid var(--lano-border);
	align-items: start;
}

.lano-guide-video-short {
	position: relative;
	width: 100%;
	max-width: 300px;
	aspect-ratio: 9 / 16;
	margin: 0 auto;
	overflow: hidden;
	border: 1px solid var(--lano-border);
	border-radius: 17px;
	background: #111;
	box-shadow: 0 14px 34px rgba(31, 27, 18, 0.14);
}

.lano-guide-split-media > h3 {
	margin: 0 0 18px;
}

.lano-guide-split-media > .lano-guide-prose {
	margin-top: 24px;
	max-width: none;
}

.lano-guide-video-short iframe {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}

.lano-guide-video-short::before,
.lano-guide-video-short::after,
.lano-guide-video-split .fluid-width-video-wrapper::before,
.lano-guide-video-split .fluid-width-video-wrapper::after {
	display: none !important;
	content: none !important;
	padding: 0 !important;
}

.lano-guide-video-split .fluid-width-video-wrapper {
	position: static !important;
	width: 100% !important;
	height: 100% !important;
	padding: 0 !important;
}

.lano-guide-video-split h3 {
	margin: 0 0 16px;
	font-size: clamp(22px, 2.25vw, 27px);
	line-height: 1.35;
}

/* ---------------------------------------------------------
   READING MEASURE / PROSE
   Long-form reading system. Opt-in with .lano-guide-prose.
--------------------------------------------------------- */

.lano-guide-prose {
	width: 100%;
	max-width: var(--lano-prose-width);
	margin-inline: auto;
	color: var(--lano-text);
	font-size: var(--lano-prose-font-size);
	line-height: var(--lano-prose-line-height);
	letter-spacing: 0.006em;
	word-break: normal;
	overflow-wrap: break-word;
	text-wrap: pretty;
}

.lano-guide-prose > :first-child {
	margin-top: 0;
}

.lano-guide-prose > :last-child {
	margin-bottom: 0;
}

.lano-guide-prose p {
	margin: 0 0 var(--lano-prose-paragraph-gap);
}

.lano-guide-prose p + p {
	margin-top: 0;
}

.lano-guide-prose :where(h2, h3, h4) {
	max-width: 24ch;
	text-wrap: balance;
}

.lano-guide-prose :where(h2, h3, h4) + p {
	margin-top: 0;
}

.lano-guide-prose a {
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.2em;
	text-decoration-skip-ink: auto;
}

.lano-guide-prose strong {
	color: inherit;
	font-weight: 700;
}

.lano-guide-prose em {
	font-style: italic;
}

.lano-guide-prose :where(ul, ol) {
	margin: 1.1rem 0 1.45rem;
	padding-left: 1.45rem;
}

.lano-guide-prose li {
	margin: 0.42rem 0;
	line-height: 1.82;
}

.lano-guide-prose li::marker {
	color: var(--lano-gold-dark);
	font-weight: 700;
}

.lano-guide-prose li > :where(ul, ol) {
	margin-top: 0.55rem;
	margin-bottom: 0.55rem;
}

.lano-guide-prose :where(figure, .wp-caption) {
	margin-block: 2rem;
}

.lano-guide-prose img {
	display: block;
	max-width: 100%;
	height: auto;
}

.lano-guide-prose :where(figcaption, .wp-caption-text) {
	margin-top: 0.72rem;
	color: var(--lano-muted);
	font-size: 0.9rem;
	line-height: 1.62;
}

.lano-guide-prose :where(.lano-guide-table-wrap, table) {
	margin-block: 1.8rem;
}

.lano-guide-prose :where(blockquote, .lano-guide-note, .lano-guide-insight,
	.lano-guide-decision, .lano-guide-warning, .lano-guide-experience,
	.lano-guide-linkbox) {
	margin-block: 1.75rem;
}

.lano-guide-prose hr {
	height: 1px;
	margin: 2.35rem 0;
	border: 0;
	background: linear-gradient(
		90deg,
		transparent,
		var(--lano-border-strong),
		transparent
	);
}

.lano-guide-prose :where(code, kbd, samp) {
	font-size: 0.92em;
}

.lano-guide-prose code {
	padding: 0.12em 0.34em;
	border: 1px solid var(--lano-border);
	border-radius: 5px;
	background: var(--lano-bg-soft);
}

.lano-guide-prose pre {
	max-width: 100%;
	margin: 1.75rem 0;
	padding: 18px;
	overflow: auto;
	border: 1px solid var(--lano-border);
	border-radius: 12px;
	background: #24221d;
	color: #f7f5ef;
	line-height: 1.65;
	-webkit-overflow-scrolling: touch;
}

.lano-guide-prose pre code {
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
}

.lano-guide-prose small {
	font-size: 0.9em;
}

.lano-guide-prose > .lano-guide-checklist,
.lano-guide-prose > .lano-guide-decision-tree,
.lano-guide-prose > .lano-guide-comparison,
.lano-guide-prose > .lano-guide-cards,
.lano-guide-prose > .lano-guide-myth-reality {
	max-width: none;
}

@supports (text-wrap: pretty) {
	.lano-guide-prose p {
		text-wrap: pretty;
	}
}

/* ---------------------------------------------------------
   BESPOKE DARK CTA — TEXT COLOR SAFETY
   Phải đặt sau .lano-guide-prose
--------------------------------------------------------- */

.lano-local-guide .lano-guide-bespoke,
.lano-local-guide .lano-guide-bespoke .lano-guide-prose {
	color: #f7f5ef;
}

.lano-local-guide .lano-guide-bespoke .lano-guide-prose :where(
	p,
	span,
	div,
	li,
	small,
	em,
	b,
	i
) {
	color: inherit;
}

.lano-local-guide .lano-guide-bespoke .lano-guide-prose :where(
	p,
	span,
	div
) {
	background: transparent;
}

.lano-local-guide .lano-guide-bespoke .lano-guide-prose strong {
	color: #fff;
}

.lano-local-guide .lano-guide-bespoke .lano-guide-prose a {
	color: #f0d98f;
	text-decoration-color: rgba(240, 217, 143, 0.72);
}

.lano-local-guide .lano-guide-bespoke .lano-guide-prose a:hover,
.lano-local-guide .lano-guide-bespoke .lano-guide-prose a:focus-visible {
	color: #fff0b6;
	text-decoration-color: currentColor;
}

/* ---------------------------------------------------------
   GLOBAL INTERACTION / ACCESSIBILITY
--------------------------------------------------------- */

.lano-local-guide :where(
	a,
	button,
	summary,
	[role="button"],
	[tabindex]:not([tabindex="-1"]),
	.lano-guide-linkbox
):focus-visible {
	outline: 2px solid var(--lano-gold-dark);
	outline-offset: 4px;
	box-shadow: var(--lano-focus-ring);
}

.lano-local-guide :where(h2, h3, h4)[id] {
	scroll-margin-top: var(--lano-scroll-offset);
}

.lano-local-guide ::selection {
	background: var(--lano-gold-soft);
	color: var(--lano-heading);
}

/* ---------------------------------------------------------
   AUTHORITY DECISION COMPONENTS
--------------------------------------------------------- */

.lano-guide-decision,
.lano-guide-warning,
.lano-guide-experience {
	position: relative;
	margin: 26px 0;
	padding: 23px 24px;
	border: 1px solid var(--lano-border-strong);
	border-radius: 14px;
	background: var(--lano-white);
	box-shadow: var(--lano-shadow-sm);
}

.lano-guide-decision {
	border-left: 5px solid var(--lano-gold);
	background: linear-gradient(90deg, var(--lano-gold-pale), var(--lano-white) 58%);
}

.lano-guide-decision > :first-child,
.lano-guide-warning > :first-child,
.lano-guide-experience > :first-child {
	margin-top: 0;
}

.lano-guide-decision > :last-child,
.lano-guide-warning > :last-child,
.lano-guide-experience > :last-child {
	margin-bottom: 0;
}

.lano-guide-warning {
	border-color: rgba(155, 91, 34, 0.28);
	border-left: 5px solid var(--lano-warning);
	background: var(--lano-warning-soft);
}

.lano-guide-warning strong {
	color: #714016;
}

.lano-guide-experience {
	border-color: rgba(80, 107, 66, 0.28);
	border-left: 5px solid var(--lano-success);
	background: var(--lano-success-soft);
}

.lano-guide-experience strong {
	color: #405735;
}

.lano-guide-myth-reality {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	margin: 26px 0;
}

.lano-guide-myth-reality > div {
	min-width: 0;
	padding: 22px;
	border: 1px solid var(--lano-border);
	border-radius: 14px;
	background: var(--lano-white);
	box-shadow: 0 6px 18px rgba(31, 27, 18, 0.035);
}

.lano-guide-myth-reality .is-myth {
	border-top: 4px solid var(--lano-danger);
	background: linear-gradient(180deg, var(--lano-danger-soft), var(--lano-white) 55%);
}

.lano-guide-myth-reality .is-reality {
	border-top: 4px solid var(--lano-success);
	background: linear-gradient(180deg, var(--lano-success-soft), var(--lano-white) 55%);
}

.lano-guide-myth-reality h3 {
	margin-top: 0;
}

/* ---------------------------------------------------------
   COMPARISON STATUS BADGES
--------------------------------------------------------- */

.lano-guide-card.is-recommended,
.lano-guide-comparison > .is-recommended,
.lano-guide-card.is-consider,
.lano-guide-comparison > .is-consider,
.lano-guide-card.is-not-suitable,
.lano-guide-comparison > .is-not-suitable {
	position: relative;
	padding-top: 54px;
}

.lano-guide-card.is-recommended::before,
.lano-guide-comparison > .is-recommended::before,
.lano-guide-card.is-consider::before,
.lano-guide-comparison > .is-consider::before,
.lano-guide-card.is-not-suitable::before,
.lano-guide-comparison > .is-not-suitable::before {
	position: absolute;
	top: 17px;
	left: 18px;
	display: inline-flex;
	align-items: center;
	min-height: 25px;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.25;
	letter-spacing: 0.01em;
}

.lano-guide-card.is-recommended::before,
.lano-guide-comparison > .is-recommended::before {
	content: "Phù hợp khi";
	background: var(--lano-success-soft);
	color: var(--lano-success);
}

.lano-guide-card.is-consider::before,
.lano-guide-comparison > .is-consider::before {
	content: "Cần cân nhắc";
	background: var(--lano-gold-soft);
	color: var(--lano-gold-dark);
}

.lano-guide-card.is-not-suitable::before,
.lano-guide-comparison > .is-not-suitable::before {
	content: "Không phù hợp khi";
	background: var(--lano-danger-soft);
	color: var(--lano-danger);
}

/* ---------------------------------------------------------
   SEMANTIC DECISION TREE
--------------------------------------------------------- */

.lano-guide-decision-tree {
	margin: 28px 0;
	padding: 0;
	list-style: none;
	counter-reset: lano-decision-step;
}

.lano-guide-decision-tree > li {
	position: relative;
	margin: 0 0 16px;
	padding: 20px 20px 20px 62px;
	border: 1px solid var(--lano-border);
	border-radius: 14px;
	background: var(--lano-white);
	box-shadow: 0 5px 16px rgba(31, 27, 18, 0.03);
	counter-increment: lano-decision-step;
}

.lano-guide-decision-tree > li::before {
	content: counter(lano-decision-step);
	position: absolute;
	top: 18px;
	left: 18px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: var(--lano-gold);
	color: var(--lano-white);
	font-size: 13px;
	font-weight: 800;
}

.lano-guide-decision-tree > li:not(:last-child)::after {
	content: "";
	position: absolute;
	left: 31px;
	top: calc(100% + 1px);
	width: 2px;
	height: 16px;
	background: var(--lano-border-strong);
}

.lano-guide-decision-tree h3 {
	margin: 0 0 6px;
	font-size: 18px;
	line-height: 1.42;
}

.lano-guide-decision-tree p {
	margin: 0;
}

/* ---------------------------------------------------------
   COMPONENT SPACING AFTER PROSE
   Tạo khoảng thở giữa đoạn dẫn và component lớn phía sau
--------------------------------------------------------- */

.lano-guide-prose + .lano-guide-decision-tree {
	margin-top:28px;
}

.lano-guide-prose + .lano-guide-checklist,
.lano-guide-prose + .lano-guide-comparison,
.lano-guide-prose + .lano-guide-cards,
.lano-guide-prose + .lano-guide-myth-reality,
.lano-guide-prose + .lano-guide-table-wrap {
	 margin-top:24px;
}

/* ---------------------------------------------------------
   TABLE SYSTEM
   Preferred HTML: .lano-guide-table-wrap > table.lano-guide-table
--------------------------------------------------------- */

.lano-guide-table-wrap {
	width: 100%;
	margin: 24px 0;
	overflow-x: auto;
	border: 1px solid var(--lano-border);
	border-radius: 14px;
	background: var(--lano-white);
	box-shadow: var(--lano-shadow-sm);
	-webkit-overflow-scrolling: touch;
}

.lano-guide-table-wrap .lano-guide-table {
	min-width: 680px;
	margin: 0;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

.lano-guide-table caption {
	padding: 13px 16px;
	color: var(--lano-muted);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.5;
	text-align: left;
	caption-side: top;
}

.lano-guide-table thead th {
	position: sticky;
	top: 0;
	z-index: 2;
}

.lano-guide-table tbody tr {
	transition: background-color 0.18s ease;
}

.lano-guide-table tbody tr:hover {
	background: var(--lano-gold-pale);
}

.lano-guide-table td,
.lano-guide-table th {
	white-space: normal;
	overflow-wrap: anywhere;
}

/* ---------------------------------------------------------
   FIGURE / CAPTION — OPT IN
   Add .has-figure-numbering to .lano-local-guide when captions are consistent.
--------------------------------------------------------- */

.lano-local-guide.has-figure-numbering {
	counter-reset: lano-figure;
}

.lano-local-guide.has-figure-numbering figure:has(figcaption),
.lano-local-guide.has-figure-numbering .wp-caption:has(.wp-caption-text) {
	counter-increment: lano-figure;
}

.lano-local-guide.has-figure-numbering figcaption::before,
.lano-local-guide.has-figure-numbering .wp-caption-text::before {
	content: "Hình " counter(lano-figure) " — ";
	color: var(--lano-heading);
	font-weight: 700;
}

.lano-local-guide .wp-caption-text,
.lano-local-guide figcaption {
	max-width: 760px;
	margin-top: 11px;
	margin-right: auto;
	margin-left: auto;
}

/* ---------------------------------------------------------
   READING META / PROGRESS / HEADING LINKS
   Progress width and copy actions require lightweight JavaScript.
--------------------------------------------------------- */

.lano-guide-reading-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 7px 10px;
	margin: 0 0 24px;
	color: var(--lano-muted);
	font-size: 14px;
	line-height: 1.5;
}

.lano-guide-reading-progress {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	width: var(--lano-reading-progress, 0%);
	height: 3px;
	background: linear-gradient(90deg, var(--lano-gold-dark), var(--lano-gold-light));
	pointer-events: none;
}

.lano-local-guide :where(h2, h3)[id] {
	position: relative;
	padding-right: 42px;
}

.lano-guide-heading-link {
	position: absolute;
	top: 2px;
	right: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 7px;
	background: transparent;
	color: var(--lano-muted);
	font: inherit;
	font-size: 16px;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	opacity: 0;
	transition:
		opacity 0.18s ease,
		background-color 0.18s ease,
		color 0.18s ease;
}

.lano-local-guide :where(h2, h3):hover .lano-guide-heading-link,
.lano-guide-heading-link:focus-visible {
	opacity: 1;
}

.lano-guide-heading-link:hover {
	background: var(--lano-gold-soft);
	color: var(--lano-gold-dark);
}

/* ---------------------------------------------------------
   OPTIONAL LIGHTBOX SHELL
   Opening, ESC close and focus management require JavaScript.
--------------------------------------------------------- */

.lano-guide-lightbox {
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: none;
	place-items: center;
	padding: 24px;
	background: rgba(20, 19, 16, 0.92);
}

.lano-guide-lightbox.is-open {
	display: grid;
}

.lano-guide-lightbox img {
	max-width: min(1200px, 94vw);
	max-height: 86vh;
	margin: 0;
	border-radius: 10px;
	box-shadow: 0 18px 60px rgba(0, 0, 0, 0.35);
}

.lano-guide-lightbox-trigger {
	cursor: zoom-in;
}

.lano-guide-lightbox-trigger:focus-visible {
	outline: 3px solid rgba(136, 120, 57, 0.42);
	outline-offset: 4px;
}

.lano-guide-lightbox-inner {
	position: relative;
	display: grid;
	max-width: min(1200px, 94vw);
	max-height: 92vh;
	place-items: center;
}

.lano-guide-lightbox-caption {
	max-width: 820px;
	margin-top: 14px;
	color: rgba(255, 255, 255, 0.88);
	font-size: 14px;
	line-height: 1.6;
	text-align: center;
}

.lano-guide-lightbox-close {
	position: fixed;
	top: 16px;
	right: 16px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border: 1px solid rgba(255,255,255,0.34);
	border-radius: 50%;
	background: rgba(0,0,0,0.38);
	color: #fff;
	font-size: 25px;
	cursor: pointer;
}

/* ---------------------------------------------------------
   OPTIONAL HEADING NUMBERING
   Enable only on sequential tutorials/process articles.
--------------------------------------------------------- */

.lano-local-guide.has-heading-numbering {
	counter-reset: lano-h2;
}

.lano-local-guide.has-heading-numbering .lano-guide-section > h2:first-child {
	counter-increment: lano-h2;
}

.lano-local-guide.has-heading-numbering .lano-guide-section > h2:first-child::before {
	content: counter(lano-h2, decimal-leading-zero) ". ";
	color: var(--lano-gold-dark);
}

/* =========================================================
   LANO TOC SYSTEM
   Requires: Lano Authority Article Framework v3.2+
   Version: 2.0.0
========================================================= */

.lano-toc {
	--lano-toc-gold: var(--lano-gold, #887839);
	--lano-toc-gold-dark: var(--lano-gold-dark, #6f612d);
	--lano-toc-gold-soft: var(--lano-gold-soft, #f6f2e5);
	--lano-toc-heading: var(--lano-heading, #24221d);
	--lano-toc-text: var(--lano-text, #282828);
	--lano-toc-muted: var(--lano-muted, #666);
	--lano-toc-border: var(--lano-border, #e7e2d5);
	--lano-toc-progress: 0%;
	margin: 28px 0 36px;
}

.lano-toc__details {
	overflow: hidden;
	border: 1px solid rgba(136, 120, 57, 0.18);
	border-radius: 18px;
	background: linear-gradient(180deg, #faf7f2 0%, #f6f1ea 100%);
	box-shadow: 0 8px 24px rgba(31, 27, 18, 0.055);
}

.lano-toc__summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 76px;
	gap: 16px;
	padding: 15px 18px;
	cursor: pointer;
	list-style: none;
	-webkit-tap-highlight-color: transparent;
}

.lano-toc__summary::-webkit-details-marker {
	display: none;
}

.lano-toc__summary-main {
	display: flex;
	align-items: center;
	min-width: 0;
	gap: 12px;
}

.lano-toc__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	flex: 0 0 46px;
	border: 1px solid rgba(136, 120, 57, 0.18);
	border-radius: 14px;
	background: #fffdf9;
	color: var(--lano-toc-gold);
	box-shadow: 0 4px 12px rgba(31, 27, 18, 0.05);
}

.lano-toc__badge svg {
	display: block;
	width: 22px;
	height: 22px;
}

.lano-toc__title {
	display: block;
	color: var(--lano-toc-gold-dark);
	font-size: 17px;
	font-weight: 750;
	line-height: 1.35;
	letter-spacing: -0.01em;
}

.lano-toc__chevron {
	position: relative;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	transition: transform 0.22s ease;
}

.lano-toc__chevron::before,
.lano-toc__chevron::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	border-radius: 999px;
	background: var(--lano-toc-gold);
	transform: translate(-50%, -50%);
	transition: transform 0.22s ease, opacity 0.22s ease;
}

.lano-toc__chevron::before {
	width: 13px;
	height: 2px;
}

.lano-toc__chevron::after {
	width: 2px;
	height: 13px;
}

.lano-toc__details[open] .lano-toc__chevron {
	transform: rotate(180deg);
}

.lano-toc__details[open] .lano-toc__chevron::after {
	opacity: 0;
	transform: translate(-50%, -50%) scaleY(0.2);
}

.lano-toc__progress {
	padding: 4px 18px 13px;
}

.lano-toc__progress-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 7px;
	color: var(--lano-toc-muted);
	font-size: 12.5px;
	line-height: 1.4;
}

.lano-toc__progress-value {
	color: var(--lano-toc-gold-dark);
	font-variant-numeric: tabular-nums;
	font-weight: 700;
}

.lano-toc__progress-track {
	display: block;
	overflow: hidden;
	height: 5px;
	border-radius: 999px;
	background: rgba(136, 120, 57, 0.13);
}

.lano-toc__progress-bar {
	display: block;
	width: var(--lano-toc-progress);
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, var(--lano-toc-gold-dark), var(--lano-toc-gold));
	transition: width 0.12s linear;
}

.lano-toc__description {
	margin: 0;
	padding: 0 18px 9px;
	color: #6b6257;
	font-size: 13px;
	line-height: 1.7;
}

.lano-toc__list {
	margin: 0;
	padding: 10px 18px 18px;
	border-top: 1px solid rgba(42, 63, 52, 0.08);
	list-style: none;
}

.lano-toc__item {
	position: relative;
	margin: 0;
}

.lano-toc__item + .lano-toc__item {
	margin-top: 8px;
}

.lano-toc__link {
	position: relative;
	display: flex;
	align-items: flex-start;
	min-height: 46px;
	gap: 11px;
	padding: 11px 14px 11px 17px;
	border: 1px solid rgba(42, 63, 52, 0.065);
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.82);
	color: #3f3125;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.58;
	text-decoration: none;
	transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease, opacity 0.2s ease;
}

.lano-toc__link::before {
	content: "";
	width: 6px;
	height: 6px;
	margin-top: 9px;
	flex: 0 0 6px;
	border-radius: 999px;
	background: var(--lano-toc-gold);
	transition: width 0.2s ease, height 0.2s ease, margin 0.2s ease, border-radius 0.2s ease, background-color 0.2s ease;
}

.lano-toc__link:hover {
	border-color: rgba(136, 120, 57, 0.23);
	background: #fffdf8;
	color: var(--lano-toc-heading);
	box-shadow: 0 5px 14px rgba(31, 27, 18, 0.05);
	text-decoration: none;
}

/* Current section */
.lano-toc__item.is-active .lano-toc__link,
.lano-toc__link[aria-current="location"] {
	border-color: rgba(136, 120, 57, 0.32);
	background: #fffdf7;
	color: var(--lano-toc-gold-dark);
	box-shadow: inset 3px 0 0 var(--lano-toc-gold), 0 5px 14px rgba(31, 27, 18, 0.05);
}

.lano-toc__item.is-active .lano-toc__link::before,
.lano-toc__link[aria-current="location"]::before {
	width: 3px;
	height: 20px;
	margin-top: 2px;
	border-radius: 999px;
	background: var(--lano-toc-gold);
}

/* Already read: deliberately subtle, without extra checklist icon */
.lano-toc__item.is-read:not(.is-active) .lano-toc__link {
	opacity: 0.68;
}

.lano-toc__item.is-read:not(.is-active) .lano-toc__link::before {
	background: rgba(111, 97, 45, 0.58);
}

.lano-toc__summary:hover .lano-toc__title {
	color: var(--lano-toc-heading);
}

.lano-toc a:focus-visible,
.lano-toc button:focus-visible,
.lano-toc summary:focus-visible {
	outline: 3px solid rgba(136, 120, 57, 0.35);
	outline-offset: 3px;
}

.lano-toc__summary:focus-visible {
	border-radius: 14px;
}

.lano-local-guide h2[id],
.lano-local-guide h3[id],
.lano-local-guide h4[id] {
	scroll-margin-top: var(--lano-scroll-offset);
}

html.lano-smooth-scroll {
	scroll-behavior: smooth;
}

/* Fix decision box nằm trong section Bespoke */
.lano-guide-bespoke .lano-guide-decision{
	background:#fff;
	color:var(--lano-text);
}

.lano-guide-bespoke .lano-guide-decision h3{
	color:var(--lano-heading);
}

.lano-guide-bespoke .lano-guide-decision p,
.lano-guide-bespoke .lano-guide-decision li{
	color:var(--lano-text);
}

.lano-guide-bespoke .lano-guide-decision strong{
	color:var(--lano-gold-dark);
}


/* ---------------------------------------------------------
   ACCESSIBILITY / MOTION
--------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {
	.lano-local-guide *,
	.lano-local-guide *::before,
	.lano-local-guide *::after {
		scroll-behavior: auto !important;
		transition: none !important;
		animation: none !important;
	}
	html.lano-smooth-scroll {
		scroll-behavior: auto;
	}

	.lano-toc *,
	.lano-toc *::before,
	.lano-toc *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}

@media print {
	.lano-toc__progress {
		display: none !important;
	}

	.lano-toc__details {
		border: 1px solid #bbb;
		background: #fff !important;
		box-shadow: none !important;
	}

	.lano-toc__details:not([open]) > :not(summary) {
		display: block !important;
	}
}


/* ---------------------------------------------------------
   TABLET
--------------------------------------------------------- */

@media (max-width: 980px) {
	.lano-guide-split {
		grid-template-columns: minmax(250px, 0.82fr) minmax(0, 1.18fr);
		gap: 28px;
	}

	.lano-guide-split.is-reverse {
		grid-template-columns: minmax(0, 1.18fr) minmax(250px, 0.82fr);
	}

	.lano-guide-video-split {
		grid-template-columns: minmax(230px, 0.72fr) minmax(0, 1.28fr);
	}

	.lano-guide-video-short {
		width: min(100%, 270px);
	}

	.lano-guide-summary,
	.lano-guide-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.lano-guide-store-layout {
		grid-template-columns: minmax(240px, 0.9fr) minmax(0, 1.1fr);
	}
}

/* ---------------------------------------------------------
   MOBILE
--------------------------------------------------------- */

@media (max-width: 820px) {
	.lano-guide-split,
	.lano-guide-split.is-reverse,
	.lano-guide-video-split {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.lano-guide-split.is-reverse .lano-guide-split-media,
	.lano-guide-split.is-reverse .lano-guide-split-content {
		order: initial;
	}

	.lano-guide-split-media .gallery,
	.lano-guide-split-media .lano-guide-image,
	.lano-guide-split-media figure,
	.lano-guide-split-media .wp-caption {
		max-width: 520px !important;
	}

	.lano-guide-video-short {
		width: min(100%, 300px);
	}

	.lano-guide-video-split .lano-guide-split-content {
		padding-top: 2px;
	}

	.lano-local-guide {
		--lano-prose-font-size: 1rem;
		--lano-prose-line-height: 1.82;
		--lano-prose-paragraph-gap: 1.15rem;
		--lano-scroll-offset: 92px;
		font-size: 16px;
		line-height: 1.76;
	}

	.lano-guide-prose {
		letter-spacing: 0;
	}

	.lano-guide-prose :where(ul, ol) {
		padding-left: 1.25rem;
	}

	.lano-guide-summary,
	.lano-guide-cards,
	.lano-guide-checklist,
	.lano-guide-product-list,
	.lano-guide-store-layout,
	.lano-guide-comparison {
		grid-template-columns: 1fr;
	}

	.lano-guide-store-layout {
		align-items: start;
	}

	.lano-guide-section,
	.lano-guide-store,
	.lano-guide-bespoke,
	.lano-guide-conclusion {
		padding: 24px 19px;
	}

	.lano-wallet-process .lano-guide-section {
		padding-left: 28px;
	}

	.lano-wallet-process .lano-guide-section::before,
	.lano-wallet-process .lano-guide-section > h2:first-child::before {
		display: none;
	}

	.lano-guide-hotline a,
	.lano-guide-button {
		width: 100%;
	}

	.lano-guide-actions {
		display: grid;
		grid-template-columns: 1fr;
	}

	.lano-local-guide h2.lano-guide-kicker {
		padding: 9px 14px;
		font-size: 13px;
		line-height: 1.4;
	}

	.lano-guide-intro {
		padding: 25px 19px;
	}

	.lano-guide-table:not(.lano-guide-table-wrap .lano-guide-table) {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.lano-guide-table-wrap .lano-guide-table {
		min-width: 620px;
	}

	.lano-local-guide .wp-caption,
	.lano-local-guide figure {
		width: 100%;
		padding: 8px;
		border-radius: 14px;
	}

	.lano-local-guide .wp-caption-text,
	.lano-local-guide figcaption {
		padding-inline: 4px;
		font-size: 13px;
	}

	.lano-guide-myth-reality {
		grid-template-columns: 1fr;
	}

	.lano-local-guide :where(h2, h3)[id] {
		padding-right: 0;
	}

	
	.lano-guide-heading-link {
		display: none;
	}

	.lano-guide-insight {
		padding: 20px 18px 20px 52px;
	}

	.lano-guide-decision-tree > li {
		padding: 18px 17px 18px 56px;
	}

	.lano-guide-decision-tree > li::before {
		top: 16px;
		left: 15px;
	}

	.lano-guide-decision-tree > li:not(:last-child)::after {
		left: 28px;
	}

	.lano-guide-prose + .lano-guide-decision-tree {
		margin-top: 20px;
	}

	.lano-guide-prose + .lano-guide-checklist,
	.lano-guide-prose + .lano-guide-comparison,
	.lano-guide-prose + .lano-guide-cards,
	.lano-guide-prose + .lano-guide-myth-reality,
	.lano-guide-prose + .lano-guide-table-wrap {
		margin-top:18px;
	}

}

@media (max-width: 767px) {
	.lano-toc {
		margin: 22px 0 30px;
	}

	.lano-toc__details {
		border-radius: 16px;
	}

	.lano-toc__summary {
		min-height: 68px;
		gap: 12px;
		padding: 13px 15px;
	}

	.lano-toc__badge {
		width: 42px;
		height: 42px;
		flex-basis: 42px;
		border-radius: 12px;
	}

	.lano-toc__badge svg {
		width: 20px;
		height: 20px;
	}

	.lano-toc__title {
		font-size: 15px;
	}

	.lano-toc__progress {
		padding: 3px 15px 12px;
	}

	.lano-toc__description {
		padding: 0 15px 8px;
		font-size: 12.5px;
		line-height: 1.65;
	}

	.lano-toc__list {
		padding: 8px 15px 15px;
	}

	.lano-toc__link {
		min-height: 44px;
		padding: 10px 12px 10px 14px;
		border-radius: 10px;
		font-size: 14px;
		line-height: 1.6;
	}

	/* =========================================================
   PRODUCT COMPARISON TABLE — MOBILE CARD LAYOUT
   Chỉ áp dụng cho bảng có class .lano-product-comparison-table
	========================================================= */
	.lano-local-guide .lano-product-comparison-table{
		overflow:visible;
		border:0;
		background:transparent;
		box-shadow:none;
	}

	.lano-local-guide .lano-product-comparison-table table{
		display:block;
		width:100%;
		min-width:0;
		border:0;
		background:transparent;
	}

	.lano-local-guide .lano-product-comparison-table caption{
		display:block;
		width:100%;
		margin:0 0 14px;
		padding:12px 14px;
		border:1px solid var(--lano-border);
		border-radius:12px;
		background:var(--lano-white);
		text-align:left;
	}

	.lano-local-guide .lano-product-comparison-table thead{
		display:none;
	}

	.lano-local-guide .lano-product-comparison-table tbody{
		display:block;
	}

	.lano-local-guide .lano-product-comparison-table tr{
		display:block;
		margin:0 0 16px;
		overflow:hidden;
		border:1px solid var(--lano-border);
		border-radius:14px;
		background:var(--lano-white);
		box-shadow:var(--lano-shadow-sm);
	}

	.lano-local-guide .lano-product-comparison-table th,
	.lano-local-guide .lano-product-comparison-table td{
		display:block;
		width:100%;
		border:0;
		text-align:left;
	}

	.lano-local-guide .lano-product-comparison-table tbody th{
		padding:13px 15px;
		border-bottom:1px solid var(--lano-border);
		background:var(--lano-gold-soft);
		color:var(--lano-gold-dark);
		font-weight:700;
	}

	.lano-local-guide .lano-product-comparison-table td{
		padding:14px 15px;
		border-bottom:1px solid var(--lano-border);
	}

	.lano-local-guide .lano-product-comparison-table td:last-child{
		border-bottom:0;
	}

	.lano-local-guide .lano-product-comparison-table td::before{
		display:block;
		margin:0 0 5px;
		color:var(--lano-gold-dark);
		font-size:.78rem;
		font-weight:700;
		line-height:1.35;
		text-transform:uppercase;
		letter-spacing:.03em;
		content:attr(data-label);
	}
}

@media (max-width: 520px) {
	.lano-local-guide h2 {
		font-size: 25px;
	}

	.lano-local-guide h3 {
		font-size: 20px;
	}

	.lano-guide-summary-item,
	.lano-guide-card,
	.lano-guide-comparison > div {
		padding: 17px;
	}

	.lano-guide-note,
	.lano-guide-linkbox,
	.lano-guide-quote {
		padding: 18px;
	}
}

/* ---------------------------------------------------------
   PRINT
--------------------------------------------------------- */

@media print {
	.lano-local-guide {
		color: #000 !important;
		font-size: 11pt;
		line-height: 1.55;
	}

	.lano-local-guide *,
	.lano-local-guide *::before,
	.lano-local-guide *::after {
		box-shadow: none !important;
		text-shadow: none !important;
	}

	.lano-local-guide a {
		color: #000 !important;
		text-decoration: underline !important;
	}

	.lano-guide-actions,
	.lano-guide-button,
	.lano-guide-hotline,
	.lano-guide-reading-progress,
	.lano-guide-heading-link,
	.lano-guide-lightbox,
	.lano-local-guide .lano-toc-toggle,
	.lano-local-guide [data-toc-toggle] {
		display: none !important;
	}

	.lano-guide-intro,
	.lano-guide-section,
	.lano-guide-store,
	.lano-guide-bespoke,
	.lano-guide-conclusion,
	.lano-guide-card,
	.lano-guide-comparison > div,
	.lano-guide-note,
	.lano-guide-insight,
	.lano-guide-decision,
	.lano-guide-warning,
	.lano-guide-experience,
	.lano-guide-myth-reality > div {
		border-color: #bbb !important;
		background: #fff !important;
		color: #000 !important;
	}

	.lano-guide-bespoke h2,
	.lano-guide-bespoke h3,
	.lano-guide-bespoke p,
	.lano-guide-bespoke li,
	.lano-guide-bespoke strong,
	.lano-guide-bespoke a {
		color: #000 !important;
	}

	.lano-guide-section,
	.lano-guide-store,
	.lano-guide-bespoke,
	.lano-guide-conclusion,
	.lano-local-guide figure,
	.lano-local-guide .wp-caption,
	.lano-guide-table-wrap,
	.lano-guide-table tr {
		break-inside: avoid;
		page-break-inside: avoid;
	}

	.lano-local-guide h2,
	.lano-local-guide h3,
	.lano-local-guide h4 {
		break-after: avoid;
		page-break-after: avoid;
	}

	.lano-local-guide img {
		max-width: 100% !important;
		page-break-inside: avoid;
	}

	.lano-guide-table-wrap {
		overflow: visible;
		border: 1px solid #bbb;
	}

	.lano-guide-table-wrap .lano-guide-table,
	.lano-guide-table {
		display: table;
		min-width: 0;
		width: 100%;
	}

	.lano-guide-table thead th {
		position: static;
		background: #eee !important;
		color: #000 !important;
	}
}