.xts-travel-reviews-main .wp-block-post-title {
	margin-block: 0 var(--wp--preset--spacing--40);
	text-align: center;
}
.xts-travel-reviews-main .wp-block-post-content > p:first-child {
	max-width: 52rem;
	margin-inline: auto;
	text-align: center;
}
.xts-reviews { --xts-review-border: #d5dce5; display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--wp--preset--spacing--40); align-items: start; }
.xts-reviews > * { min-inline-size: 0; }
.xts-reviews :where(h2, h3, p) { margin-block: 0 1rem; }
.xts-reviews :where(h2) { font-size: 1.35rem; line-height: 1.4; }
.xts-reviews-list-heading { display: flex; align-items: baseline; flex-wrap: wrap; gap: .5rem 1rem; margin-block-end: 1.5rem; }
.xts-reviews-list-heading h2 { margin: 0; }
@media (max-width: 599px) {
	.xts-reviews-list-heading { justify-content: center; text-align: center; }
	.xts-reviews-list-heading h2 { flex-basis: 100%; }
}
.xts-reviews-list-heading > span, .xts-reviews-card time, .xts-reviews-form small { color: var(--wp--preset--color--accent-4); font-size: .875rem; }
.xts-reviews-card, .xts-reviews-empty { background: var(--wp--preset--color--base); border: 1px solid var(--xts-review-border); padding: var(--wp--preset--spacing--40); margin-block-end: 1.25rem; box-shadow: 0 8px 28px rgb(0 0 0 / 4%); }
.xts-reviews-card header { display: flex; flex-wrap: wrap; align-items: baseline; gap: .5rem; }
.xts-reviews-card h3 { font-size: 1rem; margin: 0; }
.xts-reviews-stars { display: flex; align-items: center; gap: .6rem; margin-block: .35rem .6rem; }
.xts-reviews-stars > span:first-child { color: var(--wp--preset--color--accent-1); font-size: 1.4rem; letter-spacing: .08em; }
.xts-reviews-score { font-size: .875rem; }
.xts-reviews .xts-reviews-details { margin-block: .25rem; font-size: .875rem; }
.xts-reviews-text { border-block-start: 1px solid var(--xts-review-border); padding-block-start: 1rem; margin-block-start: 1rem; overflow-wrap: anywhere; }
.xts-reviews-text p:last-child, .xts-reviews-reply p:last-child { margin-block-end: 0; }
.xts-reviews-reply { background: #f3f7fc; border-inline-start: 3px solid var(--wp--preset--color--accent-1); margin-block-start: 1.25rem; padding: 1rem; overflow-wrap: anywhere; }
.xts-reviews-reply strong { display: block; margin-block-end: .5rem; }
.xts-reviews-empty { text-align: center; padding-block: var(--wp--preset--spacing--50); }
.xts-reviews-empty h3 { font-size: 1.25rem; }
.xts-reviews-empty-star { display: block; color: var(--wp--preset--color--accent-1); font-size: 3rem; }
.xts-reviews-empty a { color: var(--wp--preset--color--contrast); }
.xts-reviews-form { background: #f3f7fc; padding: var(--wp--preset--spacing--40); border-block-start: 3px solid var(--wp--preset--color--accent-1); scroll-margin-block-start: 8rem; }
.xts-reviews-form .comment-respond { margin: 0; }
.xts-reviews-form .xts-reviews-form-note { color: var(--wp--preset--color--accent-4); font-size: .875rem; line-height: 1.5; }
/* Use a local text font so Cyrillic labels do not depend on imported font files. */
.xts-reviews-form :where(label, legend) { font-family: Arial, sans-serif; font-size: .875rem; font-weight: 600; }
.xts-reviews-form p > label { display: block; margin-block-end: .4rem; }
.xts-reviews-icon { color: var(--wp--preset--color--accent-2); margin-inline-end: .5rem; }
.xts-reviews-form :where(input[type="text"], input[type="email"], textarea) { box-sizing: border-box; display: block; inline-size: 100%; min-block-size: 46px; border: 1px solid var(--xts-review-border); border-radius: 0; background: var(--wp--preset--color--base); color: var(--wp--preset--color--contrast); font: inherit; font-size: 1rem; padding: .7rem; }
.xts-reviews-form textarea { resize: vertical; min-block-size: 9rem; }
.xts-reviews-form small { display: block; margin-block-start: .35rem; }
.xts-reviews-rating { min-inline-size: 0; border: 0; margin: 0 0 1.25rem; padding: 0; }
.xts-reviews-rating legend { margin-block-end: .6rem; }
.xts-reviews-rating-options { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .4rem; }
.xts-reviews-rating-options label { display: flex; align-items: center; justify-content: center; gap: .25rem; cursor: pointer; min-block-size: 44px; padding: .35rem; background: var(--wp--preset--color--base); border: 1px solid var(--xts-review-border); }
.xts-reviews-rating-options label { position: relative; box-sizing: border-box; }
.xts-reviews-rating-options input { position: absolute; opacity: 0; inline-size: 1px; block-size: 1px; margin: 0; }
.xts-reviews-rating-options label:focus-within { box-shadow: 0 0 0 2px var(--wp--preset--color--base), 0 0 0 4px #005fcc; }
.xts-reviews-rating-options label > span:first-of-type { color: var(--wp--preset--color--accent-1); }
.xts-reviews-rating-options label:has(input:checked) { border-color: var(--wp--preset--color--accent-2); background: #fff0e8; }
.xts-reviews-form .xts-reviews-consent label { display: flex; align-items: start; gap: .6rem; font-weight: 400; line-height: 1.5; }
.xts-reviews-consent input { flex-shrink: 0; inline-size: 18px; block-size: 18px; margin-block-start: .15rem; accent-color: var(--wp--preset--color--accent-2); }
.xts-reviews-consent a { color: inherit; }
.xts-reviews-submit { inline-size: 100%; border-radius: 0; cursor: pointer; min-block-size: 48px; }
.xts-reviews-form .form-submit { margin-block-end: 0; }
.xts-reviews-notice { border-inline-start: 3px solid var(--wp--preset--color--accent-2); padding: 1rem; background: var(--wp--preset--color--base); }
.xts-reviews-pagination { display: flex; flex-wrap: wrap; gap: .5rem; }
.xts-reviews-pagination .page-numbers { padding: .6rem 1rem; border: 1px solid var(--xts-review-border); color: inherit; }
.xts-reviews-pagination .current { background: #fff0e8; border-color: var(--wp--preset--color--accent-2); }
@media (min-width: 960px) { .xts-reviews { grid-template-columns: minmax(0, 1fr) minmax(300px, 370px); } }
