/*
  theme.css -- override any :root variable here to retheme the blog.

  This is the only file you need to edit to customize the site's visual
  appearance. All defaults are listed below as comments. Uncomment and
  change any value to override it.

  Base.astro puts its defaults inside @layer base, so declarations here
  (which are unlayered) always take priority -- no specificity tricks needed.

  Note: this template defines explicit dark mode colors in Base.astro.
  Overriding light-mode --color-* variables here won't affect dark mode.
  To customize dark mode, also override --color-* variables inside a
  @media (prefers-color-scheme: dark) block and/or in the :root.dark rule.
*/

:root {
    --bg-color: #f4f7f6;
    --surface-color: #ffffff;
    --text-main: #1e293b;
    --text-muted: #64748b;
    --text-light: #94a3b8;
    --accent: #0f172a;
    --accent-light: #334155;
    --border: #e2e8f0;
    --hover-bg: #f8fafc;
    --accent-text: #ffffff;
}

@media (prefers-color-scheme: dark) {
    :root {
        --bg-color: #0f172a;
        --surface-color: #1e293b;
        --text-main: #f8fafc;
        --text-muted: #94a3b8;
        --text-light: #64748b;
        --accent: #f8fafc;
        --accent-light: #e2e8f0;
        --border: #334155;
        --hover-bg: #334155;
        --accent-text: #0f172a;
    }
}

.places header {
    text-align: center;
    max-width: 700px;
    margin-bottom: 3rem;
    margin: auto;
}

.places header h1,
.places header h2 {
    font-weight: 700;
    margin-bottom: 1rem;
    color: var(--text-main);
    letter-spacing: -0.03em;
}

.places header h1 {
    font-size: 2.5rem;
}

.places header h2 {
    font-size: 2rem;
}

.places header p {
    font-size: 1.125rem;
    color: var(--text-muted);
}

.places .data-list {
    width: 100%;
    max-width: 1200px;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* The List Header (Desktop Only) */

.places .list-header {
    display: none;
    grid-template-columns: 2.5fr 3fr 1.5fr 2fr 160px;
    gap: 1.5rem;
    padding: 0 1.5rem;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-muted);
}

@media (min-width: 1024px) {
    .places .list-header {
        display: grid;
    }

    .places .list-header div:first-child {
        text-align: center;
    }
}

/* Individual Item */

.places .list-item {
    background: var(--surface-color);
    border-radius: 16px;
    border: 1px solid var(--border);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.02), 0 2px 4px -1px rgba(0, 0, 0, 0.02);
    overflow: hidden;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.places .list-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.05), 0 4px 6px -2px rgba(0, 0, 0, 0.03);
}

/* Mobile Layout (Default) - Stacked */

.places .item-content {
    display: flex;
    flex-direction: column;
}

.places .item-image-wrapper {
    width: 100%;
    height: 200px;
    position: relative;
}

.places .item-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.places .item-details {
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.places .col-group {
    display: flex;
    flex-direction: column;
}

.places .mobile-label {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    color: var(--text-light);
    letter-spacing: 0.05em;
    margin-bottom: 0.25rem;
    display: block;
}

.places .item-title {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-main);
    margin-bottom: 0.25rem;
    letter-spacing: -0.01em;
}

.places .item-category {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--accent);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.places .item-desc {
    font-size: 0.95rem;
    color: var(--text-muted);
    line-height: 1.5;
}

.places .item-text-strong {
    font-weight: 500;
    color: var(--text-main);
}

.places .item-text-sub {
    font-size: 0.85rem;
    color: var(--text-muted);
    margin-top: 0.125rem;
}

/* Buttons */

.places .action-group {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    width: 100%;
    margin-top: 0.5rem;
}

.places .btn {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 0.75rem 1.25rem;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
    width: 100%;
    text-align: center;
}

.places .btn-primary {
    background-color: var(--accent);
    color: var(--accent-text);
    border: 1px solid var(--accent);
}

.places .btn-primary:hover {
    background-color: var(--accent-light);
}

.places .btn-secondary {
    background-color: var(--surface-color);
    color: var(--text-main);
    border: 1px solid var(--border);
}

.places .btn-secondary:hover {
    background-color: var(--hover-bg);
    border-color: #d1d5db;
}

/* Tablet Layout (768px - 1023px) */

@media (min-width: 768px) and (max-width: 1023px) {
    .places .item-content {
        flex-direction: row;
    }

    .places .item-image-wrapper {
        width: 250px;
        height: auto;
        min-height: 100%;
        flex-shrink: 0;
    }

    .places .item-details {
        flex: 1;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 1.5rem;
    }

    .places .col-main {
        grid-column: span 2;
        border-bottom: 1px solid var(--border);
        padding-bottom: 1.5rem;
    }

    .places .action-group {
        grid-column: span 2;
        flex-direction: row;
        flex-wrap: wrap;
        margin-top: 0;
    }

    .places .action-group .btn {
        flex: 1;
        min-width: 120px;
    }
}

/* Desktop Layout (1024px+) */

@media (min-width: 1024px) {
    .places .data-list {
        gap: 1rem;
    }

    .places .list-item {
        border-radius: 12px;
    }

    .places .item-content {
        display: grid;
        grid-template-columns: 2.5fr 3fr 1.5fr 2fr 160px;
        gap: 1.5rem;
        align-items: center;
        padding: 1.25rem 1.5rem;
    }

    .places .item-image-wrapper {
        display: none;
    }

    .places .col-main {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        text-align: center;
        gap: 0.5rem;
    }

    .places .desktop-thumbnail {
        width: 64px;
        height: 64px;
        border-radius: 8px;
        object-fit: cover;
        display: block;
        flex-shrink: 0;
    }

    .places .item-details {
        display: contents;
    }

    .places .mobile-label {
        display: none;
    }

    .places .col-group {
        padding: 0;
        justify-content: center;
    }

    .places .action-group {
        margin-top: 0;
        gap: 0.5rem;
    }

    .places .btn {
        padding: 0.5rem 0.75rem;
        font-size: 0.8125rem;
    }
}

/* Hide desktop thumbnail on mobile/tablet */

@media (max-width: 1023px) {
    .places .desktop-thumbnail {
        display: none;
    }
}

/* Footer / Load More Buttons */

.places .list-footer {
    display: flex;
    justify-content: center;
    padding: 2rem 0;
    width: 100%;
}

.places .load-more-btn {
    width: auto;
    min-width: 200px;
    padding: 0.875rem 2.5rem;
    border-radius: 999px;
    font-size: 1rem;
    font-weight: 600;
}

:root {
	/* --- Colors ---
	--color-bg: #ffffff;
	--color-bg-subtle: #fafafa;
	--color-text: #1a1a1a;
	--color-text-secondary: #525252;
	--color-muted: #8b8b8b;
	--color-border: #e5e5e5;
	--color-border-subtle: #f0f0f0;
	--color-surface: #f7f7f7;
	--color-accent: #0066cc;
	--color-accent-hover: #0052a3;
	--color-on-accent: white;
	--color-accent-ring: color-mix(in srgb, var(--color-accent) 25%, transparent);
	*/

	/* --- Type scale ---
	--font-size-xs: 0.8125rem;
	--font-size-sm: 0.875rem;
	--font-size-base: 1rem;
	--font-size-lg: 1.125rem;
	--font-size-xl: 1.25rem;
	--font-size-2xl: 1.5rem;
	--font-size-3xl: 2rem;
	--font-size-4xl: 2.5rem;
	--font-size-5xl: 3.5rem;
	*/

	/* --- Line heights ---
	--leading-tight: 1.15;
	--leading-snug: 1.3;
	--leading-normal: 1.5;
	--leading-relaxed: 1.7;
	*/

	/* --- Letter spacing ---
	--tracking-tight: -0.03em;    used on h1 and large titles
	--tracking-snug: -0.02em;     used on h2–h6, site/card titles
	--tracking-wide: 0.06em;      used on meta labels, TOC/widget titles
	--tracking-wider: 0.08em;     used on footer headings, section labels
	*/

	/* --- Spacing ---
	--spacing-1: 0.25rem;
	--spacing-2: 0.5rem;
	--spacing-3: 0.75rem;
	--spacing-4: 1rem;
	--spacing-5: 1.25rem;
	--spacing-6: 1.5rem;
	--spacing-8: 2rem;
	--spacing-10: 2.5rem;
	--spacing-12: 3rem;
	--spacing-16: 4rem;
	--spacing-20: 5rem;
	--spacing-24: 6rem;
	*/

	/* --- Layout ---
	--content-width: 680px;       article/page body column width
	--wide-width: 1200px;         max container width (home, archives)
	--gutter-width: 200px;        right sidebar column (TOC) on article pages
	--meta-col-width: 180px;      left meta column on article pages
	--nav-height: 64px;           sticky header height
	--search-input-width: 180px;  nav search box width
	*/

	/* --- Borders & radius ---
	--radius: 4px;
	--radius-lg: 8px;
	*/

	/* --- Transitions ---
	--transition-fast: 120ms ease;
	--transition-base: 180ms ease;
	*/

	/* --- Avatars ---
	--avatar-size-xs: 18px;    card byline avatars
	--avatar-size-sm: 20px;    post list byline avatars
	--avatar-size-md: 24px;    featured post byline avatars
	--avatar-size-lg: 32px;    single post byline avatars
	*/

	/* --- Shadows ---
	--shadow-dropdown: 0 8px 30px rgba(0, 0, 0, 0.12);
	--shadow-btn-active: 0 1px 2px rgba(0, 0, 0, 0.05);
	*/

	/* --- Misc ---
	--tag-padding-y: 2px;    vertical padding on tag pills
	*/
}

/* Card Container */

.hstl-card {
	background: #ffffff;
	border: 1px solid #f3f4f6;
	border-radius: 16px;
	padding: 32px;
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	color: #1f2937;
	max-width: 800px;
	margin: 30px auto;
	box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.05), 0 8px 10px -6px rgba(0, 0, 0, 0.01);
	box-sizing: border-box;
}

/* Header & Top Booking Buttons */

.hstl-header-top {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 16px;
	margin-bottom: 15px;
	padding-bottom: 20px;
	border-bottom: 1px solid #f3f4f6;
}

.hstl-title-wrap h2 {
	margin: 0;
	font-size: 28px;
	font-weight: 800;
	color: #111827;
	letter-spacing: -0.5px;
}

.hstl-cta-group-top {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	padding-bottom: 8px;
	width: 100%;
}

.hstl-platform-btn {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	font-size: 13px;
	font-weight: 700;
	color: #ffffff !important;
	text-decoration: none !important;
	border-radius: 8px;
	transition: all 0.2s ease;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
	border: 1px solid transparent;
	flex-shrink: 0;
}

.hstl-platform-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.15);
}

/* Rating pill inside the button */

.hstl-btn-rating {
	background: rgba(255, 255, 255, 0.25);
	padding: 2px 6px;
	border-radius: 4px;
	font-size: 12px;
}

.cta-hw {
	background: #FF7547;
}

.cta-bk {
	background: #003580;
}

.cta-ag {
	background: #5392F9;
}

.cta-gg {
	background: #ffffff;
	color: #3c4043 !important;
	border-color: #e5e7eb;
}

.cta-gg .hstl-btn-rating {
	background: #f3f4f6;
	color: #4b5563;
}

/* Tags & Ratings Area */

.hstl-tags-wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0 0 24px 0;
}

.hstl-badge {
	font-size: 12px;
	font-weight: 600;
	padding: 6px 12px;
	border-radius: 20px;
	letter-spacing: 0.3px;
}

/* Specific Tag Styles */

.badge-price {
	background: #ecfdf5;
	color: #059669;
	border: 1px solid #a7f3d0;
	font-weight: 800;
}

.badge-overall {
	background: #fef3c7;
	color: #92400e;
	border: 1px solid #fde68a;
	font-weight: 800;
}

.badge-score {
	background: #f3f4f6;
	color: #4b5563;
	border: 1px solid #e5e7eb;
}

.badge-vibe {
	background: #fef2f2;
	color: #dc2626;
	border: 1px solid #fee2e2;
	text-transform: uppercase;
}

.badge-perk {
	background: #eff6ff;
	color: #2563eb;
	border: 1px solid #dbeafe;
	text-transform: uppercase;
}

.badge-restriction {
	background: #1f2937;
	color: #f9fafb;
	border: 1px solid #111827;
}

/* Body Content */

.hstl-beds-info {
	font-size: 14px;
	color: #4b5563;
	margin: 0 0 20px 0;
	font-weight: 500;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
	background: #f8fafc;
	padding: 12px 16px;
	border-radius: 12px;
	border: 1px solid #e2e8f0;
}

.hstl-beds-title {
	color: #1f2937;
	font-weight: 700;
	display: flex;
	align-items: center;
	gap: 6px;
}

.hstl-bed-tag {
	background: #ffffff;
	border: 1px solid #d1d5db;
	color: #374151;
	padding: 4px 10px;
	border-radius: 6px;
	font-size: 13px;
	font-weight: 600;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.hstl-image-placeholder {
	width: 100%;
	height: 240px;
	background: #e2e8f0;
	border-radius: 12px;
	margin-bottom: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #64748b;
	font-size: 16px;
	font-weight: 600;
}

.hstl-location-text {
	font-size: 14px;
	color: #6b7280;
	margin-top: 6px;
	font-weight: 500;
}

.badge-freebie {
	background: #fff7ed;
	color: #c2410c;
	border: 1px solid #ffedd5;
	font-weight: 700;
}

.hstl-facts-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 16px;
	margin: 0 0 24px 0;
}

@media (min-width: 600px) {
	.hstl-facts-grid {
		grid-template-columns: repeat(3, 1fr);
		gap: 20px;
	}
}

.hstl-fact-item {
	display: flex;
	align-items: flex-start;
	gap: 12px;
}

.hstl-fact-icon {
	font-size: 20px;
	background: #f3f4f6;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	flex-shrink: 0;
}

.hstl-fact-text {
	display: flex;
	flex-direction: column;
}

.hstl-fact-label {
	font-size: 11px;
	color: #6b7280;
	text-transform: uppercase;
	font-weight: 700;
	letter-spacing: 0.5px;
}

.hstl-fact-value {
	font-size: 13px;
	color: #111827;
	font-weight: 600;
	line-height: 1.4;
	margin-top: 2px;
}

.hstl-price-info-wrap {
	display: flex;
	flex-direction: column;
}

.hstl-urgency-text {
	font-size: 12px;
	color: #dc2626;
	margin-top: 4px;
	font-weight: 600;
}

.hstl-description {
	font-size: 16px;
	line-height: 1.6;
	color: #4b5563;
	margin: 0 0 24px 0;
}

/* Important Info Area */

.hstl-important-info {
	background: #fffbeb;
	border: 1px solid #fde68a;
	border-radius: 12px;
	padding: 20px;
	margin-bottom: 24px;
	color: #92400e;
}

.hstl-important-info h4 {
	margin: 0 0 12px 0;
	font-size: 16px;
	font-weight: 800;
	display: flex;
	align-items: center;
	gap: 8px;
}

.hstl-important-info ul {
	margin: 0;
	padding-left: 20px;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.6;
}

.hstl-important-info li {
	margin-bottom: 6px;
}

.hstl-important-info li:last-child {
	margin-bottom: 0;
}

/* Pros & Cons Grid */

.hstl-pros-cons-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
	background: #f9fafb;
	border: 1px solid #f3f4f6;
	border-radius: 12px;
	padding: 24px;
	margin-bottom: 24px;
}

@media (max-width: 600px) {
	.hstl-pros-cons-grid {
		grid-template-columns: 1fr;
		padding: 16px;
		gap: 16px;
	}

	.hstl-card-premium {
		padding: 20px;
	}
}

.hstl-pros-cons-grid h4 {
	margin: 0 0 12px 0;
	font-size: 16px;
	font-weight: 700;
}

.hstl-pros-cons-grid ul {
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 15px;
	color: #4b5563;
	line-height: 1.5;
}

.hstl-pros-cons-grid li {
	margin-bottom: 8px;
	display: flex;
	align-items: flex-start;
	gap: 8px;
}

.hstl-pros h4 {
	color: #059669;
}

.hstl-pros li::before {
	content: '✓';
	color: #10b981;
	font-weight: bold;
}

.hstl-cons h4 {
	color: #dc2626;
}

.hstl-cons li::before {
	content: '✕';
	color: #ef4444;
	font-weight: bold;
}

/* Footer & Main Book Button */

.hstl-bottom-bar {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
	padding-top: 24px;
	border-top: 1px solid #f3f4f6;
}

.hstl-price-text {
	font-size: 16px;
	color: #374151;
}

.hstl-price-text strong {
	font-size: 22px;
	color: #111827;
}

.hstl-main-book-btn {
	background: #10b981;
	color: #ffffff !important;
	padding: 10px 32px;
	font-size: 16px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	text-decoration: none !important;
	border-radius: 8px;
	transition: all 0.2s ease;
	box-shadow: 0 4px 6px rgba(16, 185, 129, 0.25);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
}

.hstl-via-text {
	font-size: 11px;
	font-weight: 500;
	text-transform: none;
	letter-spacing: 0;
	opacity: 0.9;
}

.hstl-main-book-btn:hover {
	background: #059669;
	transform: translateY(-2px);
	box-shadow: 0 6px 12px rgba(16, 185, 129, 0.3);
}

/* Dark Mode Support */

:root.dark {
	& .hstl-card {
		background: #1e293b;
		border-color: #334155;
		color: #f8fafc;
		box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.5), 0 8px 10px -6px rgba(0, 0, 0, 0.3);
	}

	& .hstl-header-top,
	& .hstl-bottom-bar {
		border-color: #334155;
	}

	& .hstl-title-wrap h2,
	& .hstl-beds-info strong,
	& .hstl-price-text strong {
		color: #ffffff;
	}

	& .hstl-location-text,
	& .hstl-description,
	& .hstl-price-text {
		color: #cbd5e1;
	}

	& .hstl-fact-icon {
		background: #334155;
	}

	& .hstl-fact-label {
		color: #94a3b8;
	}

	& .hstl-fact-value {
		color: #f8fafc;
	}

	& .hstl-image-placeholder {
		background: #334155;
		color: #94a3b8;
	}

	& .cta-gg {
		background: #334155;
		color: #f8fafc !important;
		border-color: #475569;
	}

	& .cta-gg .hstl-btn-rating {
		background: #475569;
		color: #f8fafc;
	}

	& .hstl-badge {
		background: #334155;
		color: #f8fafc;
		border-color: #475569;
	}

	& .badge-restriction {
		background: #7f1d1d;
		color: #fecaca;
		border-color: #991b1b;
	}

	& .badge-overall {
		background: rgba(253, 230, 138, 0.1);
		color: #fde047;
		border-color: rgba(253, 230, 138, 0.2);
	}

	& .badge-price {
		background: rgba(167, 243, 208, 0.1);
		color: #6ee7b7;
		border-color: rgba(167, 243, 208, 0.2);
	}

	& .badge-freebie {
		background: rgba(255, 237, 213, 0.1);
		color: #fdba74;
		border-color: rgba(255, 237, 213, 0.2);
	}

	& .badge-vibe {
		background: rgba(254, 226, 226, 0.1);
		color: #fca5a5;
		border-color: rgba(254, 226, 226, 0.2);
	}

	& .badge-perk {
		background: rgba(219, 234, 254, 0.1);
		color: #93c5fd;
		border-color: rgba(219, 234, 254, 0.2);
	}

	& .hstl-beds-info {
		background: #0f172a;
		border-color: #334155;
		color: #cbd5e1;
	}

	& .hstl-beds-title {
		color: #ffffff;
	}

	& .hstl-bed-tag {
		background: #1e293b;
		border-color: #475569;
		color: #cbd5e1;
	}

	& .hstl-important-info {
		background: rgba(253, 230, 138, 0.05);
		border-color: rgba(253, 230, 138, 0.2);
		color: #fde047;
	}

	& .hstl-pros-cons-grid {
		background: #0f172a;
		border-color: #334155;
		color: #cbd5e1;
	}

	& .hstl-pros-cons-grid ul {
		color: #cbd5e1;
	}

	& .hstl-pros h4 {
		color: #34d399;
	}

	& .hstl-cons h4 {
		color: #f87171;
	}

	& .hstl-urgency-text {
		color: #f87171;
	}
}

/* Hostel Table Wrapper Styles */

.hstl-table-wrapper table th {
	border-bottom: 2px solid #e5e7eb;
}

.hstl-table-wrapper table tr {
	border-bottom: 1px solid #f3f4f6;
	transition: background-color 0.2s ease;
}

.hstl-table-wrapper table tr:hover {
	background-color: #f9fafb;
}

.rating-stack {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.rating-stack .hstl-platform-btn {
	padding: 4px 8px;
	font-size: 11px;
	justify-content: space-between;
	min-width: 130px;
}

.hstl-desc-snippet {
	font-size: 13px;
	color: #6b7280;
	margin-top: 4px;
	line-height: 1.4;
	max-width: 100%;
	min-width: 250px;
}

.hstl-features-list {
	margin: 6px 0 0 0;
	padding: 0;
	list-style: none;
	font-size: 12px;
	color: #4b5563;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.hstl-features-list li {
	display: flex;
	align-items: center;
	gap: 4px;
}

.hstl-features-list li::before {
	content: '✓';
	color: #10b981;
	font-weight: bold;
}

.hstl-room-type {
	font-size: 11px;
	color: #6b7280;
	margin-top: 4px;
	font-weight: 500;
}

.hstl-review-count {
	font-size: 10px;
	opacity: 0.8;
	margin-left: 4px;
	font-weight: 400;
}

:root.dark .hstl-table-wrapper table th {
	border-bottom-color: #334155;
	color: #94a3b8 !important;
}

:root.dark .hstl-table-wrapper table tr {
	border-bottom-color: #334155;
}

:root.dark .hstl-table-wrapper table tr:hover {
	background-color: rgba(255, 255, 255, 0.03);
}

:root.dark .hstl-desc-snippet,
:root.dark .hstl-features-list,
:root.dark .hstl-room-type {
	color: #cbd5e1;
}