/* TTS Products listing - Vercel-exact reproduction (scoped .tts-plist.tts-plist). */

.tts-plist.tts-plist {
	--pl-navy-950: #071527;
	--pl-navy-900: #0c2038;
	--pl-navy-800: #102844;
	--pl-navy-700: #1a3a5c;
	--pl-navy-500: #3f77a1;
	--pl-navy-400: #5b93bd;
	--pl-navy-300: #9db2c8;
	--pl-navy-200: #c7d5e2;
	--pl-navy-100: #e2ebf3;
	--pl-navy-50: #f4f7fa;
	--pl-brand-500: #e81f22;
	--pl-brand-600: #c91619;
	--pl-brand-700: #a51215;
	--pl-brand-50: #fdecec;
	--pl-line: #e2e8f0;
	--pl-mist: #f5f7fa;
	--pl-slate-400: #94a3b8;
	--pl-slate-500: #64748b;
	--pl-slate-600: #475569;
	--pl-slate-700: #334155;
	--pl-card-shadow: 0 1px 2px rgb(16 40 68 / 0.05), 0 12px 32px -16px rgb(16 40 68 / 0.18);
	--pl-lift-shadow: 0 2px 4px rgb(16 40 68 / 0.06), 0 28px 56px -24px rgb(16 40 68 / 0.35);
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	color: #222;
}

/* Elementor page parity: remove default container gap + widget margins (page 33). */
.elementor-33 .elementor-element.elementor-widget:not(:last-child) { margin-block-end: 0; }
.elementor-33 .e-con,
.elementor-33 .e-con-full { --gap: 0px; gap: 0px; }

.tts-plist.tts-plist *, .tts-plist.tts-plist *::before, .tts-plist.tts-plist *::after { box-sizing: border-box; }
.tts-plist.tts-plist img { max-width: 100%; }
.tts-plist.tts-plist h1, .tts-plist.tts-plist h2, .tts-plist.tts-plist h3,
.tts-plist.tts-plist p, .tts-plist.tts-plist dl, .tts-plist.tts-plist dd, .tts-plist.tts-plist dt { margin: 0; }
.tts-plist.tts-plist a { text-decoration: none; }
.tts-plist.tts-plist svg { display: block; }

/* Buttons (Button.tsx parity) */
.tts-plist.tts-plist .tts-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem;
	border-radius: 0.5rem; font-weight: 600; transition: all 0.2s; border: 0;
	font-family: inherit; line-height: 1.25rem;
}
.tts-plist.tts-plist .tts-btn svg { width: 1.25rem; height: 1.25rem; }
.tts-plist.tts-plist .tts-btn--sm { height: 2.5rem; padding: 0 1rem; font-size: 0.875rem; }
.tts-plist.tts-plist .tts-btn--sm svg { width: 1rem; height: 1rem; }
.tts-plist.tts-plist .tts-btn--md { height: 2.75rem; padding: 0 1.25rem; font-size: 0.875rem; }
.tts-plist.tts-plist .tts-btn--md svg { width: 1rem; height: 1rem; }
.tts-plist.tts-plist .tts-btn--lg { height: 3rem; padding: 0 1.5rem; font-size: 1rem; }
.tts-plist.tts-plist .tts-btn--xl { border-radius: 0.75rem; }
.tts-plist.tts-plist .tts-btn--fx { flex: 1 1 0%; }
.tts-plist.tts-plist .tts-btn--primary {
	background: var(--pl-brand-500); color: #fff;
	box-shadow: 0 10px 30px -12px rgba(232, 31, 34, 0.55);
}
.tts-plist.tts-plist .tts-btn--primary:hover {
	background: var(--pl-brand-600);
	box-shadow: 0 16px 36px -14px rgba(232, 31, 34, 0.65);
}
.tts-plist.tts-plist .tts-btn--outline {
	border: 1px solid var(--pl-navy-200); background: #fff; color: var(--pl-navy-800);
}
.tts-plist.tts-plist .tts-btn--outline:hover { border-color: var(--pl-navy-800); background: var(--pl-navy-50); }
.tts-plist.tts-plist .tts-btn--outlinewhite { border: 1px solid rgba(255, 255, 255, 0.3); color: #fff; }
.tts-plist.tts-plist .tts-btn--outlinewhite:hover { border-color: rgba(255, 255, 255, 0.6); background: rgba(255, 255, 255, 0.1); }

/* Shell */
.tts-plist.tts-plist .tts-plist__shell { max-width: 80rem; margin-inline: auto; padding-inline: 1rem; }
@media (min-width: 640px) { .tts-plist.tts-plist .tts-plist__shell { padding-inline: 1.5rem; } }
@media (min-width: 1024px) { .tts-plist.tts-plist .tts-plist__shell { padding-inline: 2rem; } }

/* Reveal + rise animations */
.tts-plist.tts-plist .tts-plist__reveal { opacity: 0; transform: translateY(22px); transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1), transform 0.7s cubic-bezier(0.22, 1, 0.36, 1); }
.tts-plist.tts-plist .tts-plist__reveal.tts-plist__reveal--in { opacity: 1; transform: translateY(0); }
@keyframes tts-plist-rise { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
.tts-plist.tts-plist .tts-rise { animation: tts-plist-rise 0.85s cubic-bezier(0.22, 1, 0.36, 1) both; }
.tts-plist.tts-plist .tts-rise--d1 { animation-delay: 0.12s; }
.tts-plist.tts-plist .tts-rise--d2 { animation-delay: 0.24s; }
.tts-plist.tts-plist .tts-rise--d3 { animation-delay: 0.36s; }

/* ---------- Hero ---------- */
.tts-plist.tts-plist.tts-plist--hero { position: relative; overflow: hidden; background: var(--pl-navy-950); }
.tts-plist.tts-plist .tts-plist__herobg { position: absolute; inset: 0; background: linear-gradient(to right bottom in oklab, #071527 0%, #0c2038 50%, #102844 100%); }
.tts-plist.tts-plist .tts-plist__herogrid {
	position: absolute; inset: 0; opacity: 0.6;
	background-image: linear-gradient(rgb(255 255 255 / 0.045) 1px, transparent 1px), linear-gradient(90deg, rgb(255 255 255 / 0.045) 1px, transparent 1px);
	background-size: 44px 44px;
}
.tts-plist.tts-plist .tts-plist__heroorb { position: absolute; left: -10rem; top: 2rem; height: 28rem; width: 28rem; border-radius: 9999px; background: rgba(232, 31, 34, 0.15); filter: blur(64px); }
.tts-plist.tts-plist .tts-plist__heroinner { position: relative; padding-block: 7rem 4rem; }
@media (min-width: 640px) { .tts-plist.tts-plist .tts-plist__heroinner { padding-top: 8rem; } }

.tts-plist.tts-plist .tts-plist__crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 0.375rem; font-size: 0.75rem; line-height: 1rem; font-weight: 500; color: rgba(226, 235, 243, 0.7); }
.tts-plist.tts-plist .tts-plist__crumbhome { display: inline-flex; align-items: center; gap: 0.25rem; color: inherit; transition: color 0.15s; }
.tts-plist.tts-plist .tts-plist__crumbhome:hover { color: #fff; }
.tts-plist.tts-plist .tts-plist__crumbhome svg { width: 0.875rem; height: 0.875rem; }
.tts-plist.tts-plist .tts-plist__crumbsep { display: inline-flex; align-items: center; gap: 0.375rem; }
.tts-plist.tts-plist .tts-plist__crumbsep svg { width: 0.875rem; height: 0.875rem; opacity: 0.6; }
.tts-plist.tts-plist .tts-plist__crumbsep span[aria-current] { color: #fff; }

.tts-plist.tts-plist .tts-plist__herocats { margin-top: 2rem; display: grid; align-items: center; gap: 3.5rem; }
@media (min-width: 1024px) {
	.tts-plist.tts-plist .tts-plist__herocats { grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 2.5rem; }
	.tts-plist.tts-plist .tts-plist__heroleft, .tts-plist.tts-plist .tts-plist__heroright { grid-column: span 6 / span 6; }
}

.tts-plist.tts-plist .tts-plist__heropill {
	display: inline-flex; align-items: center; gap: 0.625rem; border-radius: 9999px;
	border: 1px solid rgba(255, 255, 255, 0.1); background: rgba(255, 255, 255, 0.04);
	padding: 0.375rem 1rem; font-size: 10px; font-weight: 700; text-transform: uppercase;
	letter-spacing: 0.16em; color: var(--pl-navy-100); backdrop-filter: blur(4px);
}
.tts-plist.tts-plist .tts-plist__heropill svg { width: 1rem; height: 1rem; color: #f2544f; }
@media (min-width: 640px) { .tts-plist.tts-plist .tts-plist__heropill { font-size: 11px; letter-spacing: 0.2em; } }

.tts-plist.tts-plist .tts-plist__h1 {
	margin-top: 1.75rem; font-family: Manrope, Inter, sans-serif; font-size: 2.6rem; font-weight: 800;
	line-height: 1.04; letter-spacing: -0.03em; color: #fff; text-wrap: balance;
}
@media (min-width: 640px) { .tts-plist.tts-plist .tts-plist__h1 { font-size: 3.75rem; } }
.tts-plist.tts-plist .tts-plist__accent { color: var(--pl-brand-500); }

.tts-plist.tts-plist .tts-plist__herodesc { margin-top: 1.5rem; max-width: 36rem; font-size: 1rem; line-height: 1.625; color: rgba(226, 235, 243, 0.75); }
@media (min-width: 640px) { .tts-plist.tts-plist .tts-plist__herodesc { font-size: 1.125rem; } }

.tts-plist.tts-plist .tts-plist__heroactions { margin-top: 2rem; display: flex; flex-wrap: wrap; gap: 0.75rem; }

.tts-plist.tts-plist .tts-plist__herometa { margin-top: 1.5rem; font-size: 0.75rem; line-height: 1rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.14em; color: rgba(226, 235, 243, 0.55); }

.tts-plist.tts-plist .tts-plist__cardwrap { position: relative; margin-inline: auto; max-width: 28rem; }
@media (min-width: 1024px) { .tts-plist.tts-plist .tts-plist__cardwrap { margin-left: auto; margin-right: 0; } }

.tts-plist.tts-plist .tts-plist__hcard {
	border-radius: 1.5rem; border: 1px solid rgba(255, 255, 255, 0.1); background: #fff; padding: 1.25rem;
	box-shadow: 0 25px 50px -12px rgba(7, 21, 39, 0.4);
}
@media (min-width: 640px) { .tts-plist.tts-plist .tts-plist__hcard { padding: 1.5rem; } }
.tts-plist.tts-plist .tts-plist__hmedia { position: relative; aspect-ratio: 4 / 3; overflow: hidden; border-radius: 1rem; background: linear-gradient(to bottom, var(--pl-mist), #fff, #fff); }
.tts-plist.tts-plist .tts-plist__himg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; padding: 1.25rem; }
.tts-plist.tts-plist .tts-plist__hchip {
	position: absolute; z-index: 10; border-radius: 9999px; padding: 0.25rem 0.75rem;
	font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.12em; color: #fff;
}
.tts-plist.tts-plist .tts-plist__hchip--badge { left: 0.75rem; top: 0.75rem; background: var(--pl-brand-500); }
.tts-plist.tts-plist .tts-plist__hchip--refurb { left: 0.75rem; top: 3rem; background: var(--pl-navy-900); }

.tts-plist.tts-plist .tts-plist__hcardfoot { margin-top: 1rem; display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; }
.tts-plist.tts-plist .tts-plist__hcardinfo { min-width: 0; }
.tts-plist.tts-plist .tts-plist__hcardbrand { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.14em; color: var(--pl-brand-600); }
.tts-plist.tts-plist .tts-plist__hcardname { margin-top: 0.25rem; font-family: Manrope, Inter, sans-serif; font-size: 1.125rem; line-height: 1.75rem; font-weight: 700; letter-spacing: normal; color: var(--pl-navy-900); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tts-plist.tts-plist .tts-plist__hcardspeed { margin-top: 0.125rem; font-size: 0.75rem; line-height: 1rem; font-weight: 600; color: var(--pl-slate-500); }
.tts-plist.tts-plist .tts-plist__herolink { display: inline-flex; flex-shrink: 0; align-items: center; gap: 0.375rem; font-size: 0.875rem; font-weight: 700; color: var(--pl-navy-800); transition: color 0.15s; }
.tts-plist.tts-plist .tts-plist__herolink:hover { color: var(--pl-brand-600); }
.tts-plist.tts-plist .tts-plist__herolink svg { width: 1rem; height: 1rem; }

.tts-plist.tts-plist .tts-plist__companion {
	position: absolute; right: -1.5rem; top: -1.5rem; width: 11rem; border-radius: 1rem;
	border: 1px solid rgba(255, 255, 255, 0.1); background: #fff; padding: 0.75rem;
	box-shadow: 0 20px 25px -5px rgba(7, 21, 39, 0.4); transition: all 0.3s; display: none;
}
@media (min-width: 768px) { .tts-plist.tts-plist .tts-plist__companion { display: block; } }
.tts-plist.tts-plist .tts-plist__companion:hover { transform: translateY(-0.125rem); box-shadow: var(--pl-lift-shadow); }
.tts-plist.tts-plist .tts-plist__companionmedia { position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden; border-radius: 0.75rem; background: linear-gradient(to bottom, var(--pl-mist), #fff); }
.tts-plist.tts-plist .tts-plist__companionmedia img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; padding: 0.75rem; }
.tts-plist.tts-plist .tts-plist__companionname { display: block; margin-top: 0.5rem; font-size: 0.75rem; line-height: 1rem; font-weight: 700; color: var(--pl-navy-900); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tts-plist.tts-plist .tts-plist__companioncat { display: block; font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.12em; color: var(--pl-slate-500); }

/* ---------- Section heading ---------- */
.tts-plist.tts-plist .tts-plist__sh { display: flex; max-width: 48rem; flex-direction: column; gap: 0.75rem; align-items: flex-start; text-align: left; }
.tts-plist.tts-plist .tts-plist__eyebrow { display: inline-flex; align-items: center; gap: 0.5rem; font-size: 0.75rem; line-height: 1rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.18em; color: var(--pl-brand-600); }
.tts-plist.tts-plist .tts-plist__dash { display: inline-block; height: 1px; width: 1.5rem; background: currentColor; }
.tts-plist.tts-plist .tts-plist__h2 { font-family: Manrope, Inter, sans-serif; letter-spacing: -0.02em; font-size: 1.875rem; font-weight: 800; line-height: 1.25; color: var(--pl-navy-900); text-wrap: balance; }
@media (min-width: 640px) { .tts-plist.tts-plist .tts-plist__h2 { font-size: 2.25rem; } }
.tts-plist.tts-plist .tts-plist__shdesc { font-size: 1rem; line-height: 1.625; color: var(--pl-slate-600); }
.tts-plist.tts-plist.tts-plist--catalog .tts-plist__eyebrow { color: #f7a5a6; }
.tts-plist.tts-plist.tts-plist--catalog .tts-plist__h2 { color: #fff; }
.tts-plist.tts-plist.tts-plist--catalog .tts-plist__shdesc { color: rgba(226, 235, 243, 0.8); }
body.page-id-33 { background-color: #050d1a; }

/* ---------- Catalog ---------- */
.tts-plist.tts-plist.tts-plist--catalog { scroll-margin-top: 6rem; padding-block: 4rem; }
@media (min-width: 640px) { .tts-plist.tts-plist.tts-plist--catalog { padding-block: 5rem; } }
.tts-plist.tts-plist .tts-plist__explorer { margin-top: 2.25rem; }

.tts-plist.tts-plist .tts-plist__pills { display: flex; gap: 0.5rem; overflow-x: auto; margin-inline: -0.25rem; padding-inline: 0.25rem; padding-bottom: 0.25rem; scrollbar-width: none; }
.tts-plist.tts-plist .tts-plist__pills::-webkit-scrollbar { display: none; }
.tts-plist.tts-plist .tts-plist__pill {
	display: inline-flex; height: 2.75rem; flex-shrink: 0; align-items: center; gap: 0.5rem;
	border-radius: 9999px; border: 1px solid rgba(255, 255, 255, 0.12); background: rgba(255, 255, 255, 0.04); padding: 0 1rem;
	font-family: inherit; font-size: 0.875rem; font-weight: 600; color: rgba(226, 235, 243, 0.8);
	cursor: pointer; transition: all 0.2s;
}
.tts-plist.tts-plist .tts-plist__pill:hover { border-color: rgba(255, 255, 255, 0.3); color: #fff; }
.tts-plist.tts-plist .tts-plist__pill--active { border-color: #e81f22; background: #e81f22; color: #fff; box-shadow: 0 10px 30px -12px rgba(232, 31, 34, 0.55); }
.tts-plist.tts-plist .tts-plist__pill:focus-visible { outline: 2px solid rgba(240, 112, 114, 0.6); outline-offset: 2px; }
.tts-plist.tts-plist .tts-plist__pillcount { border-radius: 9999px; background: rgba(255, 255, 255, 0.1); padding: 0.125rem 0.5rem; font-size: 11px; font-weight: 700; color: #e2ebf3; }
.tts-plist.tts-plist .tts-plist__pill--active .tts-plist__pillcount { background: #fff; color: #a61322; }

.tts-plist.tts-plist .tts-plist__filtercard {
	margin-top: 1.25rem; border-radius: 1rem; border: 1px solid rgba(255, 255, 255, 0.1); padding: 1rem;
	background-color: rgba(255, 255, 255, 0.035);
	background-image: linear-gradient(160deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.012));
	box-shadow: 0 30px 80px -44px rgba(0, 0, 0, 0.75);
}
@media (min-width: 640px) { .tts-plist.tts-plist .tts-plist__filtercard { padding: 1.25rem; } }
.tts-plist.tts-plist .tts-plist__filtergrid { display: grid; gap: 1rem; }
@media (min-width: 1024px) {
	.tts-plist.tts-plist .tts-plist__filtergrid { grid-template-columns: repeat(12, minmax(0, 1fr)); }
	.tts-plist.tts-plist .tts-plist__fcol { grid-column: span 2 / span 2; }
	.tts-plist.tts-plist .tts-plist__fcol--search { grid-column: span 4 / span 4; }
}
.tts-plist.tts-plist .tts-plist__flabel { display: block; margin-bottom: 0.375rem; font-size: 0.875rem; font-weight: 600; line-height: 1.25rem; color: #e2ebf3; }
.tts-plist.tts-plist .tts-plist__searchwrap { position: relative; }
.tts-plist.tts-plist .tts-plist__searchwrap svg { position: absolute; left: 0.875rem; top: 50%; transform: translateY(-50%); width: 1.125rem; height: 1.125rem; color: rgba(226, 235, 243, 0.4); pointer-events: none; }
.tts-plist.tts-plist input.tts-plist__search,
.tts-plist.tts-plist .tts-plist__searchwrap input {
	height: 2.75rem; width: 100%; border-radius: 0.75rem; border: 1px solid rgba(255, 255, 255, 0.15); background: rgba(7, 21, 39, 0.6);
	padding: 0.625rem 0.875rem 0.625rem 2.5rem; font-family: inherit; font-size: 0.875rem; color: #fff;
	transition: border-color 0.15s, box-shadow 0.15s;
}
.tts-plist.tts-plist .tts-plist__searchwrap input::placeholder { color: rgba(226, 235, 243, 0.4); }
.tts-plist.tts-plist .tts-plist__select {
	height: 2.75rem; width: 100%; border-radius: 0.75rem; border: 1px solid rgba(255, 255, 255, 0.15); background: rgba(7, 21, 39, 0.6);
	padding: 0 0.875rem; font-family: inherit; font-size: 0.875rem; color: #fff;
	transition: border-color 0.15s, box-shadow 0.15s; appearance: auto;
}
.tts-plist.tts-plist .tts-plist__select option { background-color: #071527; color: #fff; }
.tts-plist.tts-plist .tts-plist__searchwrap input:focus,
.tts-plist.tts-plist .tts-plist__select:focus {
	border-color: rgba(240, 112, 114, 0.7); outline: none; box-shadow: 0 0 0 2px rgba(240, 112, 114, 0.25);
}

.tts-plist.tts-plist .tts-plist__statusrow { margin-top: 1rem; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.75rem; border-top: 1px solid rgba(255, 255, 255, 0.1); padding-top: 1rem; }
.tts-plist.tts-plist .tts-plist__count { font-size: 0.875rem; line-height: 1.25rem; font-weight: 500; color: rgba(226, 235, 243, 0.6); }
.tts-plist.tts-plist .tts-plist__clear {
	display: inline-flex; align-items: center; gap: 0.375rem; border-radius: 9999px; border: 0; background: transparent;
	padding: 0.375rem 0.75rem; font-family: inherit; font-size: 0.875rem; font-weight: 600; color: #f07072;
	cursor: pointer; transition: background 0.15s;
}
.tts-plist.tts-plist .tts-plist__clear:hover { background: rgba(240, 112, 114, 0.12); }
.tts-plist.tts-plist .tts-plist__clear svg { width: 1rem; height: 1rem; }
.tts-plist.tts-plist .tts-plist__clear[hidden] { display: none; }

.tts-plist.tts-plist .tts-plist__grid { margin-top: 2rem; display: grid; gap: 1.5rem; }
@media (min-width: 640px) { .tts-plist.tts-plist .tts-plist__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .tts-plist.tts-plist .tts-plist__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.tts-plist.tts-plist .tts-plist__grid > .tts-plist__card[hidden] { display: none; }

/* Cards */
.tts-plist.tts-plist .tts-plist__card {
	display: flex; height: 100%; flex-direction: column; overflow: hidden;
	border-radius: 1.5rem; border: 1px solid var(--pl-line); background: #fff; box-shadow: var(--pl-card-shadow);
	transition: all 0.3s;
}
.tts-plist.tts-plist .tts-plist__card:hover { transform: translateY(-0.25rem); border-color: var(--pl-navy-200); box-shadow: var(--pl-lift-shadow); }
.tts-plist.tts-plist .tts-plist__card-media { position: relative; display: block; overflow: hidden; border-bottom: 1px solid var(--pl-line); aspect-ratio: 4 / 3; background: linear-gradient(to bottom, var(--pl-mist), #fff, #fff); }
.tts-plist.tts-plist .tts-plist__card-media--banner { aspect-ratio: 16 / 9; background: var(--pl-navy-950); }
.tts-plist.tts-plist .tts-plist__cimg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; padding: 1.5rem; transition: transform 0.5s ease-out; }
.tts-plist.tts-plist .tts-plist__cimg--banner { object-fit: cover; padding: 0; }
.tts-plist.tts-plist .tts-plist__card:hover .tts-plist__cimg { transform: scale(1.05); }
.tts-plist.tts-plist .tts-plist__card:hover .tts-plist__cimg--banner { transform: scale(1.04); }
.tts-plist.tts-plist .tts-plist__chip {
	position: absolute; z-index: 10; border-radius: 9999px; padding: 0.25rem 0.75rem;
	font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.12em;
}
.tts-plist.tts-plist .tts-plist__chip--refurb { left: 1rem; top: 1rem; background: var(--pl-navy-900); color: #fff; }
.tts-plist.tts-plist .tts-plist__chip--new { left: 1rem; top: 1rem; background: rgba(255, 255, 255, 0.9); color: var(--pl-navy-800); box-shadow: inset 0 0 0 1px var(--pl-navy-200); backdrop-filter: blur(4px); }
.tts-plist.tts-plist .tts-plist__chip--badge { right: 1rem; top: 1rem; background: var(--pl-brand-500); color: #fff; }

.tts-plist.tts-plist .tts-plist__card-body { display: flex; flex: 1 1 0%; flex-direction: column; padding: 1.25rem; }
.tts-plist.tts-plist .tts-plist__card-brand { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.14em; color: var(--pl-brand-600); }
.tts-plist.tts-plist .tts-plist__card-title { margin-top: 0.375rem; font-family: Manrope, Inter, sans-serif; font-size: 1.125rem; font-weight: 700; line-height: 1.375; letter-spacing: -0.02em; color: var(--pl-navy-900); }
.tts-plist.tts-plist .tts-plist__card-title a { color: inherit; transition: color 0.15s; }
.tts-plist.tts-plist .tts-plist__card-title a:hover { color: var(--pl-brand-600); }
.tts-plist.tts-plist .tts-plist__card-summary {
	margin-top: 0.5rem; min-height: 2.6rem; font-size: 0.875rem; line-height: 1.625; color: var(--pl-slate-600);
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}

.tts-plist.tts-plist .tts-plist__specs { margin-top: 1rem; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); overflow: hidden; border-radius: 0.75rem; border: 1px solid var(--pl-line); background: rgba(245, 247, 250, 0.7); }
.tts-plist.tts-plist .tts-plist__speccell { padding: 0.625rem 0.75rem; }

.tts-plist.tts-plist .tts-plist__speccell { border-right: 1px solid var(--pl-line); }
.tts-plist.tts-plist .tts-plist__speccell:last-child { border-right: 0; }
.tts-plist.tts-plist .tts-plist__specs dt { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.12em; color: var(--pl-slate-500); }
.tts-plist.tts-plist .tts-plist__specs dd { margin-top: 0.125rem; font-size: 0.75rem; font-weight: 700; line-height: 1.375; color: var(--pl-navy-900); }

.tts-plist.tts-plist .tts-plist__card-actions { margin-top: auto; display: flex; gap: 0.5rem; padding-top: 1.25rem; }

/* Load more + empty */
.tts-plist.tts-plist .tts-plist__morewrap { margin-top: 2.5rem; display: flex; justify-content: center; }
.tts-plist.tts-plist .tts-plist__morewrap[hidden] { display: none; }
.tts-plist.tts-plist .tts-plist__morebtn {
	display: inline-flex; height: 2.75rem; align-items: center; gap: 0.5rem; border-radius: 0.75rem;
	border: 1px solid rgba(255, 255, 255, 0.15); background: rgba(255, 255, 255, 0.05); padding: 0 1.5rem; font-family: inherit;
	font-size: 0.875rem; font-weight: 600; color: #fff; cursor: pointer; transition: all 0.2s;
}
.tts-plist.tts-plist .tts-plist__morebtn:hover { border-color: rgba(255, 255, 255, 0.35); background: rgba(255, 255, 255, 0.09); }
.tts-plist.tts-plist .tts-plist__morebtn svg { width: 1rem; height: 1rem; }

.tts-plist.tts-plist .tts-plist__empty {
	margin-top: 2rem; display: flex; flex-direction: column; align-items: center; gap: 1rem; border-radius: 1.5rem;
	border: 1px dashed rgba(255, 255, 255, 0.15); padding: 4rem 1.5rem; text-align: center;
	background-color: rgba(255, 255, 255, 0.035);
	background-image: linear-gradient(160deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.012));
}
.tts-plist.tts-plist .tts-plist__empty[hidden] { display: none; }
.tts-plist.tts-plist .tts-plist__emptyicon svg { width: 2.5rem; height: 2.5rem; color: rgba(226, 235, 243, 0.4); }
.tts-plist.tts-plist .tts-plist__emptytitle { font-size: 1.125rem; font-weight: 700; color: #fff; }
.tts-plist.tts-plist .tts-plist__emptytext { margin-top: 0.25rem; font-size: 0.875rem; line-height: 1.5; color: rgba(226, 235, 243, 0.6); }
.tts-plist.tts-plist .tts-plist__emptybtn {
	display: inline-flex; height: 2.5rem; align-items: center; border-radius: 0.5rem; border: 0;
	background: var(--pl-brand-500); padding: 0 1.25rem; font-family: inherit; font-size: 0.875rem;
	font-weight: 600; color: #fff; cursor: pointer; transition: background 0.15s;
}
.tts-plist.tts-plist .tts-plist__emptybtn:hover { background: var(--pl-brand-600); }

/* ---------- Guidance ---------- */
.tts-plist.tts-plist.tts-plist--guide {
	border-block: 1px solid rgba(226, 232, 240, 0.7);
	background-color: #f8f6f1;
	background-image: linear-gradient(180deg, #fbfaf7, #f3f0e8);
}
.tts-plist.tts-plist.tts-plist--guide .tts-plist__shell { padding-block: 5rem; }
@media (min-width: 640px) { .tts-plist.tts-plist.tts-plist--guide .tts-plist__shell { padding-block: 6rem; } }
.tts-plist.tts-plist .tts-plist__guidegrid { margin-top: 3rem; display: grid; gap: 1.25rem; }
@media (min-width: 640px) { .tts-plist.tts-plist .tts-plist__guidegrid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.tts-plist.tts-plist .tts-plist__gcell { height: 100%; }
.tts-plist.tts-plist .tts-plist__gcard { display: flex; height: 100%; flex-direction: column; border-radius: 1.5rem; border: 1px solid var(--pl-line); background: #fff; padding: 1.5rem; box-shadow: var(--pl-card-shadow); }
.tts-plist.tts-plist .tts-plist__gtile { display: grid; height: 2.75rem; width: 2.75rem; place-items: center; border-radius: 1rem; background: var(--pl-navy-800); color: #fff; }
.tts-plist.tts-plist .tts-plist__gtile svg { width: 1.375rem; height: 1.375rem; }
.tts-plist.tts-plist .tts-plist__gtitle { margin-top: 1rem; font-family: Manrope, Inter, sans-serif; font-size: 1.125rem; line-height: 1.75rem; font-weight: 700; letter-spacing: -0.02em; color: var(--pl-navy-900); }
.tts-plist.tts-plist .tts-plist__gdesc { margin-top: 0.5rem; font-size: 0.875rem; line-height: 1.625; color: var(--pl-slate-600); }
.tts-plist.tts-plist .tts-plist__glinks { margin-top: auto; display: flex; flex-wrap: wrap; column-gap: 1.25rem; row-gap: 0.5rem; padding-top: 1.25rem; }
.tts-plist.tts-plist .tts-plist__glink { display: inline-flex; align-items: center; gap: 0.375rem; font-size: 0.875rem; line-height: 1.25rem; font-weight: 700; color: var(--pl-brand-600); transition: color 0.15s; }
.tts-plist.tts-plist .tts-plist__glink:hover { color: var(--pl-brand-700); }
.tts-plist.tts-plist .tts-plist__glink svg { width: 1rem; height: 1rem; }

.tts-plist.tts-plist .tts-plist__band { margin-top: 2rem; display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: 1.25rem; border-radius: 1.5rem; border: 1px solid var(--pl-line); background: var(--pl-navy-900); padding: 2rem 1.5rem; text-align: center; }
@media (min-width: 640px) { .tts-plist.tts-plist .tts-plist__band { flex-direction: row; padding-inline: 2.5rem; text-align: left; } }
.tts-plist.tts-plist .tts-plist__bandtitle { font-family: Manrope, Inter, sans-serif; font-size: 1.125rem; line-height: 1.75rem; font-weight: 700; letter-spacing: normal; color: #fff; }
.tts-plist.tts-plist .tts-plist__banddesc { margin-top: 0.25rem; font-size: 0.875rem; line-height: 1.25rem; color: rgba(226, 235, 243, 0.75); }
.tts-plist.tts-plist .tts-plist__bandbtns { display: flex; flex-shrink: 0; flex-wrap: wrap; gap: 0.75rem; }

/* ---------- Closing CTA ---------- */
.tts-plist.tts-plist.tts-plist--cta .tts-plist__shell { padding-block: 5rem; }
@media (min-width: 640px) { .tts-plist.tts-plist.tts-plist--cta .tts-plist__shell { padding-block: 6rem; } }
.tts-plist.tts-plist .tts-plist__ctacard {
	position: relative; overflow: hidden; border-radius: 1.5rem; padding: 3.5rem 1.5rem; text-align: center;
	border: 1px solid rgba(255, 255, 255, 0.1);
	background-color: #0c2038;
	background-image: linear-gradient(to bottom right, #0c2038 0%, #0c2038 50%, #071527 100%);
	box-shadow: 0 30px 80px -44px rgba(0, 0, 0, 0.75);
}
@media (min-width: 640px) { .tts-plist.tts-plist .tts-plist__ctacard { padding: 4rem 3rem; } }
.tts-plist.tts-plist .tts-plist__ctagrid {
	position: absolute; inset: 0; opacity: 0.6;
	background-image: linear-gradient(rgb(255 255 255 / 0.045) 1px, transparent 1px), linear-gradient(90deg, rgb(255 255 255 / 0.045) 1px, transparent 1px);
	background-size: 44px 44px;
}
.tts-plist.tts-plist .tts-plist__ctaorb { position: absolute; right: -5rem; top: -6rem; height: 18rem; width: 18rem; border-radius: 9999px; background: rgba(232, 31, 34, 0.25); filter: blur(64px); }
.tts-plist.tts-plist .tts-plist__ctainner { position: relative; margin-inline: auto; display: flex; max-width: 48rem; flex-direction: column; align-items: center; gap: 1.25rem; }
.tts-plist.tts-plist .tts-plist__ctah2 { font-family: Manrope, Inter, sans-serif; letter-spacing: -0.02em; font-size: 1.875rem; font-weight: 800; line-height: 1.25; color: #fff; text-wrap: balance; }
@media (min-width: 640px) { .tts-plist.tts-plist .tts-plist__ctah2 { font-size: 2.25rem; } }
.tts-plist.tts-plist .tts-plist__ctadesc { max-width: 42rem; font-size: 1rem; line-height: 1.625; color: rgba(226, 235, 243, 0.85); }
.tts-plist.tts-plist .tts-plist__ctaactions { margin-top: 0.5rem; display: flex; flex-direction: column; gap: 0.75rem; }
@media (min-width: 640px) { .tts-plist.tts-plist .tts-plist__ctaactions { flex-direction: row; } }
.tts-plist.tts-plist .tts-plist__ctaphone { display: inline-flex; align-items: center; gap: 0.5rem; font-size: 0.875rem; font-weight: 500; line-height: 1.25rem; color: rgba(226, 235, 243, 0.75); transition: color 0.15s; }
.tts-plist.tts-plist .tts-plist__ctaphone:hover { color: #fff; }
.tts-plist.tts-plist .tts-plist__ctaphone svg { width: 1rem; height: 1rem; }

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
	.tts-plist.tts-plist .tts-plist__reveal { opacity: 1; transform: none; transition: none; }
	.tts-plist.tts-plist .tts-rise { animation: none; }
	.tts-plist.tts-plist .tts-plist__card, .tts-plist.tts-plist .tts-plist__cimg { transition: none; }
}
