.lp {
	--ink: #241F1C;
	--ink2: #564E48;
	--muted: #8A8077;
	--line: #E8E2DA;
	--cream: #FAF8F5;
	--blue: #0061EF;
	--blue-hover: #0055D1;
	--blue-tint: #D6E4FC;
	--butter: #F2E8CF;
	--peach: #FFE3D4;
	--peach-ink: #8A3418;
	--track: #F1ECE4;
	--green: #00B67A;
	--ease: cubic-bezier(0.32, 0.94, 0.6, 1);
	--gx: 20px;
	--hl: var(--blue);

	--lp-reveal-duration: 400ms;
	--lp-reveal-fade-duration: 300ms;
	--lp-reveal-distance: 12px;
	--lp-reveal-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--lp-reveal-stagger: 80ms;

	background: var(--cream);
	color: var(--ink);
	font: 400 14px/1.5 "Inter", sans-serif;
	-webkit-font-smoothing: antialiased;
}

.lp *, .lp *::before, .lp *::after { box-sizing: border-box; }
body.lp-page { background: #FAF8F5; }
.lp div, .lp a, .lp button { font-family: "Inter", sans-serif; }
.lp a { color: var(--ink); text-underline-offset: 2px; }
.lp a:hover { color: var(--ink2); }
.lp button { color: var(--ink); }
.lp p { margin: 0; }
.lp h3 { float: none; height: auto; margin-left: 0; margin-right: 0; }
.lp .heading-color { color: var(--ink); -webkit-text-fill-color: currentColor; }

.lp h1, .lp h2, .lp-d {
	font-family: "DM Sans", sans-serif;
	font-weight: 600;
	letter-spacing: -.025em;
	color: var(--ink);
	text-wrap: balance;
}
.lp h2 { margin: 0; font-size: 40px; line-height: 1.1; }
.lp h2 b, .lp h2 strong, .lp h1 .special-text { font-weight: 600; color: var(--hl); }

.lp-sec { padding: 56px var(--gx); }

.lp .lp-buy, .lp .pkgp-continue {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 48px;
	border: 0;
	border-radius: 2rem;
	background: #0061EF;
	color: #FFFFFF;
	font: 700 16px/1.1 Inter, sans-serif;
	box-shadow: 0 .125rem 0 rgba(65, 61, 69, .2);
	cursor: pointer;
	transition: background-color 150ms cubic-bezier(.32, .94, .6, 1), transform 150ms cubic-bezier(.32, .94, .6, 1);
	padding: 0 28px;
	text-decoration: none;
}
.lp .lp-buy:hover, .lp .pkgp-continue:hover { background: #0055D1; color: #FFFFFF; }
.lp .lp-buy:active, .lp .pkgp-continue:active { transform: translateY(1px); }
.lp .pkgp-continue.is-loading { opacity: .7; pointer-events: none; }

.lp-ghost {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 18px;
	border: 1px solid var(--line);
	border-radius: 99px;
	background: #fff;
	font: 600 14px "Inter", sans-serif;
	color: var(--ink);
	text-decoration: none;
	cursor: pointer;
}
.lp-ghost:hover { border-color: var(--ink); color: var(--ink); }

.lp-hero { padding: 11px 15px 0; }
.lp-hero h1 { margin: 12px 0 0; font-size: 36px; line-height: 1.15; }
.lp-ig { display: inline-block; width: .82em; height: .82em; margin-right: .14em; vertical-align: -.08em; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; }
.lp-ig .lp-ig-dot { fill: currentColor; }
.lp .lp-intro { width: auto; max-width: none; margin-top: 14px !important; font-size: 14px; line-height: 1.5; color: var(--ink2); text-wrap: pretty; }
.lp-hero .sv-rating-row { margin-bottom: 0; }
.lp-hero, .lp-hero .banner { background: transparent !important; }

.lp-live { display: flex; align-items: center; gap: 8px; margin: 22px 0 14px; font-size: 12.5px; color: var(--ink2); transition: opacity .3s; }
.lp-live[hidden] { display: flex; visibility: hidden; }
.lp-live.is-fading { opacity: 0; }
.lp-live-pill { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px 4px 8px; border-radius: 99px; background: #DDF3E8; color: #0F5C3E; font-weight: 600; }
.lp-live-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 3px rgba(0, 182, 122, .18); }

.lp-tog { display: grid; grid-template-columns: 1fr 1fr; padding: 4px; border-radius: 99px; background: var(--track); }
.lp-tog-w { position: relative; }
.lp-tog-b {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	width: 100%;
	min-height: 40px;
	padding: 0 26px 0 8px;
	border: 0;
	border-radius: 99px;
	background: transparent;
	font: 600 14px "Inter", sans-serif;
	color: var(--ink2) !important;
	cursor: pointer;
	transition: background-color 150ms var(--ease);
}
.lp-tog-b[aria-checked="true"] { background: #fff; color: var(--ink) !important; box-shadow: 0 1px 0 rgba(65, 61, 69, .12); }
.lp-tog-ic { flex: none; width: 17px; height: 17px; color: #9A9087; transition: color 150ms; }
.lp-tog-b[aria-checked="true"] .lp-tog-ic { color: var(--blue); }
.lp-tog-badge { position: absolute; top: -9px; right: 10px; padding: 1px 6px; border-radius: 99px; background: var(--peach); color: var(--peach-ink); font: 700 9.5px "Inter", sans-serif; letter-spacing: .03em; text-transform: uppercase; pointer-events: none; }
.lp-inf {
	position: absolute;
	top: 50%;
	right: 10px;
	display: grid;
	place-items: center;
	width: 18px;
	height: 18px;
	padding: 0;
	transform: translateY(-50%);
	border: 1.3px solid currentColor;
	border-radius: 50%;
	background: transparent;
	color: var(--ink2) !important;
	font: italic 600 10.5px/1 Georgia, serif;
	cursor: pointer;
}
.lp-inf::before { content: ""; position: absolute; inset: -13px; }
.lp-inf:hover { background: #fff; color: var(--ink) !important; }

.lp .pkgp { margin-top: 14px; }
.lp .pkgp--rows .pkgp-grid { overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.lp .pkgp--rows .pkgp-tile {
	display: grid;
	grid-template-columns: 18px 1fr auto;
	gap: 12px;
	align-items: center;
	padding: 12px 14px;
	border-top: 1px solid var(--line);
	background: #fff;
	color: var(--ink);
	text-decoration: none;
	transition: background-color 150ms var(--ease);
}
.lp .pkgp--rows .pkgp-tile:first-child { border-top: 0; }
.lp .pkgp--rows .pkgp-tile.is-extra { display: none; }
.lp .pkgp--rows.is-expanded .pkgp-tile.is-extra { display: grid; }
.lp .pkgp--rows .pkgp-tile.is-selected { border-top-color: transparent; border-radius: 14px; background: var(--blue-tint); box-shadow: inset 0 0 0 2px var(--blue); }
.lp .pkgp--rows .pkgp-tile.is-selected + .pkgp-tile { border-top-color: transparent; }
.lp .pkgp--rows .is-selected .pkgp-qty, .lp .pkgp--rows .is-selected .pkgp-price { color: var(--blue); }
.lp .pkgp-radio { display: grid; place-items: center; width: 16px; height: 16px; border: 1.5px solid #BDB5AC; border-radius: 50%; }
.lp .is-selected .pkgp-radio { border-color: var(--blue); }
.lp .is-selected .pkgp-radio::after { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--blue); }
.lp .pkgp--rows .pkgp-qty { font: 600 18px "DM Sans", sans-serif; letter-spacing: -.025em; }
.lp .pkgp--rows .pkgp-unit { margin-left: 4px; font: 400 12.5px "Inter", sans-serif; letter-spacing: 0; text-transform: lowercase; color: var(--ink2); }
.lp .pkgp--rows .pkgp-badge { margin-left: 6px; padding: 1px 6px; border-radius: 99px; background: var(--butter); font: 700 9.5px "Inter", sans-serif; letter-spacing: .03em; text-transform: uppercase; vertical-align: 2px; }
.lp .pkgp--rows .pkgp-price { font-weight: 600; font-size: 14px; }
.lp .pkgp--rows .pkgp-more { display: block; min-height: 32px; margin: 10px auto 4px; padding: 0; border: 0; background: none; font: 500 13.5px "Inter", sans-serif; text-decoration: underline; text-underline-offset: 2px; cursor: pointer; }
.lp .pkgp--rows .pkgp-more:hover { color: var(--ink2); }
.lp .pkgp--rows.is-expanded .pkgp-more { display: none; }
.lp .pkgp--rows .pkgp-summary { margin-top: 10px; }
.lp .pkgp-cta-unit { text-transform: lowercase; }

.lp-pay { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px; margin-top: 16px; font-size: 12.5px; color: var(--ink2); }
.lp-pay > span:first-child { margin-right: 4px; }
.lp-pay span { display: inline-flex; align-items: center; gap: 6px; }
.lp-pay .pkgp-pay { display: inline-flex; align-items: center; justify-content: center; height: 24px; min-width: 38px; padding: 0 5px; border: 1px solid var(--line); border-radius: 5px; background: #fff; }
.lp-pay .pkgp-pay img, .lp-pay .pkgp-pay svg { display: block; height: auto; max-height: 15px; }
.lp-pay .pkgp-pay-dark { border-color: #000; background: #000; }
.lp-pay .pkgp-pay-dark img { max-height: 13px; filter: invert(1); }
.lp-pay .pkgp-pay-badge { overflow: hidden; padding: 0; }
.lp-pay .pkgp-pay-badge img { width: 36px; max-height: none; }
.lp-bens { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 10px; margin: 18px 0 0; padding: 18px 0 0; border-top: 1px solid var(--line); list-style: none; }
.lp-bens li { display: grid; grid-template-columns: 22px 1fr; column-gap: 10px; align-items: start; font-size: 12.5px; line-height: 1.3; color: var(--ink2); }
.lp-bens svg { grid-row: span 2; margin-top: 1px; color: var(--ink2); }
.lp-bens b { font-size: 13px; font-weight: 600; color: var(--ink); }
.lp-bens span, .lp-bens b { display: block; }
.lp .lp-bens-link { display: block; color: inherit; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; }
.lp .lp-bens-link:hover { color: var(--ink); }

.lp svg.lp-ic { fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }

.lp-eyebrow { display: block; font-size: 11.5px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }

.lp .brands-wrap { padding-top: 24px; }
.lp .brands .item a { display: block; background-color: #21172E; -webkit-mask: var(--logo) center / contain no-repeat; mask: var(--logo) center / contain no-repeat; }
.lp .brands .item img { display: block; opacity: 0; }
.lp .brands > .lp-eyebrow { font-size: 11.5px; }

.lp-why { margin-top: 32px; padding: 48px 0 40px; }
.lp-why h2 { padding: 0 var(--gx); }
.lp-cards { display: grid; gap: 20px; margin: 0; padding: 36px 14px 0; list-style: none; }
.lp-card { position: relative; padding: 22px 22px 24px; border-radius: 20px; color: var(--ink); }
.lp-card--yellow { background: #FFCE00; }
.lp-card--pink { background: #FFA1CC; }
.lp-card--sage { background: #C4DDC0; }
.lp-card--lilac { background: #D3C8F5; }
.lp-card h3 { margin: 0; padding-right: 52px; font: 600 22px/1.2 "DM Sans", sans-serif; letter-spacing: -.02em; color: var(--ink); text-wrap: balance; }
.lp-card p { margin-top: 6px; font-size: 14.5px; line-height: 1.5; text-wrap: pretty; }
.lp-card-ill { position: absolute; top: -16px; right: 4px; width: 64px; height: 64px; pointer-events: none; }

.lp-how { --hl: #9A5B00; background: #FBF1D9; }
.lp-lead { margin-top: 10px !important; font-size: 14.5px; color: var(--ink2); }
.lp-how .guideline { counter-reset: none; margin: 26px 0; }
.lp-how .guide { display: grid; grid-template-columns: 40px 1fr; gap: 14px; align-items: center; padding: 14px 0; border-top: 1px solid rgba(36, 31, 28, .1); }
.lp-how .guide:last-child { border-bottom: 1px solid rgba(36, 31, 28, .1); }
.lp-how .seqNum { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: #fff; font: 600 18px "DM Sans", sans-serif; letter-spacing: -.025em; }
.lp-how .para { font-size: 15px; line-height: 1.45; }
.lp .lp-how-note { margin: -6px 0 26px !important; }

.lp-more { text-align: center; }
.lp-more .lp-lead { margin: 10px 0 22px !important; }
.lp .lp-more .lp-lead a { color: var(--blue); }

.lp-revs { --hl: #1F7A47; background: #E6F4EC; }
.lp-revs h2 { text-align: center; }
.lp-revs .rv-summary { justify-content: center; margin: 12px 0 8px; }
.lp-rvs { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 24px; text-align: left; }
.lp-rv { display: flex; flex-direction: column; margin: 0; padding: 16px; border: 1px solid var(--line); border-radius: 18px; background: #fff; }
.lp-rv-stars { display: block; color: var(--green); line-height: 0; }
.lp-rv-stars svg { width: auto; height: 13px; }
.lp-rv blockquote { margin: 8px 0 10px; font-size: 13.5px; line-height: 1.45; color: var(--ink); display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden; }
.lp-rv figcaption { display: flex; align-items: center; gap: 12px; margin-top: auto; font-size: 12.5px; }
.lp-rv figcaption b { display: block; font-weight: 600; color: var(--ink); }
.lp-rv figcaption small { display: block; font-size: 12px; color: var(--ink2); }
.lp-rv-av { display: none; flex: none; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: var(--butter); font: 600 13px "Inter", sans-serif; color: var(--ink); }
.lp-rv:not(.lp-rv--featured) figcaption small { display: none; }
.lp-rv--featured { grid-column: 1 / -1; padding: 24px 22px; border-radius: 22px; }
.lp-rv--featured .lp-rv-stars { display: none; }
.lp-rv--featured blockquote { margin: 0; font: 600 19px/1.4 "DM Sans", sans-serif; letter-spacing: -.01em; -webkit-line-clamp: 8; text-wrap: pretty; }
.lp-rv--featured figcaption { margin-top: 20px; font-size: 14px; }
.lp-rv--featured figcaption small { font-size: 12.5px; }
.lp-rv--featured .lp-rv-av { display: grid; }
.lp-revs .rv-carousel { display: none; }
.lp-revs .review-card.review-card--v2 { border: 1px solid var(--line); border-radius: 20px; background: #fff; text-align: left; }
.lp-revs .review-card--v2 .stars .sv-stars { color: var(--green); }
.lp-revs .review-card--v2 .review { color: var(--ink); }
.lp-revs .review-card--v2 .name { color: var(--ink); }
.lp-revs .review-card--v2 .avatar { background: var(--butter); color: var(--ink); }
.lp-revs .rv-dot { background-color: rgba(36, 31, 28, .15); }
.lp-revs .rv-dot[aria-current="true"] { background-color: var(--ink); }
.lp-revs .rv-actions { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 20px; }
.lp-revs .rv-all { font-size: 14.5px; color: var(--ink); }
.lp-revs .rv-write { min-height: 44px; border: 1px solid var(--line); border-radius: 99px; background: #fff; color: var(--ink); }
.lp-revs .rv-write:hover { border-color: var(--ink); color: var(--ink); }

.lp-art { --hl: #6A4BC4; background: #F4F1FA; }
.lp-art h2 { margin-bottom: 20px; }
.lp-art h2 ~ h2 { margin-top: 56px; }
.lp-art--plain { --hl: var(--blue); background: var(--cream); }
.lp-art p, .lp-art li, .lp-art-p, .lp .lp-art .informationpt p { font-size: 15px; line-height: 1.65; color: var(--ink2); }
.lp-art p + p { margin-top: 14px; }
.lp .lp-art h3 { margin: 28px 0 8px; font: 600 17px/1.35 "Inter", sans-serif; letter-spacing: 0; color: var(--ink); }
.lp-art ul { margin: 6px 0 14px; padding-left: 20px; }
.lp-art .heading-list { margin: 0; padding: 0; list-style: none; }
.lp-art .heading-list li { margin: 0; }
.lp .lp-art .heading-list h3 { margin-top: 28px; }
.lp .lp-art .informationpt { float: none; width: auto; margin: 0; padding: 0; text-align: left; }
.lp .lp-art a { color: var(--blue); }
.lp .lp-art a:hover { color: var(--blue-hover); }
.lp-art-img { display: block; width: auto; max-width: 100%; height: auto; max-height: 240px; margin: 24px auto 4px; border-radius: 16px; object-fit: contain; }

.lp-faq { --hl: #B4461F; background: #FCEDE4; }
.lp-faq h2 { margin-bottom: 20px; }
.lp-faq details { border-top: 1px solid rgba(36, 31, 28, .1); }
.lp-faq details:last-of-type { border-bottom: 1px solid rgba(36, 31, 28, .1); }
.lp-faq summary { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 18px 2px; list-style: none; cursor: pointer; }
.lp-faq summary::-webkit-details-marker { display: none; }
.lp-faq summary h3 { margin: 0; font: 600 15px/1.35 "Inter", sans-serif; color: var(--ink); }
.lp-faq summary::after { content: "+"; flex: none; display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid var(--line); border-radius: 50%; background: #fff; font-size: 18px; color: var(--ink); }
.lp-faq details[open] summary::after { content: "\2212"; }
.lp-faq-a { padding: 0 2px 18px; font-size: 14.5px; line-height: 1.6; color: var(--ink2); }
.lp-faq-a p + p, .lp-faq-a ul { margin-top: 10px; }
.lp-faq-a a { color: var(--blue); }
.lp-faq-more { display: flex; justify-content: center; margin-top: 24px; }

.lp-ready { --hl: #B8325A; background: #F9E8EC; text-align: center; }
.lp-ready .lp-lead { margin: 10px 0 22px !important; }
.lp-ready .lp-eyebrow { margin: 28px 0 12px; font-size: 12px; }
.lp-xs { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 0; padding: 0; list-style: none; }
.lp-xs a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 16px; border: 1px solid var(--line); border-radius: 99px; background: #fff; font-size: 14px; font-weight: 500; text-decoration: none; }
.lp-xs a:hover { border-color: var(--ink); color: var(--ink); }

.lp-sticky {
	position: fixed;
	bottom: 0;
	left: 50%;
	z-index: 45;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	width: 100%;
	max-width: 600px;
	padding: 10px 12px calc(12px + env(safe-area-inset-bottom)) 18px;
	transform: translateX(-50%);
	border-top: 1px solid var(--line);
	border-radius: 18px 18px 0 0;
	background: #fff;
}
.lp-sticky[hidden] { display: none; }
.lp-sticky b { display: block; font: 600 16px "DM Sans", sans-serif; letter-spacing: -.02em; }
.lp-sticky small { font-size: 13px; color: var(--ink2); }
.lp .lp-sticky .lp-buy { width: auto; }

.lp-sheet { position: fixed; inset: 0; z-index: 100000; }
.lp-sheet[hidden] { display: none; }
.lp-sheet-bg { position: absolute; inset: 0; background: rgba(36, 31, 28, .35); }
.lp-sheet-p {
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 100%;
	max-width: 420px;
	max-height: 88vh;
	overflow: auto;
	padding: 18px 14px 22px;
	transform: translateX(-50%);
	border-radius: 24px 24px 0 0;
	background: var(--cream);
}
.lp-sheet-h { display: flex; justify-content: space-between; align-items: center; margin: 0 4px 14px; }
.lp-sheet-t { margin: 0; font: 600 22px/1.2 "DM Sans", sans-serif; letter-spacing: -.025em; color: var(--ink); }
.lp-x { width: 36px; height: 36px; border: 1px solid var(--line); border-radius: 50%; background: #fff; font-size: 20px; line-height: 1; cursor: pointer; }
.lp-cmp { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 10px; align-items: stretch; }
.lp-cmp-c { position: relative; display: flex; flex-direction: column; gap: 14px; padding: 18px 14px 16px; border: 1px solid var(--line); border-radius: 16px; background: #fff; transition: background-color 150ms var(--ease), box-shadow 150ms var(--ease); }
.lp-cmp-t { margin: 0; font: 600 16px/1.2 "DM Sans", sans-serif; letter-spacing: -.02em; color: var(--ink); text-wrap: balance; }
.lp-cmp-t .lp-tog-badge { position: absolute; top: -9px; right: 12px; }
.lp-cmp-list { display: grid; gap: 9px; margin: 0; padding: 0; list-style: none; }
.lp-cmp-list li { display: grid; grid-template-columns: 16px 1fr; gap: 7px; align-items: start; font-size: 12.5px; line-height: 1.35; color: var(--ink2); }
.lp-cmp-list svg { margin-top: 0; color: var(--green); }
.lp-cmp-list b, .lp-cmp-list a { color: var(--ink); }
.lp-cmp-av { overflow: hidden; margin-top: auto; -webkit-mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); }
.lp-cmp-track { display: flex; width: max-content; animation: lp-cmp-scroll 25s linear infinite; }
[data-tier-card="2"] .lp-cmp-track { animation-duration: 20s; }
.lp-cmp-track img { flex: none; width: 34px; height: 34px; margin-right: 6px; border-radius: 50%; object-fit: cover; }
@keyframes lp-cmp-scroll { to { transform: translateX(-50%); } }
.lp-ch { justify-self: start; align-self: flex-start; min-height: 36px; padding: 0 18px; border: 1px solid var(--ink); border-radius: 99px; background: #fff; font: 600 13px "Inter", sans-serif; cursor: pointer; }
.lp-ch:hover { background: var(--track); }
.lp-cmp-c.is-on { border-color: transparent; background: var(--blue-tint); box-shadow: inset 0 0 0 2px var(--blue); }
.lp-cmp-c.is-on .lp-cmp-t { color: var(--blue); }
.lp-cmp-d { margin: -6px 0 0; font-size: 12.5px; line-height: 1.45; color: var(--ink2); }
.lp-cmp-d b { color: var(--ink); font-weight: 600; }
.lp-cmp-c.is-on .lp-ch { border-color: var(--blue); background: var(--blue); color: #fff; }

.lp-reveal-pending { opacity: 0; transform: translate3d(0, var(--lp-reveal-distance), 0); }
.lp-reveal-pending.lp-reveal-fade { transform: none; }
.lp .lp-reveal-in {
	transition: opacity var(--lp-reveal-duration) var(--lp-reveal-ease), transform var(--lp-reveal-duration) var(--lp-reveal-ease);
	transition-delay: calc(var(--lp-reveal-index, 0) * var(--lp-reveal-stagger));
}
.lp .lp-reveal-in.lp-reveal-fade { transition-duration: var(--lp-reveal-fade-duration); }
@media print { .lp-reveal-pending { opacity: 1; transform: none; } }

@media (prefers-reduced-motion: reduce) {
	.lp-reveal-pending { opacity: 1; transform: none; }
	.lp *, .lp-sheet * { transition: none !important; }
	.lp-cmp-track { animation: none; }
}

@media (min-width: 600px) {
	.lp { --gx: max(20px, calc((100% - 600px) / 2)); }
	.lp-hero { padding-left: var(--gx); padding-right: var(--gx); }
	.lp-cards { padding: 24px var(--gx) 0; }
}

@media (min-width: 1024px) {
	.lp { --gx: max(40px, calc((100% - 1040px) / 2)); }
	.lp h2 { font-size: 60px; line-height: 1.05; text-align: center; }
	.lp-sec { padding: 96px var(--gx); }

	.lp-hero { padding-top: 0; }
	.lp .lp-hero-in { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 72px; max-width: 1040px; margin: 0 auto; padding: 24px 0 16px; }
	.lp-hero-in > * { grid-column: 1; }
	.lp-hero h1 { margin-top: 16px; font-size: 52px; line-height: 1.08; }
	.lp-intro { margin-top: 20px !important; font-size: 16px; }

	.lp-why { margin-top: 24px; padding: 96px var(--gx); }
	.lp-why h2 { padding: 0; }
	.lp-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; padding: 64px 0 0; }
	.lp-card { padding: 28px 26px; border-radius: 22px; }
	.lp-card h3 { padding-right: 60px; font-size: 24px; }
	.lp-cards--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 44px; }
	.lp-card-ill { top: -20px; width: 76px; height: 76px; }
	.lp-card p { font-size: 15px; }

	.lp-how, .lp-revs { text-align: center; }
	.lp-lead { margin-top: 14px !important; font-size: 16px; }
	.lp-how .guideline { display: grid; grid-auto-columns: minmax(0, 1fr); grid-auto-flow: column; align-items: start; max-width: 900px; margin: 56px auto 48px; }
	.lp-how .guideline:has(> .guide:nth-child(4)) { max-width: 1040px; }
	.lp .lp-how-note { max-width: 720px; margin: -16px auto 40px !important; }
	.lp-how .guide, .lp-how .guide:last-child { position: relative; grid-template-columns: 1fr; justify-items: center; gap: 20px; padding: 0 24px; border: 0; }
	.lp-how .guide + .guide::before { content: ""; position: absolute; top: 32px; right: calc(50% + 48px); width: calc(100% - 96px); height: 2px; background: rgba(36, 31, 28, .18); }
	.lp-how .seqNum { width: 64px; height: 64px; font-size: 26px; }
	.lp-how .para { max-width: 240px; font-size: 16px; }
	.lp-how .lp-buy, .lp-ready .lp-buy { display: inline-flex; width: auto; padding: 0 40px; }

	.lp-revs .rv-summary { justify-content: center; }
	.lp-rvs { display: none; }
	.lp-revs .rv-carousel { display: block; margin-top: 28px; }
	.lp-revs .rv-actions { justify-content: center; gap: 24px; }

	.lp-art { padding-left: max(40px, calc((100% - 820px) / 2)); padding-right: max(40px, calc((100% - 820px) / 2)); }
	.lp-art h2 { margin-bottom: 24px; }
	.lp-art h2 ~ h2 { margin-top: 88px; }
	.lp-art h2 + p { text-align: center; font-size: 16.5px; }
	.lp-art p, .lp-art li, .lp-art-p, .lp .lp-art .informationpt p { font-size: 16px; }
	.lp .lp-art h3, .lp .lp-art .heading-list h3 { margin-top: 40px; font-size: 21px; }
	.lp-art-img { max-height: 300px; }

	.lp-faq-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 48px; align-items: start; }
	.lp-faq h2 { margin-bottom: 32px; }
	.lp-faq details, .lp-faq details:last-of-type { border-top: 1px solid rgba(36, 31, 28, .1); border-bottom: 0; }
	.lp-faq summary { padding: 20px 2px; }
	.lp-faq summary h3 { font-size: 16px; }
	.lp-faq-a { font-size: 15px; }
	.lp-faq-more { margin-top: 36px; }

	.lp-more .lp-lead { max-width: 720px; margin: 14px auto 30px !important; }

	.lp-ready { padding-top: 112px; padding-bottom: 112px; }
	.lp-ready .lp-lead { margin: 14px 0 30px !important; font-size: 16px; }
	.lp-ready .lp-eyebrow { margin-top: 48px; }

	.lp-sticky { display: none !important; }
	.lp-sheet-p { top: 50%; bottom: auto; max-width: 600px; padding: 24px 22px 26px; transform: translate(-50%, -50%); border-radius: 24px; }
}

.lp-home h2 { font-size: 40px; line-height: 1.04; letter-spacing: -.035em; }
.lp-home h1 .txt-special, .lp-home h2 .txt-special { color: var(--hl); }
.lp-home .hp-pill .txt-special { color: inherit; }
.hp-in { max-width: 600px; margin: 0 auto; }
.hp-band { padding: 64px 20px; }
.lp-home .hp-lead { margin-top: 16px; font-size: 16px; line-height: 1.55; color: var(--ink2); text-wrap: pretty; }
.hp-ic { display: grid; place-items: center; flex: none; width: 40px; height: 40px; border-radius: 50%; background: rgba(255, 255, 255, .6); }

.lp-home .hp-hero { padding: 26px 16px 48px !important; }
.lp-home .hp-hero, .lp-home .hp-hero .banner { padding: 0; background: transparent !important; }
.lp-home .hp-hero #main-heading { max-width: none; margin: 0; padding: 0; font-size: 52px; line-height: 1; letter-spacing: -.04em; color: var(--ink); text-align: left; }
.hp-glyphs { display: inline-flex; gap: .1em; vertical-align: -.06em; }
.hp-glyphs svg { width: .78em; height: .78em; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.hp-tiles { display: grid; gap: 10px; margin-top: 26px; }
.hp-tile { padding: 18px; border-radius: 24px; }
.hp-tile--ig { background: #FFA1CC; }
.hp-tile--tt { background: #C4DDC0; }
.hp-tile-h { display: flex; align-items: center; gap: 12px; }
.hp-tile-t { font: 600 26px/1.1 "DM Sans", sans-serif; letter-spacing: -.03em; }
.hp-pills { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 16px; }
.lp .hp-pill { display: inline-flex; align-items: center; gap: 8px; min-height: 38px; padding: 0 12px 0 5px; border-radius: 99px; background: var(--cream); font-size: 13.5px; font-weight: 600; color: var(--ink); text-decoration: none; transition: background-color 150ms var(--ease); }
.lp .hp-pill:hover { background: #fff; color: var(--ink); }
.hp-pill-ic { display: grid; place-items: center; flex: none; width: 28px; height: 28px; border-radius: 50%; background: #fff; }
.hp-arr { flex: none; color: var(--blue); }
.hp-trow { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 18px; }
.lp-home .hp-trow .sv-rating-row { margin: 0; }
.hp-avs { display: inline-flex; }
.hp-avs img { width: 30px; height: 30px; margin-left: -8px; border: 2px solid var(--cream); border-radius: 50%; object-fit: cover; }
.hp-avs img:first-child { margin-left: 0; }
.hp-bens { display: flex; flex-direction: column; gap: 10px; margin: 14px 0 0; padding: 0; list-style: none; }
.hp-bens li { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; white-space: nowrap; }
.hp-bens svg { flex: none; width: 17px; color: var(--ink); }
.lp-home .hp-note { margin-top: 18px; font-size: 13px; color: var(--ink2); }
.lp-home .hp-hero .lp-pay { justify-content: flex-start; margin-top: 14px; }

.hp-press { background: #F3EEE6; }
.lp-home .hp-press { padding-top: 0; }
.lp-home .hp-press .brands { padding: 28px 0; }
.lp-home .hp-press .slider { margin-top: 12px; }
.lp-home .hp-press .lp-eyebrow { color: #6E655D; }

.hp-proof { --hl: #9A5B00; overflow: hidden; background: #FBF1D9; }
.hp-big { margin: 28px 0 6px; white-space: nowrap; font: 600 clamp(48px, 15vw, 64px)/.9 "DM Sans", sans-serif; letter-spacing: -.05em; color: #9A5B00; }
.hp-big-l { font-size: 15px; color: var(--ink2); }
.hp-nts { display: grid; gap: 10px; margin-top: 32px; }
.hp-nt { display: grid; grid-template-columns: 36px 1fr auto; gap: 10px; align-items: center; width: max-content; max-width: 100%; padding: 6px 16px 6px 6px; border-radius: 99px; background: #fff; font-size: 14px; font-weight: 500; box-shadow: 0 .125rem 0 rgba(65, 61, 69, .08); }
.hp-nt:nth-child(2) { margin-left: 40px; }
.hp-nt:nth-child(3) { margin-left: 12px; }
.hp-nt img { display: block; width: 36px; height: 36px; border-radius: 50%; object-fit: cover; }
.hp-nt em { font-style: normal; font-size: 16px; }
.hp-sts { display: grid; grid-template-columns: 1fr 1fr; gap: 24px 16px; margin: 40px 0 0; padding-top: 24px; border-top: 1px solid rgba(36, 31, 28, .12); }
.hp-sts div { display: flex; flex-direction: column-reverse; }
.hp-sts dd { margin: 0; font: 600 28px/1.15 "DM Sans", sans-serif; letter-spacing: -.03em; }
.hp-sts dt { font-size: 13px; color: var(--ink2); }

.hp-how { --hl: #1F7A47; background: #E6F4EC; }
.hp-steps { display: grid; gap: 28px; margin: 32px 0 0; padding: 0; list-style: none; }
.lp .hp-step-t { margin: 0; font: 600 24px/1.15 "DM Sans", sans-serif; letter-spacing: -.025em; color: var(--ink); }
.hp-num { display: block; margin-bottom: 6px; font-size: 48px; line-height: 1; letter-spacing: -.045em; }
.hp-steps li:nth-child(1) .hp-num { color: #1F7A47; }
.hp-steps li:nth-child(2) .hp-num { color: #2C6B8F; }
.hp-steps li:nth-child(3) .hp-num { color: #6A4BC4; }
.hp-steps p { max-width: 420px; margin-top: 8px; font-size: 15.5px; line-height: 1.5; color: var(--ink2); }

.hp-guar { background: var(--cream); }
.hp-cards { display: grid; gap: 12px; margin-top: 28px; }
.hp-card { padding: 24px 22px 26px; border-radius: 24px; }
.lp .hp-card h3 { margin: 28px 0 8px; font: 600 26px/1.05 "DM Sans", sans-serif; letter-spacing: -.03em; color: var(--ink); }
.hp-card p { font-size: 15px; line-height: 1.5; }

.hp-revs { background: #F4F1FA; }

.hp-why { --hl: #B4461F; background: #FCEDE4; }
.hp-mark { width: .8em; height: .8em; margin-left: .04em; vertical-align: -.06em; }
.hp-wr { display: grid; gap: 20px; margin-top: 44px; }
.hp-wimg { display: block; width: calc(100% - 36px); height: 200px; object-fit: cover; }
.hp-wimg--r { margin: 0 -20px 0 56px; border-radius: 24px 0 0 24px; }
.hp-wimg--l { margin: 0 56px 0 -20px; border-radius: 0 24px 24px 0; }
.lp .hp-wr h3 { margin: 0 0 10px; font: 600 24px/1.15 "DM Sans", sans-serif; letter-spacing: -.025em; color: var(--ink); }
.hp-wr p { font-size: 15px; line-height: 1.6; color: var(--ink2); }

.hp-end { --hl: #B8325A; background: #F9E8EC; text-align: center; }
.hp-end .hp-lead { margin-left: auto; margin-right: auto; }
.hp-end-b { display: grid; gap: 10px; margin-top: 28px; }
.lp .hp-end-b .lp-buy { gap: 8px; min-height: 52px; }

@media (min-width: 768px) {
	.hp-in { max-width: 720px; }
	.hp-band { padding: 88px 32px; }
	.lp-home .hp-hero { padding: 40px 32px 72px !important; }
	.lp-home .hp-hero #main-heading { font-size: 64px; }
	.lp-home .hp-lead { font-size: 17px; }
	.hp-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
	.hp-bens { flex-direction: row; flex-wrap: wrap; justify-content: space-between; gap: 10px 16px; }
	.hp-big { font-size: 88px; }
	.hp-sts { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.hp-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
	.hp-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.hp-card { padding: 24px 20px 26px; }
	.lp .hp-card h3 { margin-top: 40px; font-size: 24px; }
	.hp-wr { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px; align-items: center; margin-top: 56px; }
	.hp-wimg, .hp-wimg--r, .hp-wimg--l { width: 100%; height: 300px; margin: 0; border-radius: 24px; }
	.hp-wr--rev .hp-wimg { order: 2; }
	.hp-end-b { grid-template-columns: repeat(2, 220px); justify-content: center; }
}

@media (min-width: 1024px) {
	.hp-in { max-width: 1120px; }
	.hp-band { padding: 112px 40px; }
	.lp-home h2 { font-size: 60px; text-align: left; }
	.lp-home .hp-lead { max-width: 640px; font-size: 18px; }
	.lp-home .hp-hero { padding: 72px 40px 96px !important; }
	.hp-bens { flex-direction: column; gap: 10px; }
	.lp-home .hp-hero-in { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 72px; align-items: center; }
	.lp-home .hp-hero #main-heading { font-size: 84px; }
	.hp-tiles { grid-template-columns: 1fr; margin: 0; }
	.lp-home .hp-press .brands { padding: 36px 0; }
	.lp-home .hp-press .slider { margin-top: 14px; }
	.hp-proof-in { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 72px; align-items: center; }
	.hp-big { font-size: 88px; }
	.hp-nts { margin: 0; }
	.hp-sts { grid-column: 1 / -1; }
	.hp-steps { gap: 40px; margin-top: 56px; }
	.hp-num { font-size: 72px; }
	.lp .hp-step-t { font-size: 28px; }
	.hp-cards { gap: 16px; margin-top: 48px; }
	.hp-card { min-height: 280px; padding: 32px; }
	.lp .hp-card h3 { margin-top: 64px; font-size: 30px; }
	.hp-why-i { max-width: 820px; }
	.hp-wr { gap: 72px; margin-top: 80px; }
	.hp-wimg, .hp-wimg--r, .hp-wimg--l { height: 360px; }
	.lp .hp-wr h3 { font-size: 32px; }
	.hp-wr p { font-size: 16px; }
	.lp-home .hp-end h2 { text-align: center; }
	.hp-end-b { grid-template-columns: repeat(2, 240px); }
}

.lp-about h2 { font-size: 40px; line-height: 1.04; letter-spacing: -.035em; }
.lp-about h1 .txt-special, .lp-about h2 .txt-special { color: var(--hl); }
.lp-about .hp-pill .txt-special { color: inherit; }
.ab-lead { margin-top: 16px !important; font-size: 16px; line-height: 1.55; color: var(--ink2); text-wrap: pretty; }
.ab-lead + .ab-lead { margin-top: 12px !important; }
.ab-lk { display: inline-flex; align-items: center; gap: 6px; font-size: 15px; font-weight: 600; text-decoration: none; }
.lp .ab-lk:hover { color: var(--ink); text-decoration: underline; }
.ab-lk svg { flex: none; color: var(--blue); }

.ab-hero { padding: 26px 16px 48px; }
.lp-about #main-heading { margin: 0; font-size: 52px; line-height: 1; letter-spacing: -.04em; text-align: left; }
.lp-about .hp-trow .sv-rating-row { margin: 0; }
.ab-hm { position: relative; overflow: hidden; margin-top: 28px; border-radius: 28px; aspect-ratio: 4 / 4.4; background: #E4EEFC; }
.ab-hm > img { display: block; width: 100%; height: 100%; object-fit: cover; }
.ab-hc { position: absolute; right: 12px; bottom: 12px; left: 12px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 14px 6px; border-radius: 20px; background: #fff; }
.ab-hc div { padding: 0 4px; text-align: center; }
.ab-hc div + div { border-left: 1px solid var(--line); }
.ab-hc b { display: block; font: 600 22px/1.1 "DM Sans", sans-serif; letter-spacing: -.03em; }
.ab-hc small { display: block; margin-top: 2px; font-size: 11.5px; line-height: 1.3; color: var(--ink2); }
.ab-hc small::first-letter, .ab-sts p::first-letter, .ab-big-l::first-letter { text-transform: uppercase; }

.lp .ab-press { padding-top: 0; background: #F3EEE6; }
.lp-about .ab-press .brands { padding: 28px 0; }
.lp-about .ab-press .slider { margin-top: 12px; }
.lp-about .ab-press .lp-eyebrow { color: #6E655D; }

.ab-hist { --hl: #6A4BC4; background: #F4F1FA; }
.ab-tl { display: grid; margin: 36px 0 0; padding: 0; list-style: none; }
.ab-tl li { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 16px; padding: 20px 0; border-top: 1px solid rgba(36, 31, 28, .12); }
.ab-tl li.ab-x { display: none; }
.ab-tl.is-open li.ab-x { display: grid; }
.lp .ab-tl h3 { margin: 0; font: 600 28px/1 "DM Sans", sans-serif; letter-spacing: -.04em; color: #6A4BC4; }
.ab-tl p { font-size: 14.5px; line-height: 1.55; color: var(--ink2); }
.ab-more { gap: 8px; margin-top: 8px; }
.ab-more svg { transition: transform 150ms var(--ease); }
.ab-more[aria-expanded="true"] svg { transform: rotate(180deg); }

.ab-vis { --hl: #B4461F; padding-bottom: 64px; background: #FCEDE4; }
.ab-vph { height: 300px; overflow: hidden; }
.ab-vph img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }
.ab-vis .hp-in { padding: 0 20px; }
.ab-vcard { position: relative; margin: -40px -4px 0; padding: 32px 4px 0; border-radius: 28px 28px 0 0; background: #FCEDE4; }

.ab-best { --hl: #1F7A47; background: #E6F4EC; }
.ab-bg { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 32px; }
.ab-bi { display: flex; flex-direction: column; gap: 22px; min-height: 118px; padding: 16px; border-radius: 20px; background: #fff; }
.ab-bi .hp-ic { background: #E6F4EC; color: #1F7A47; }
.lp .ab-bi h3 { margin: 0; font: 600 15px/1.25 "Inter", sans-serif; color: var(--ink); }

.ab-ach { --hl: #9A5B00; background: #FBF1D9; }
.lp .ab-big { margin: 32px 0 6px; white-space: nowrap; font: 600 clamp(48px, 15vw, 64px)/.9 "DM Sans", sans-serif; letter-spacing: -.05em; color: #9A5B00; }
.ab-big-l { font-size: 15px; color: var(--ink2); }
.ab-aph { display: block; margin-top: 36px; }
.ab-aph img { display: block; width: 100%; height: auto; }
.ab-sts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 16px; margin-top: 32px; padding-top: 24px; border-top: 1px solid rgba(36, 31, 28, .12); }
.lp .ab-sts h3 { margin: 0; font: 600 28px/1.15 "DM Sans", sans-serif; letter-spacing: -.03em; color: var(--ink); }
.ab-sts p { font-size: 13px; color: var(--ink2); }

.ab-exp { background: #E4EEFC; }
.ab-exs { display: grid; gap: 10px; margin-top: 32px; }
.ab-ex { padding: 20px; border-radius: 22px; background: #fff; }
.ab-exh { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 14px; align-items: center; }
.ab-exh img { display: block; width: 52px; height: 52px; border-radius: 50%; object-fit: cover; }
.ab-exn { display: flex; align-items: center; gap: 6px; font-size: 17px; font-weight: 600; letter-spacing: -.01em; }
.ab-exn svg { flex: none; color: var(--blue); }
.ab-exr { display: block; margin-top: 2px; font-size: 13px; color: var(--ink2); }
.ab-exb { display: -webkit-box; overflow: hidden; margin-top: 14px !important; -webkit-line-clamp: 3; -webkit-box-orient: vertical; font-size: 14.5px; line-height: 1.55; color: var(--ink2); }
.ab-ex .ab-lk { margin-top: 14px; font-size: 14px; }
.ab-tips { margin-top: 56px; }
.lp-about .ab-tips h2 { font-size: 28px; line-height: 1.15; letter-spacing: -.03em; text-align: left; }
.ab-blogs { display: grid; gap: 8px; margin: 20px 0 16px; }
.lp .ab-blog { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 14px; align-items: center; padding: 12px; border-radius: 22px; background: rgba(255, 255, 255, .55); color: var(--ink); text-decoration: none; transition: background-color 150ms var(--ease); }
.lp .ab-blog:hover { background: #fff; color: var(--ink); }
.ab-blog img { display: block; width: 96px; height: 96px; border-radius: 14px; object-fit: cover; background: #C9DBF7; }
.ab-blog b { display: block; font-size: 16px; font-weight: 600; line-height: 1.25; letter-spacing: -.01em; }
.ab-blog em { display: block; margin-top: 6px; font-size: 13px; font-style: normal; color: var(--ink2); }

.ab-revs { background: #F4F1FA; }

.ab-ct { --hl: #B8325A; background: #FCEDE4; }
.ab-ctl { display: grid; gap: 8px; margin-top: 28px; }
.lp .ab-ctr { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 12px; align-items: center; padding: 12px 14px; border-radius: 18px; background: rgba(255, 255, 255, .6); color: var(--ink); text-decoration: none; transition: background-color 150ms var(--ease); }
.lp .ab-ctr:hover { background: #fff; color: var(--ink); }
.ab-ctr .hp-ic { background: #fff; color: #B8325A; }
.ab-ctr small { display: block; font-size: 13px; color: var(--ink2); }
.ab-ctr b { display: block; overflow-wrap: anywhere; font-size: 15px; font-weight: 600; }
.ab-co { display: grid; gap: 2px; margin-top: 16px !important; font-size: 13px; color: var(--ink2); }
.ab-fm { display: grid; gap: 12px; margin-top: 28px; padding: 20px; border-radius: 24px; background: #fff; }
.ab-fm label { display: grid; gap: 6px; min-width: 0; font-size: 13px; font-weight: 600; color: var(--ink); }
.ab-fm input, .ab-fm textarea { width: 100%; min-width: 0; height: auto; margin: 0; padding: 13px 14px; border: 1px solid var(--line); border-radius: 14px; outline: none; background: var(--cream); font: 400 16px "Inter", sans-serif; color: var(--ink); transition: border-color 150ms var(--ease), background-color 150ms var(--ease); }
.ab-fm input:focus, .ab-fm textarea:focus { border-color: var(--ink); background: #fff; }
.ab-fm textarea { min-height: 120px; resize: vertical; }
.ab-fr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.ab-fm .g-recaptcha { overflow: hidden; max-width: 100%; }
.lp .ab-fm .lp-buy { margin-top: 4px; }
.ab-fm .emailsuccess { padding: 12px 14px; border-radius: 14px; background: #DDF3E8; font-size: 14px; font-weight: 600; color: #0F5C3E; }
.ab-fm .emailsuccess.emailfailed { background: #FBE3E4; color: #9B1C24; }

.ab-faq { background: var(--cream); }
.lp-about .ab-faq h2 { margin-bottom: 0; }
.ab-faq [itemtype$="FAQPage"] { margin-top: 28px; }
.ab-faq .lp-faq-a { padding: 0 38px 18px 2px; font-size: 14.5px; line-height: 1.55; color: var(--ink2); }
.ab-faq .lp-faq-a ul { margin: 8px 0; padding-left: 20px; }

.ab-end { background: #F9E8EC; }
.ab-pick { font-size: 15px; font-weight: 600; text-align: center; }
.lp-about .ab-end .hp-tiles { margin-top: 20px; }

@media (min-width: 768px) {
	.ab-hero { padding: 40px 32px 72px; }
	.lp-about #main-heading { font-size: 64px; }
	.ab-lead { font-size: 17px; }
	.ab-vph { height: 420px; }
	.ab-vis .hp-in { padding: 0 32px; }
	.ab-bg { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.ab-sts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.ab-exs { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
	.ab-blogs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 1024px) {
	.lp-about h2 { font-size: 60px; text-align: left; }
	.ab-lead { max-width: 640px; font-size: 18px; }
	.ab-hero { padding: 72px 40px 96px; }
	.ab-hero-in { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 72px; align-items: center; }
	.lp-about #main-heading { font-size: 84px; }
	.ab-hm { margin: 0; }
	.lp-about .ab-press .brands { padding: 36px 0; }
	.lp-about .ab-press .slider { margin-top: 14px; }
	.ab-split { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 72px; align-items: start; }
	.ab-tl { margin: 0; }
	.ab-vis { padding-bottom: 112px; }
	.ab-vph { height: 520px; }
	.ab-vcard { max-width: 820px; margin: -80px auto 0; padding: 48px 48px 0; }
	.ab-bg { gap: 16px; margin-top: 48px; }
	.ab-bi { min-height: 150px; padding: 24px; }
	.lp .ab-bi h3 { font-size: 18px; }
	.ab-ach-in { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 72px; align-items: center; }
	.lp .ab-big { font-size: 96px; }
	.ab-aph { grid-row: 1; grid-column: 2; margin: 0; }
	.ab-sts { grid-column: 1 / -1; grid-template-columns: repeat(5, minmax(0, 1fr)); }
	.ab-exs { margin-top: 48px; }
	.ab-tips { margin-top: 80px; }
	.lp-about .ab-tips h2 { font-size: 36px; }
	.ab-blogs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.ab-fm, .ab-faq [itemtype$="FAQPage"] { margin-top: 0; }
	.lp-faq.ab-faq details, .lp-faq.ab-faq details:last-of-type { border-bottom: 1px solid rgba(36, 31, 28, .1); }
	.lp-about .ab-end .hp-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; max-width: 880px; margin: 24px auto 0; }
}

body.lp-page.tm-page { background: #FAF8F5 linear-gradient(#E4EEFC, #E4EEFC) top / 100% 600px no-repeat; }
.tm-hero { padding: 26px 16px 48px; background: #E4EEFC; }
.lp-track #main-heading .txt-special { color: var(--blue); }
.tm-fm { display: grid; gap: 12px; margin-top: 28px; padding: 20px; border-radius: 24px; background: #fff; }
.tm-f { display: grid; gap: 6px; min-width: 0; font-size: 13px; font-weight: 600; color: var(--ink); }
.tm-f input { width: 100%; min-width: 0; height: auto; margin: 0; padding: 13px 14px; border: 1px solid var(--line); border-radius: 14px; outline: none; background: var(--cream); font: 400 16px "Inter", sans-serif; color: var(--ink); transition: border-color 150ms var(--ease), background-color 150ms var(--ease); }
.tm-f input:focus { border-color: var(--ink); background: #fff; }
.tm-msg { display: none; font-size: 12.5px; font-weight: 500; color: #C6283B; }
.tm-f.err input { border-color: #C6283B; background: #FFF6F7; }
.tm-f.err .tm-msg { display: block; }
.tm-nf { display: none; grid-template-columns: 20px minmax(0, 1fr); gap: 10px; padding: 14px; border-radius: 16px; background: #FFF6F7; font-size: 14px; line-height: 1.45; color: #8E1B2A; }
.tm-nf.on { display: grid; }
.tm-nf svg { margin-top: 1px; }
.lp .tm-fm .lp-buy { min-height: 52px; margin-top: 4px; }
.tm-hint { font-size: 13px; line-height: 1.5; text-align: center; color: var(--ink2); }

.tm-faq { --hl: #6A4BC4; }
.tm-faq .ab-lead a { color: var(--ink); text-decoration: underline; }
.lp .tm-help .ab-ctr { grid-template-columns: 40px minmax(0, 1fr) 16px; }
.tm-help .ab-ctr > svg { color: var(--blue); }

@media (min-width: 768px) {
	.tm-hero { padding: 40px 32px 72px; }
}

@media (min-width: 1024px) {
	.tm-hero { padding: 72px 40px 96px; }
	.tm-hero-in { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 72px; align-items: start; }
	.tm-fm { margin: 0; padding: 28px; }
}

body.lp-page.fq-page { background: #FAF8F5 linear-gradient(#F4F1FA, #F4F1FA) top / 100% 600px no-repeat; }
.fq-hero { --hl: #6A4BC4; padding: 26px 16px 40px; background: #F4F1FA; }
.lp-fq #main-heading { max-width: none; width: auto; }
.lp-fq #main-heading .txt-special { color: var(--hl); }
.fq-srch { position: relative; margin-top: 28px; }
.fq-srch > svg { position: absolute; top: 50%; left: 18px; transform: translateY(-50%); color: var(--ink2); pointer-events: none; }
.lp .fq-srch input { width: 100%; min-height: 58px; height: auto; margin: 0; padding: 0 52px 0 50px; border: 1px solid var(--line); border-radius: 99px; outline: none; background: #fff; box-shadow: 0 .125rem 0 rgba(65, 61, 69, .08); font: 400 16px "Inter", sans-serif; color: var(--ink); -webkit-appearance: none; appearance: none; }
.lp .fq-srch input:focus { border-color: var(--ink); }
.fq-srch input::-webkit-search-cancel-button { display: none; }
.fq-clr { position: absolute; top: 50%; right: 8px; display: none; place-items: center; width: 42px; height: 42px; padding: 0; border: 0; border-radius: 50%; background: #F3EEE6; transform: translateY(-50%); cursor: pointer; }
.fq-clr.on { display: grid; }
.fq-pop { display: flex; flex-wrap: wrap; gap: 6px 12px; margin-top: 14px; padding: 0 4px; font-size: 13.5px; color: var(--ink2); }
.lp .fq-pop button { padding: 0; border: 0; background: none; font: 600 13.5px "Inter", sans-serif; color: var(--ink); text-decoration: underline; text-underline-offset: 2px; cursor: pointer; }
.fq-cats { display: flex; gap: 6px; overflow-x: auto; margin: 28px -16px 0; padding: 0 20px 2px; scrollbar-width: none; }
.fq-cats::-webkit-scrollbar { display: none; }
.lp .fq-cats button, .lp .fq-cats a { flex: none; display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 0 14px; border: 1px solid rgba(36, 31, 28, .14); border-radius: 99px; background: #fff; font: 600 14px "Inter", sans-serif; color: var(--ink); text-decoration: none; white-space: nowrap; cursor: pointer; transition: background-color 150ms var(--ease), color 150ms var(--ease); }
.fq-cats small { font-size: 12.5px; font-weight: 500; color: var(--ink2); }
.lp .fq-cats button[aria-pressed="true"] { border-color: var(--ink); background: var(--ink); color: #fff; }
.fq-cats button[aria-pressed="true"] small { color: rgba(255, 255, 255, .7); }
.fq-list { padding-top: 40px; }
.fq-side { display: none; }
.fq-grp + .fq-grp { margin-top: 48px; }
.fq-grp[hidden] + .fq-grp { margin-top: 0; }
.fq-grp[hidden], .fq-grp details[hidden], .fq-cnt[hidden], .fq-empty[hidden] { display: none; }
.lp-fq .fq-grp h2 { display: flex; align-items: center; gap: 12px; margin-bottom: 8px; font-size: 26px; letter-spacing: -.03em; text-align: left; }
.fq-grp h2 i { flex: none; width: 10px; height: 10px; border-radius: 50%; }
#ig h2 i { background: #B8325A; }
#tt h2 i { background: #241F1C; }
#pay h2 i { background: #9A5B00; }
.fq-grp details { border-bottom: 1px solid var(--line); }
.fq-grp details:first-of-type { border-top: 1px solid var(--line); }
.fq-grp summary { display: grid; grid-template-columns: minmax(0, 1fr) 24px; gap: 14px; align-items: center; padding: 18px 0; list-style: none; cursor: pointer; }
.fq-grp summary::-webkit-details-marker { display: none; }
.lp .fq-grp summary h3 { margin: 0; font: 600 15.5px/1.35 "Inter", sans-serif; color: var(--ink); }
.fq-grp summary::after { content: ""; width: 24px; height: 24px; border-radius: 50%; background: #F3EEE6 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='14' height='14' fill='none' stroke='%23241F1C' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center / 14px no-repeat; transition: transform 150ms var(--ease); }
.fq-grp details[open] summary::after { transform: rotate(45deg); }
.fq-grp .lp-faq-a { margin-top: -4px; padding: 0 38px 18px 0; font-size: 14.5px; line-height: 1.6; color: var(--ink2); text-wrap: pretty; }
.fq-grp .lp-faq-a p + p, .fq-grp .lp-faq-a ul, .fq-grp .lp-faq-a ol { margin-top: 10px; }
.fq-grp .lp-faq-a ul, .fq-grp .lp-faq-a ol { padding-left: 20px; }
.fq-grp .lp-faq-a a { color: var(--blue); }
.lp-fq mark { padding: 0 1px; border-radius: 3px; background: #FFE58A; color: inherit; }
.fq-cnt { margin: 0 0 20px !important; font-size: 14px; color: var(--ink2); }
.fq-empty { padding: 40px 20px; border: 1px solid var(--line); border-radius: 24px; background: #fff; text-align: center; }
.fq-empty b { display: block; font: 600 22px/1.2 "DM Sans", sans-serif; letter-spacing: -.025em; overflow-wrap: anywhere; }
.fq-empty p { margin: 8px 0 18px !important; font-size: 14.5px; color: var(--ink2); }
.lp .fq-empty .lp-buy { display: inline-flex; width: auto; padding: 0 24px; }

@media (min-width: 768px) {
	.fq-hero { padding: 40px 32px 56px; }
	.fq-cats { margin: 28px -32px 0; padding: 0 36px 2px; }
}

@media (min-width: 1024px) {
	.fq-hero { padding: 72px 40px 96px; text-align: center; }
	.lp-fq .fq-hero #main-heading { text-align: center; }
	.fq-hero .ab-lead { margin-right: auto; margin-left: auto; }
	.fq-srch { max-width: 640px; margin: 36px auto 0; }
	.fq-pop { justify-content: center; }
	.fq-cats { display: none; }
	.fq-in { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 72px; align-items: start; }
	.fq-side { position: sticky; top: 110px; display: grid; gap: 2px; }
	.lp .fq-side a { display: flex; justify-content: space-between; align-items: center; gap: 8px; min-height: 44px; padding: 0 14px; border-radius: 12px; font-size: 15px; font-weight: 500; color: var(--ink2); text-decoration: none; }
	.lp .fq-side a:hover { background: #F3EEE6; color: var(--ink); }
	.lp .fq-side a[aria-current] { background: #fff; box-shadow: 0 0 0 1px var(--line); font-weight: 600; color: var(--ink); }
	.fq-side small { font-size: 13px; color: var(--ink2); }
	.lp-fq .fq-grp h2 { font-size: 32px; }
}

body.lp-page.ct-page { background: #FAF8F5 linear-gradient(#FCEDE4, #FCEDE4) top / 100% 600px no-repeat; }
.ct-hero { --hl: #B8325A; padding: 26px 16px 48px; background: #FCEDE4; }
.ct-qk { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 28px; }
.lp .ct-q { display: flex; flex-direction: column; gap: 18px; min-height: 116px; padding: 16px; border-radius: 20px; background: #fff; color: var(--ink); text-decoration: none; transition: box-shadow 150ms var(--ease); }
.lp .ct-q:hover { box-shadow: 0 0 0 1px var(--ink); color: var(--ink); }
.ct-q .hp-ic { background: #FCEDE4; color: #B8325A; }
.ct-q b { display: block; font-size: 15px; font-weight: 600; line-height: 1.25; }
.ct-q small { display: block; margin-top: 4px; font-size: 13px; color: var(--ink2); }
.ct-hero .ab-ctl { margin-top: 10px; }
.lp .ct-hero .ab-ctr { grid-template-columns: 40px minmax(0, 1fr) 16px; }

.ct-main { --hl: var(--blue); background: var(--cream); }
.ct-fm { display: grid; gap: 14px; margin-top: 28px; padding: 20px; border: 1px solid var(--line); border-radius: 24px; background: #fff; }
.ct-tps { display: flex; flex-wrap: wrap; gap: 6px; min-width: 0; margin: 0; padding: 0; border: 0; }
.ct-tps legend { margin: 0 0 8px; padding: 0; font-size: 13px; font-weight: 600; color: var(--ink); }
.ct-tps label { position: relative; }
.ct-tps input { position: absolute; inset: 0; margin: 0; opacity: 0; cursor: pointer; }
.ct-tps span { display: inline-flex; align-items: center; min-height: 40px; padding: 0 14px; border: 1px solid var(--line); border-radius: 99px; background: var(--cream); font-size: 14px; font-weight: 600; color: var(--ink); transition: background-color 150ms var(--ease), border-color 150ms var(--ease), color 150ms var(--ease); }
.ct-tps input:checked + span { border-color: var(--ink); background: var(--ink); color: #fff; }
.ct-tps input:focus-visible + span { outline: 2px solid var(--blue); outline-offset: 2px; }
.ct-sug { display: none; grid-template-columns: 20px minmax(0, 1fr); gap: 10px; padding: 14px; border-radius: 16px; background: #E4EEFC; font-size: 14px; line-height: 1.45; color: var(--ink); }
.ct-sug.on { display: grid; }
.ct-sug svg { margin-top: 1px; color: var(--blue); }
.lp .ct-sug a { color: var(--ink); text-decoration: underline; }
.ct-fr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.ct-fr:has(.ct-ord[hidden]) { grid-template-columns: minmax(0, 1fr); }
.ct-ord[hidden] { display: none; }
.ct-fm textarea { width: 100%; min-width: 0; min-height: 120px; margin: 0; padding: 13px 14px; border: 1px solid var(--line); border-radius: 14px; outline: none; background: var(--cream); font: 400 16px "Inter", sans-serif; color: var(--ink); resize: vertical; transition: border-color 150ms var(--ease), background-color 150ms var(--ease); }
.ct-fm textarea:focus { border-color: var(--ink); background: #fff; }
.tm-f.err textarea { border-color: #C6283B; background: #FFF6F7; }
.ct-fm .g-recaptcha { overflow: hidden; max-width: 100%; }
.lp .ct-fm .lp-buy { min-height: 52px; margin-top: 4px; }
.ct-notice { padding: 14px; border: 1px solid #F0C48A; border-radius: 16px; background: #FFF8EE; font-size: 14px; line-height: 1.5; color: var(--ink); }
.ct-sent { display: none; padding: 36px 10px; text-align: center; }
.ct-fm.ok > * { display: none; }
.ct-fm.ok .ct-sent { display: block; }
.ct-sent .hp-ic { margin: 0 auto; background: #E6F4EC; color: #1F7A47; }
.ct-sent b { display: block; margin-top: 12px; font: 600 22px/1.2 "DM Sans", sans-serif; letter-spacing: -.02em; }
.ct-sent p { margin-top: 6px !important; font-size: 14.5px; line-height: 1.5; color: var(--ink2); }
.ct-sent .lp-ghost { display: inline-flex; margin-top: 18px; }
.ct-aside { display: grid; gap: 12px; margin-top: 28px; }
.ct-box { padding: 20px; border-radius: 24px; background: #F3EEE6; font-size: 14px; line-height: 1.55; color: var(--ink2); overflow-wrap: anywhere; }
.lp .ct-box h3 { margin: 0 0 6px; font: 600 15px/1.35 "Inter", sans-serif; color: var(--ink); }
.ct-hrs { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 6px 16px; margin: 10px 0 0; }
.ct-hrs dd { margin: 0; font-weight: 600; text-align: right; color: var(--ink); }

.ct-faq { --hl: #6A4BC4; background: #F4F1FA; }
.ct-faq .ab-lead a { color: var(--ink); text-decoration: underline; }

@media (min-width: 768px) {
	.ct-hero { padding: 40px 32px 72px; }
}

@media (min-width: 1024px) {
	.ct-hero { padding: 72px 40px 96px; }
	.ct-hero-in { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 72px; align-items: end; }
	.ct-qk { margin-top: 0; }
	.ct-main-in { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, .7fr); gap: 48px; align-items: start; }
	.ct-fm { gap: 16px; margin-top: 32px; padding: 32px; }
	.ct-aside { position: sticky; top: 110px; margin-top: 0; }
}

.lp-blog .bl-hero { padding: 26px 16px 8px; }
.lp-blog #main-heading .txt-special { color: #B8325A; }
.lp-blog .fq-srch { margin-top: 24px; }
.lp-blog .fq-srch input { min-height: 54px; padding-right: 20px; }
.bl-fb { padding: 24px 20px 8px; }
.bl-lb { padding: 48px 20px 64px; }
.lp .bl-post, .lp .bl-feat { display: grid; color: var(--ink); text-decoration: none; }
.lp .bl-post:hover, .lp .bl-feat:hover { color: var(--ink); }
.lp .bl-post:hover h3, .lp .bl-feat:hover h2 { text-decoration: underline; text-decoration-thickness: 1.5px; text-underline-offset: 3px; }
.bl-ph { display: block; overflow: hidden; border-radius: 20px; background: #F3EEE6; }
.bl-ph img { display: block; width: 100%; height: 100%; object-fit: cover; }
.bl-pt { display: grid; gap: 10px; align-content: start; justify-items: start; }
.bl-desc { font-size: 14.5px; line-height: 1.5; color: var(--ink2); text-wrap: pretty; }
.bl-by { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 13px; color: var(--ink2); }
.bl-by b { font-weight: 400; color: var(--line); }
.bl-av { flex: none; width: 28px; height: 28px; margin-right: 2px; border-radius: 50%; object-fit: cover; background: #F3EEE6; }
.bl-ey { display: block; font: 700 11.5px "Inter", sans-serif; letter-spacing: .06em; text-transform: uppercase; color: #B8325A; }
.bl-feat { gap: 20px; }
.bl-feat .bl-ph { aspect-ratio: 4 / 3; }
.bl-feat .bl-pt { gap: 12px; }
.lp .bl-feat h2 { font-size: 30px; line-height: 1.08; letter-spacing: -.03em; text-align: left; }
.bl-lh { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 8px; }
.lp .bl-lh h2 { font-size: 28px; letter-spacing: -.03em; text-align: left; overflow-wrap: anywhere; }
.bl-lh > span { flex: none; font-size: 13.5px; color: var(--ink2); }
.bl-posts { display: grid; }
.lp .bl-posts .bl-post { grid-template-columns: minmax(0, 1fr) 100px; gap: 16px; padding: 20px 0; border-bottom: 1px solid var(--line); }
.bl-posts .bl-ph { order: 2; aspect-ratio: 1; border-radius: 14px; }
.lp .bl-post h3 { margin: 0; font: 600 18px/1.2 "DM Sans", sans-serif; letter-spacing: -.02em; color: var(--ink); text-wrap: pretty; }
.bl-posts .bl-desc { display: none; }
.lp-blog .fq-empty { margin-top: 16px; }
.bl-pag { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px; margin-top: 32px; }
.lp .bl-pg { display: inline-grid; place-items: center; min-width: 44px; min-height: 44px; padding: 0 12px; border: 1px solid var(--line); border-radius: 99px; background: #fff; font: 600 14px "Inter", sans-serif; color: var(--ink); text-decoration: none; }
.lp a.bl-pg:hover { border-color: var(--ink); color: var(--ink); }
.lp .bl-pg[aria-current] { border-color: var(--ink); background: var(--ink); color: #fff; }
.lp .bl-pg--nav { padding: 0 16px; }
.bl-pg-dots { padding: 0 2px; color: var(--ink2); }

.bl-prog { position: fixed; top: 0; left: 0; z-index: 1000; width: 0; height: 3px; background: #0061EF; }
.bl-ah { padding: 26px 16px 0; }
.bl-ah .hp-in { display: grid; gap: 16px; justify-items: start; }
.bl-crumb { display: flex; gap: 8px; padding: 0 4px; font-size: 13px; color: var(--ink2); }
.lp .bl-crumb a { color: var(--ink2); text-decoration: none; }
.lp .bl-crumb a:hover { color: var(--ink); text-decoration: underline; }
.lp-blog .bl-ah #main-heading { padding: 0 4px; font-size: 38px; line-height: 1.04; }
.lp-blog .bl-ah .ab-lead { margin-top: 0 !important; padding: 0 4px; font-size: 17px; }
.bl-by--a { padding: 0 4px; font-size: 13.5px; }
.bl-by--a > span { display: grid; gap: 1px; }
.bl-by--a .bl-av { width: 40px; height: 40px; }
.lp .bl-nm { font-weight: 600; color: var(--ink); text-decoration: none; }
.lp .bl-nm:hover { text-decoration: underline; }
.bl-cv { max-width: 600px; margin: 28px auto 0; }
.bl-cv img { display: block; width: 100%; height: auto; border-radius: 20px; }
.bl-art { padding: 28px 20px 64px; }
.bl-toc details { border: 1px solid var(--line); border-radius: 18px; background: #fff; }
.bl-toc summary { display: flex; justify-content: space-between; align-items: center; min-height: 52px; padding: 0 18px; list-style: none; font-size: 15px; font-weight: 600; cursor: pointer; }
.bl-toc summary::-webkit-details-marker { display: none; }
.bl-toc summary i { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: #F3EEE6; transition: transform 150ms var(--ease); }
.bl-toc details[open] summary i { transform: rotate(180deg); }
.bl-toc ol { display: grid; margin: 0; padding: 0 8px 10px; list-style: none; }
.lp .bl-toc a { display: block; padding: 10px; border-radius: 10px; font-size: 14.5px; line-height: 1.35; color: var(--ink2); text-decoration: none; }
.lp .bl-toc a:hover { background: #F6F2EC; color: var(--ink); }
.lp .bl-toc a[aria-current] { font-weight: 600; color: var(--ink); }

.bl-prose { margin-top: 32px; padding: 0 4px; font-size: 17px; line-height: 1.7; color: var(--ink); overflow-wrap: break-word; }
.bl-prose h2[id], .bl-prose h3[id] { scroll-margin-top: 100px; }
.lp .bl-prose p { margin: 0 0 20px; font-size: inherit; line-height: inherit; letter-spacing: 0; text-wrap: pretty; }
.lp .bl-prose h2 { margin: 44px 0 14px; font-size: 26px; line-height: 1.15; letter-spacing: -.025em; text-align: left; }
.lp .bl-prose h3 { margin: 32px 0 10px; font: 600 20px/1.25 "DM Sans", sans-serif; letter-spacing: -.02em; color: var(--ink); }
.bl-prose a { color: var(--blue); }
.bl-prose [style*="background"] { background: none !important; }
.bl-prose ul, .bl-prose ol { display: grid; gap: 10px; margin: 0 0 24px; padding: 0; }
.bl-prose ul { list-style: none; }
.bl-prose ol { padding-left: 24px; }
.bl-prose ul > li { position: relative; padding-left: 26px; }
.bl-prose ul > li::before { content: ""; position: absolute; top: .68em; left: 4px; width: 8px; height: 8px; border-radius: 50%; background: #B8325A; }
.bl-prose li p { margin: 0; }
.bl-prose img { display: block; max-width: 100%; height: auto; margin: 8px 0; border: 0; border-radius: 16px; }
.bl-prose table { display: block; overflow-x: auto; margin: 0 0 24px; border-collapse: collapse; font-size: 15px; line-height: 1.5; }
.bl-prose td, .bl-prose th { padding: 10px 12px; border: 1px solid var(--line); vertical-align: top; }
.bl-prose blockquote { margin: 32px 0; padding: 0 0 0 18px; border-left: 3px solid #B8325A; }
.bl-qa { margin-bottom: 32px; padding: 20px; border: 1px solid var(--line); border-radius: 20px; background: #fff; }
.bl-qa .bl-ey { margin-bottom: 10px; }
.lp .bl-qa ul { gap: 8px; margin: 0; font-size: 16px; line-height: 1.6; }
.bl-share { display: grid; gap: 12px; margin-top: 40px; padding-top: 24px; border-top: 1px solid var(--line); font-size: 14px; font-weight: 600; }
.bl-share > div { display: flex; gap: 8px; }
.bl-share .lp-ghost { flex: 1; gap: 8px; min-height: 48px; }
.bl-bio { display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 16px; margin-top: 32px; padding: 20px; border-radius: 20px; background: #fff; border: 1px solid var(--line); font-size: 14.5px; line-height: 1.55; }
.bl-bio img { width: 56px; height: 56px; margin: 0; border-radius: 50%; object-fit: cover; }
.lp .bl-bio b a { color: var(--ink); text-decoration: none; }
.lp .bl-bio p { margin: 4px 0 0; color: var(--ink2); }
.bl-soc { display: flex; gap: 8px; margin-top: 10px; }
.bl-soc img { width: 18px; height: 18px; border-radius: 0; }
.bl-rel { padding: 24px 20px 64px; background: #F3EEE6; }
.lp .bl-rel .bl-post { border-color: rgba(36, 31, 28, .1); }

@media (min-width: 1024px) {
	.lp-blog .hp-in { max-width: 1200px; }
	.lp-blog .bl-hero { padding: 72px 40px 16px; }
	.lp-blog .bl-hero #main-heading { max-width: 900px; font-size: 84px; }
	.lp-blog .bl-hero .ab-lead { max-width: 640px; font-size: 18px; }
	.lp-blog .bl-hero .fq-srch { max-width: 560px; margin-top: 36px; }
	.bl-fb { padding: 40px 40px 0; }
	.lp .bl-feat { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 56px; align-items: center; }
	.lp .bl-feat h2 { font-size: 48px; }
	.bl-feat .bl-desc { font-size: 17px; }
	.bl-feat .bl-pt { gap: 16px; }
	.bl-lb { padding: 96px 40px 112px; }
	.bl-lh { margin-bottom: 32px; }
	.lp .bl-lh h2 { font-size: 40px; }
	.bl-posts { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 56px 32px; }
	.lp .bl-posts .bl-post { grid-template-columns: 1fr; gap: 18px; padding: 0; border: 0; }
	.bl-posts .bl-ph { order: 0; aspect-ratio: 4 / 3; border-radius: 20px; }
	.bl-posts .bl-pt { gap: 12px; }
	.bl-posts .bl-desc { display: block; }
	.lp .bl-post h3 { font-size: 22px; }
	.bl-pag { margin-top: 64px; }

	.bl-ah { padding: 56px 40px 0; }
	.lp-blog .bl-ah .hp-in { max-width: 840px; justify-items: center; text-align: center; }
	.lp-blog .bl-ah #main-heading { font-size: 64px; text-align: center; }
	.lp-blog .bl-ah .ab-lead { max-width: 680px; font-size: 20px; }
	.bl-cv { max-width: 1120px; margin-top: 48px; padding: 0 40px; }
	.bl-cv img { border-radius: 28px; }
	.bl-art { padding: 72px 40px 112px; }
	.lp-blog .bl-art .hp-in { display: grid; grid-template-columns: 220px minmax(0, 680px); gap: 96px; justify-content: center; }
	.lp-blog .bl-art .hp-in > .bl-prose:first-child { grid-column: 1 / -1; width: 100%; max-width: 680px; margin: 0 auto; }
	.bl-toc { position: sticky; top: 110px; align-self: start; }
	.bl-toc details { border: 0; background: none; }
	.bl-toc summary { min-height: 0; margin-bottom: 10px; padding: 0 10px; pointer-events: none; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: var(--ink2); }
	.bl-toc summary i { display: none; }
	.bl-toc ol { padding: 0; }
	.lp .bl-toc a { padding: 8px 10px; font-size: 14px; }
	.lp .bl-toc a[aria-current] { background: #fff; box-shadow: 0 0 0 1px var(--line); }
	.bl-prose { margin-top: 0; font-size: 18px; }
	.lp .bl-prose h2 { margin: 56px 0 16px; font-size: 34px; }
	.lp .bl-prose h3 { font-size: 24px; }
	.bl-qa { padding: 28px; }
	.bl-share { grid-template-columns: 1fr auto; align-items: center; }
	.bl-share .lp-ghost { flex: none; }
	.bl-rel { padding: 96px 40px 112px; }
}
