/* DLE Rayleigh — modern redesign v2 (2026-05-14) */

/* ===== 1. BASE ===== */
html, body { min-height: 100%; }

body.talabsk-rayleigh {
	font-family: Ubuntu, Arial, Helvetica, sans-serif;
	color: #2d2924;
	background: #f4f1ea;
	min-width: 1180px;
}
.talabsk-rayleigh a { color: #8c4d14; transition: color 0.2s ease; }
.talabsk-rayleigh a:hover { color: #4d2b0f; }

::selection { background: rgba(185,141,86,0.25); color: #2f261b; }
::-moz-selection { background: rgba(185,141,86,0.25); color: #2f261b; }

/* ===== 2. TOP BAR & LOGO ===== */
#top {
	background: rgba(255,255,255,0.94);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	z-index: 10000;
}

#sidebar-button {
	background-image: url(../images/menu-icon.svg);
	background-position: 20px center;
	background-repeat: no-repeat;
	background-size: 27px 21px;
	left: 0; top: 0;
	width: auto; height: 100px;
	min-width: 118px;
	margin-top: 0;
	padding: 0 22px 0 58px;
	line-height: 100px;
	font-size: 14px; font-weight: 700;
	letter-spacing: 0; text-transform: uppercase;
	color: #2f261b; text-decoration: none;
}
#sidebar-button.open { transform: none; }
#sidebar-button span { display: block; }
#sidebar-button:focus { outline: none; }
#sidebar-button:focus-visible { box-shadow: inset 0 0 0 2px rgba(185,141,86,0.45); }
#top.shadow #sidebar-button,
.menu-visible #sidebar-button { color: #2f261b; }

#logo, #top.shadow #logo {
	top: 0; left: 150px; right: 120px;
	max-height: 100px; text-align: left; transform: none;
}
#logo a { text-decoration: none; }
#logo span,
#top.shadow #logo span,
.menu-visible #logo span {
	display: inline-block; padding: 0 18px;
	font-family: Georgia,'Times New Roman',Times,serif;
	font-size: 21px; font-weight: 700;
	line-height: 100px; letter-spacing: 0;
	color: #2f261b; text-shadow: none;
}

#nav-arrows { top: 0; height: 100px; transform: none; }
#nav-arrows a { top: 50%; margin-top: -10px; }

/* ===== 3. SLIDER ===== */
.rayleigh-home .swiper-slide video { object-fit: cover; }

.rayleigh-slide-copy {
	position: absolute;
	left: 8vw; right: 8vw;
	top: 78%;
	z-index: 2;
	transform: translateY(-50%);
	text-align: center;
}

.fullscreen-slider .swiper-slide .rayleigh-slide-copy h3 {
	position: static; padding: 0;
	margin: 0 auto 30px; max-width: 980px;
	font-size: 34px; line-height: 1.35;
	letter-spacing: 0; text-transform: none; transform: none;
	font-family: Georgia,'Times New Roman',Times,serif;
	text-shadow: 0 3px 22px rgba(0,0,0,0.65);
}

.rayleigh-hero-link {
	display: inline-block; min-width: 210px;
	padding: 14px 24px;
	border: 1px solid rgba(255,255,255,0.75);
	border-radius: 8px;
	background: rgba(18,13,8,0.42);
	backdrop-filter: blur(4px);
	color: #fff !important;
	font-size: 13px; font-weight: 700;
	letter-spacing: 0; text-transform: uppercase; text-decoration: none;
	transition: background 0.25s ease, border-color 0.25s ease, transform 0.2s ease;
}
.rayleigh-hero-link:hover {
	background: rgba(140,77,20,0.82);
	border-color: #fff;
	transform: translateY(-2px);
}

/* ===== 4. LISTING ===== */
.rayleigh-listing .container-fluid,
.rayleigh-page .container-fluid {
	padding-top: 120px; padding-bottom: 70px;
}
.rayleigh-heading h1 {
	font-family: Georgia,'Times New Roman',Times,serif;
	font-size: 44px; line-height: 1.15; letter-spacing: 0; color: #30261d;
}
.rayleigh-heading h2 {
	font-size: 15px; line-height: 24px;
	letter-spacing: 0; text-transform: none; color: #7d7062;
}
.rayleigh-heading h2:before { content: ''; }

/* ===== 5. CARDS ===== */
.rayleigh-card {
	display: flex;
	flex-direction: column;
	background: #fff;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 8px 28px rgba(69,46,28,0.09);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.rayleigh-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 16px 44px rgba(69,46,28,0.16);
}
.rayleigh-card .image {
	display: block;
	position: relative;
	overflow: hidden;
	background: #fff;
	box-shadow: inset 0 0 0 1px rgba(69,46,28,0.08);
}
.rayleigh-card .image img {
	position: absolute;
	top: 8px; left: 8px;
	width: calc(100% - 16px); height: calc(100% - 16px);
	object-fit: contain;
	object-position: center center;
	border-radius: 8px;
	transition: transform 0.4s ease;
}
.rayleigh-card:hover .image img {
	transform: none;
}
article.rayleigh-card .inner {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-height: 140px;
	padding: 20px 22px 24px;
}
.rayleigh-card .inner > * { margin-bottom: 0; }
.rayleigh-card h3, .rayleigh-card h3 a {
	font-family: Georgia,'Times New Roman',Times,serif;
	font-size: 17px; line-height: 1.3;
	letter-spacing: 0; color: #30261d; text-decoration: none;
}
.rayleigh-card h3 a:hover { color: #8c4d14; }

/* Card widths — 3 columns */
.rayleigh-gallery-card,
.rayleigh-book-card,
.rayleigh-audio-card,
.rayleigh-video-card,
.rayleigh-story-card { width: 33.3333%; }

.rayleigh-gallery-card .image {
	padding-top: 68%;
	background-position: center top;
}
.rayleigh-gallery-card .inner { min-height: 80px; }
article.rayleigh-gallery-card .image:before,
article.rayleigh-gallery-card .image:after {
	display: none;
	content: none;
}

.rayleigh-book-card .image,
.rayleigh-audio-card .image,
.rayleigh-video-card .image,
.rayleigh-story-card .image {
	padding-top: 62%;
	position: relative;
	background-position: center top;
}

/* Category badges */
.rayleigh-book-card .image:after,
.rayleigh-audio-card .image:after,
.rayleigh-video-card .image:after {
	position: absolute; left: 14px; bottom: 14px;
	padding: 5px 12px;
	background: rgba(22,18,14,0.78);
	backdrop-filter: blur(4px);
	color: #fff; font-size: 11px; font-weight: 700;
	letter-spacing: 0.03em; text-transform: uppercase;
	border-radius: 6px;
}
.rayleigh-book-card .image:after { content: 'Книга'; }
.rayleigh-audio-card .image:after { content: 'Аудио'; }
.rayleigh-video-card .image:after { content: 'Видео'; }

.rayleigh-excerpt {
	margin-top: 12px; font-size: 14px; line-height: 1.6; color: #5f554b;
}
.rayleigh-excerpt img,
.rayleigh-excerpt iframe,
.rayleigh-excerpt object,
.rayleigh-excerpt embed { display: none !important; }
.rayleigh-excerpt p { margin-bottom: 0; }

.rayleigh-card .vcard {
	margin-top: 10px; font-size: 12px; line-height: 1.5;
	text-transform: uppercase; letter-spacing: 0; color: #8e8173;
}

.more-link {
	display: inline-block; align-self: flex-start; margin-top: auto;
	padding: 8px 16px;
	border: 1px solid #b98d56; border-radius: 6px;
	background: transparent; color: #7c4717 !important;
	font-size: 12px; font-weight: 700; text-transform: uppercase; text-decoration: none;
	transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}
.more-link:hover {
	background: #8c4d14; border-color: #8c4d14; color: #fff !important;
	transform: translateY(-2px);
}

/* ===== 6. FULLSTORY ===== */
.rayleigh-fullstory {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 12px 48px rgba(69,46,28,0.1), 0 2px 8px rgba(69,46,28,0.04);
	overflow: hidden;
}
.rayleigh-full-header {
	padding: 52px 70px 30px; text-align: center;
}
.rayleigh-kicker, .rayleigh-kicker a {
	font-size: 12px; font-weight: 700; letter-spacing: 0.03em;
	text-transform: uppercase; color: #9a6a35; text-decoration: none;
}
.rayleigh-full-header h1 {
	margin: 14px auto 18px;
	font-family: Georgia,'Times New Roman',Times,serif;
	font-size: 42px; line-height: 1.2; letter-spacing: 0; color: #2f261b;
}
.rayleigh-meta-line {
	display: flex; align-items: center; justify-content: center;
	flex-wrap: wrap; gap: 20px;
	margin-top: 14px; font-size: 13px; color: #8e8173;
}
.rayleigh-meta-item i { margin-right: 5px; color: #b98d56; }

article.rayleigh-fullstory .rayleigh-full-image {
	padding-top: 48%; background-size: cover; background-position: center;
}
.rayleigh-full-body {
	padding: 40px 70px 50px;
	font-size: 17px; line-height: 1.75; color: #3e352d;
}
.rayleigh-full-body img {
	max-width: 100%;
	height: auto !important;
	border-radius: 8px;
}
.rayleigh-full-body > img:not([style*="float"]):not([align]),
.rayleigh-full-body p > img:not([style*="float"]):not([align]),
.rayleigh-full-body div > img:not([style*="float"]):not([align]) {
	display: block;
	margin: 24px auto;
}
.rayleigh-full-body p, .rayleigh-full-body div { max-width: 100%; }

/* Editor images use figure.image, which must not inherit Rayleigh cover/card rules. */
.rayleigh-full-body figure.image {
	display: table;
	width: auto !important;
	max-width: 100%;
	padding-top: 0 !important;
	margin: 24px auto;
	background: none !important;
	text-align: center;
}

.rayleigh-full-body figure.image img,
.rayleigh-full-body a.highslide img {
	position: static !important;
	display: block;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
	border-radius: 8px;
}

.rayleigh-full-body figure.image figcaption {
	display: table-caption;
	caption-side: bottom;
	max-width: 100%;
	padding-top: 8px;
	color: #7d7062;
	font-size: 13px;
	line-height: 1.45;
	text-align: center;
}

.rayleigh-full-body figure.image.align-left {
	float: left;
	margin: 8px 28px 18px 0;
}

.rayleigh-full-body figure.image.align-right {
	float: right;
	margin: 8px 0 18px 28px;
}

.rayleigh-full-body figure.image.align-center {
	margin-left: auto;
	margin-right: auto;
}

.rayleigh-editdate {
	margin-top: 28px; padding: 14px 18px;
	background: #faf8f4; border-radius: 8px;
	font-size: 13px; color: #786b5e;
}
.rayleigh-editdate i { margin-right: 4px; color: #b98d56; }

.rayleigh-tags { margin-top: 28px; font-size: 13px; color: #786b5e; }
.rayleigh-tags i { margin-right: 4px; color: #b98d56; }
.rayleigh-tags a {
	display: inline-block; margin: 3px 4px; padding: 4px 12px;
	background: #f4f1ea; border-radius: 16px;
	font-size: 12px; color: #7c4717; text-decoration: none;
	transition: background 0.2s ease, color 0.2s ease;
}
.rayleigh-tags a:hover { background: #8c4d14; color: #fff; }

.rayleigh-admin-tools {
	list-style: none; padding: 0; margin: 24px 0 0;
	display: flex; gap: 12px; flex-wrap: wrap;
}
.rayleigh-admin-tools li {
	display: inline-flex; align-items: center; gap: 6px;
	padding: 8px 16px; border-radius: 8px;
	background: #f4f1ea; color: #7c4717; font-size: 13px;
	cursor: pointer; transition: background 0.2s ease;
}
.rayleigh-admin-tools li:hover { background: #ebe5da; }
.rayleigh-admin-tools li i { font-style: normal; }
.rayleigh-admin-tools li > i > .fa { color: #b98d56; margin-right: 4px; }

/* Next/Prev */
.rayleigh-next-prev { margin-top: 28px; min-height: 46px; overflow: hidden; }
.rayleigh-btn-nav {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 12px 22px;
	border: 1px solid #b98d56; border-radius: 8px;
	background: transparent; color: #7c4717 !important;
	font-size: 13px; font-weight: 700; text-transform: uppercase; text-decoration: none;
	transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}
.rayleigh-btn-nav:hover {
	background: #8c4d14; border-color: #8c4d14; color: #fff !important;
	transform: translateY(-2px);
}
.rayleigh-btn-nav-right { float: right; }

.rayleigh-com-count {
	display: inline-block; min-width: 28px; padding: 2px 8px; margin-left: 6px;
	background: #f4f1ea; border-radius: 12px;
	font-size: 16px; text-align: center; color: #8c4d14;
}

/* ===== 7. RELATED NEWS ===== */
.rayleigh-related { margin-top: 52px; }
.rayleigh-related h2, .rayleigh-comments h2 {
	margin-bottom: 26px;
	font-family: Georgia,'Times New Roman',Times,serif;
	font-size: 28px; line-height: 1.2;
}
.rayleigh-related-grid { display: flex; flex-wrap: wrap; gap: 24px; }
.rayleigh-related-grid .rayleigh-related-card {
	flex: 1;
	width: auto;
	min-width: 220px;
	max-width: 33.333%;
	padding-left: 0;
	padding-right: 0;
}
.rayleigh-related-card a {
	display: block; background: #fff; text-decoration: none;
	border-radius: 12px; overflow: hidden;
	box-shadow: 0 8px 24px rgba(69,46,28,0.08);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.rayleigh-related-card a:hover { transform: translateY(-4px); box-shadow: 0 16px 40px rgba(69,46,28,0.14); }
.rayleigh-related-card .image {
	padding-top: 62%;
	background-color: #fff;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	box-shadow: inset 0 0 0 8px #fff, inset 0 0 0 9px rgba(69,46,28,0.08);
}
.rayleigh-related-card .title {
	display: block; padding: 18px;
	font-family: Georgia,'Times New Roman',Times,serif;
	font-size: 18px; line-height: 1.3; color: #2f261b;
}

/* ===== 8. COMMENTS ===== */
.rayleigh-comments {
	margin-top: 52px; padding: 34px 40px;
	background: #fff; border-radius: 16px;
	box-shadow: 0 12px 48px rgba(69,46,28,0.08);
}
.rayleigh-comments .comment {
	padding: 24px; margin-bottom: 16px;
	background: #faf8f4; border-radius: 12px;
	box-shadow: 0 2px 8px rgba(69,46,28,0.06);
	transition: box-shadow 0.2s ease;
}
.rayleigh-comments .comment:hover { box-shadow: 0 4px 16px rgba(69,46,28,0.1); }
.rayleigh-comments .com_info {
	display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-bottom: 14px;
}
.rayleigh-comments .com_info .avatar .cover {
	display: block; width: 44px; height: 44px;
	border-radius: 50%; background-size: cover; background-position: center;
	text-indent: -9999px; overflow: hidden;
}
.rayleigh-comments .com_user .name { color: #2f261b; font-size: 15px; }
.rayleigh-comments .com_user .grey { font-size: 12px; color: #8e8173; }
.rayleigh-comments .com_info .meta { width: 100%; }

/* Rating in comments */
.rayleigh-comments .rate { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 10px; }
.rayleigh-comments .rate_like-dislike {
	display: inline-flex; align-items: center; gap: 6px; font-size: 14px; color: #8e8173;
}
.rayleigh-comments .ratingtypeplusminus { font-weight: 700; }
.rayleigh-comments .ratingplus { color: #5a8a3c; }
.rayleigh-comments .ratingminus { color: #b04a3a; }
.rayleigh-comments .rate svg.icon { width: 16px; height: 16px; cursor: pointer; fill: #8e8173; transition: fill 0.2s ease; }
.rayleigh-comments .rate svg.icon:hover { fill: #8c4d14; }
.rayleigh-comments .rate_stars { display: inline-flex; }

/* Comment action buttons */
.rayleigh-comments .meta ul.left {
	list-style: none; padding: 0; margin: 0;
	display: flex; align-items: center; flex-wrap: wrap; gap: 6px;
}
.rayleigh-comments .meta ul.left li {
	display: inline-flex; align-items: center; gap: 4px;
	padding: 5px 12px; border-radius: 6px;
	background: #f4f1ea; font-size: 12px; color: #7c4717;
	cursor: pointer; transition: background 0.2s ease;
}
.rayleigh-comments .meta ul.left li:hover { background: #ebe5da; }
.rayleigh-comments .meta ul.left li svg.icon { width: 14px; height: 14px; fill: #b98d56; }
.rayleigh-comments .meta ul.left li i { font-style: normal; color: #7c4717; font-size: 12px; }
.rayleigh-comments .meta ul.left li .title_hide { font-size: 12px; }
.rayleigh-comments .meta ul.left li.mass { padding: 0; background: none; }
.rayleigh-comments .meta ul.left li.mass:empty { display: none; }

.rayleigh-comments .com_content { font-size: 15px; line-height: 1.65; color: #3e352d; }
.rayleigh-comments .com_content .text { margin-top: 6px; }
.rayleigh-comments .com_content .signature { margin-top: 12px; font-size: 13px; color: #8e8173; }
.rayleigh-comments .com_online {
	font-size: 11px; color: #5a8a3c; font-weight: 700; text-transform: uppercase;
}

/* ===== 9. PAGINATION ===== */
.rayleigh-navigation { clear: both; padding-top: 44px; text-align: center; }
.rayleigh-navigation .pages a,
.rayleigh-navigation .pages span,
.rayleigh-navigation .page_next-prev a,
.rayleigh-navigation .page_next-prev span {
	display: inline-block; min-width: 36px; min-height: 36px;
	margin: 4px; padding: 8px 12px;
	background: #fff; border-radius: 8px; color: #6d4a24; text-decoration: none;
	box-shadow: 0 4px 14px rgba(69,46,28,0.08);
	transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}
.rayleigh-navigation .pages a:hover,
.rayleigh-navigation .page_next-prev a:hover {
	background: #8c4d14; color: #fff;
	transform: translateY(-2px); box-shadow: 0 6px 18px rgba(140,77,20,0.25);
}
.rayleigh-navigation .pages span.nav_ext,
.rayleigh-navigation .pages > span:not([class]) {
	background: #8c4d14; color: #fff; box-shadow: 0 4px 14px rgba(140,77,20,0.2);
}

/* ===== 10. SPEEDBAR ===== */
.rayleigh-speedbar { margin-bottom: 24px; font-size: 13px; color: #7b6d60; }
.rayleigh-speedbar a { text-decoration: none; color: #8c4d14; }
.rayleigh-speedbar a:hover { text-decoration: underline; }

/* ===== 11. SIDEBAR SEARCH ===== */
.rayleigh-search { position: relative; margin: 34px 35px 0; }
.rayleigh-search input {
	width: 100%; height: 44px; padding: 0 46px 0 14px;
	border: 1px solid #dfd8ce; border-radius: 8px 0 0 8px;
	background: #fff; color: #2f261b; font-size: 14px; outline: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.rayleigh-search input:focus { border-color: #b98d56; box-shadow: 0 0 0 3px rgba(185,141,86,0.15); }
.rayleigh-search button {
	position: absolute; right: 0; top: 0;
	width: 44px; height: 44px; border: 0; border-radius: 0 8px 8px 0;
	background: #8c4d14; color: #fff; cursor: pointer;
	transition: background 0.2s ease;
}
.rayleigh-search button:hover { background: #7a4312; }
#sidebar footer .copyright { letter-spacing: 0; }

/* ===== 12. GRID SYSTEM ===== */
.rayleigh-news-grid,
.rayleigh-gallery-grid {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 30px;
	margin: 0;
}
.rayleigh-news-grid:before,
.rayleigh-news-grid:after,
.rayleigh-gallery-grid:before,
.rayleigh-gallery-grid:after {
	display: none !important;
	content: none !important;
}
.rayleigh-news-grid > article,
.rayleigh-gallery-grid > article {
	flex: 0 0 calc((100% - 60px) / 3);
	float: none;
	width: auto;
	max-width: calc((100% - 60px) / 3);
	min-width: 0;
	margin-top: 0;
	padding-left: 0;
	padding-right: 0;
	box-sizing: border-box;
}
.rayleigh-news-grid > .rayleigh-navigation,
.rayleigh-gallery-grid > .rayleigh-navigation {
	flex: 0 0 100%;
	float: none; clear: both; width: 100%;
	box-sizing: border-box; margin-top: 48px; padding: 10px 20px 0;
}
.rayleigh-news-grid > .rayleigh-navigation .pages,
.rayleigh-gallery-grid > .rayleigh-navigation .pages { display: block; text-align: center; }

/* Page-level containers */
.rayleigh-page .col-12 > article,
.rayleigh-static, .rayleigh-comments, .rayleigh-related,
.rayleigh-next-prev, .rayleigh-info {
	max-width: 980px; margin-left: auto; margin-right: auto;
}
.rayleigh-subtitle { font-size: 15px; color: #7d7062; margin-top: 8px; }

/* ===== 13. FORMS (rayleigh-form) ===== */
.rayleigh-form { max-width: 780px; margin: 0 auto; }
.rayleigh-form-group { margin-bottom: 20px; }
.rayleigh-form-group label {
	display: block; margin-bottom: 6px;
	font-size: 14px; font-weight: 700; color: #5f554b;
}
.rayleigh-form-group input[type="text"],
.rayleigh-form-group input[type="email"],
.rayleigh-form-group input[type="search"],
.rayleigh-form-group input[type="password"],
.rayleigh-form-group textarea,
.rayleigh-form-group select,
.rayleigh-select-wrap select {
	width: 100%; padding: 12px 16px;
	border: 1px solid #dfd8ce; border-radius: 8px;
	background: #fff; color: #2f261b;
	font-family: Ubuntu, Arial, Helvetica, sans-serif; font-size: 15px;
	outline: none; box-sizing: border-box;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.rayleigh-form-group input:focus,
.rayleigh-form-group textarea:focus,
.rayleigh-form-group select:focus,
.rayleigh-select-wrap select:focus {
	border-color: #b98d56; box-shadow: 0 0 0 3px rgba(185,141,86,0.15);
}
.rayleigh-form-group textarea { min-height: 140px; resize: vertical; }
.rayleigh-form-duo { display: flex; gap: 16px; }
.rayleigh-form-duo .rayleigh-form-group { flex: 1; }
.rayleigh-form-actions {
	margin-top: 24px; display: flex; align-items: center; gap: 14px; flex-wrap: wrap;
}
.rayleigh-btn-submit {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 14px 28px; border: none; border-radius: 8px;
	background: linear-gradient(135deg, #8c4d14, #b98d56);
	color: #fff; font-family: Ubuntu, Arial, Helvetica, sans-serif;
	font-size: 14px; font-weight: 700; text-transform: uppercase;
	letter-spacing: 0.02em; cursor: pointer;
	box-shadow: 0 4px 14px rgba(140,77,20,0.3);
	transition: background 0.3s ease, transform 0.2s ease, box-shadow 0.3s ease;
}
.rayleigh-btn-submit:hover {
	background: linear-gradient(135deg, #7a4312, #a67b48);
	transform: translateY(-2px); box-shadow: 0 6px 20px rgba(140,77,20,0.4);
}
.rayleigh-btn-secondary {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 12px 22px;
	border: 1px solid #b98d56; border-radius: 8px;
	background: transparent; color: #7c4717;
	font-family: Ubuntu, Arial, Helvetica, sans-serif;
	font-size: 13px; font-weight: 700; text-transform: uppercase; cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}
.rayleigh-btn-secondary:hover { background: #8c4d14; color: #fff; transform: translateY(-2px); }
.rayleigh-file-upload input[type="file"] { font-size: 14px; color: #5f554b; }
.rayleigh-captcha { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.rayleigh-captcha input {
	padding: 10px 14px; border: 1px solid #dfd8ce; border-radius: 8px;
	background: #fff; color: #2f261b; font-size: 14px; outline: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.rayleigh-captcha input:focus { border-color: #b98d56; box-shadow: 0 0 0 3px rgba(185,141,86,0.15); }

/* ===== 14. SEARCH PAGE (new) ===== */
.rayleigh-search-page .rayleigh-full-body { padding: 30px 70px 50px; }
.rayleigh-search-grid { display: flex; gap: 24px; }
.rayleigh-search-col { flex: 1; }
.rayleigh-fieldset {
	border: 1px solid #dfd8ce; border-radius: 12px;
	padding: 20px; margin: 0 0 18px; background: #faf8f4;
}
.rayleigh-fieldset legend { padding: 4px 14px; font-weight: 700; font-size: 14px; color: #5f554b; }
.rayleigh-fieldset input[type="text"],
.rayleigh-fieldset input[type="search"],
.rayleigh-fieldset select {
	width: 100%; padding: 10px 14px;
	border: 1px solid #dfd8ce; border-radius: 8px;
	background: #fff; color: #2f261b; font-size: 14px;
	outline: none; box-sizing: border-box;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.rayleigh-fieldset input:focus, .rayleigh-fieldset select:focus {
	border-color: #b98d56; box-shadow: 0 0 0 3px rgba(185,141,86,0.15);
}
.rayleigh-search-msg {
	margin-top: 20px; padding: 14px 18px;
	background: #faf8f4; border-radius: 8px; font-size: 14px; color: #5f554b;
}

/* ===== 15. SEARCH PAGE (old DLE selectors) ===== */
.searchpage .box_in { padding: 30px; }
.searchpage .title {
	font-family: Georgia,'Times New Roman',Times,serif;
	font-size: 32px; color: #2f261b; margin-bottom: 24px;
}
.searchpage .searchtable { width: 100%; }
.searchpage .searchtable table { width: 100%; border-collapse: collapse; }
.searchpage .searchtable td.search { padding: 8px; vertical-align: top; }
.searchpage .searchtable fieldset {
	border: 1px solid #dfd8ce; border-radius: 12px;
	padding: 18px; margin: 0 0 16px; background: #faf8f4;
}
.searchpage .searchtable fieldset legend {
	padding: 4px 12px; font-weight: 700; font-size: 14px; color: #5f554b;
}
.searchpage .searchtable input[type="text"],
.searchpage .searchtable input[type="search"],
.searchpage .searchtable select {
	width: 100%; padding: 10px 14px;
	border: 1px solid #dfd8ce; border-radius: 8px;
	background: #fff; color: #2f261b; font-size: 14px;
	outline: none; box-sizing: border-box;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.searchpage .searchtable input[type="text"]:focus,
.searchpage .searchtable input[type="search"]:focus,
.searchpage .searchtable select:focus {
	border-color: #b98d56; box-shadow: 0 0 0 3px rgba(185,141,86,0.15);
}
.searchpage .searchtable input.bbcodes,
.searchpage .searchtable input[type="button"],
.searchpage .searchtable input[type="reset"] {
	display: inline-block; padding: 10px 20px;
	border: none; border-radius: 8px;
	background: linear-gradient(135deg, #8c4d14, #b98d56);
	color: #fff; font-size: 13px; font-weight: 700; text-transform: uppercase;
	cursor: pointer; box-shadow: 0 4px 14px rgba(140,77,20,0.25);
	transition: background 0.3s ease, transform 0.2s ease, box-shadow 0.3s ease;
}
.searchpage .searchtable input.bbcodes:hover,
.searchpage .searchtable input[type="button"]:hover,
.searchpage .searchtable input[type="reset"]:hover {
	background: linear-gradient(135deg, #7a4312, #a67b48);
	transform: translateY(-2px); box-shadow: 0 6px 18px rgba(140,77,20,0.35);
}
.search_result_num {
	margin-top: 20px; padding: 14px 18px;
	background: #faf8f4; border-radius: 8px; font-size: 14px; color: #5f554b;
}

/* ===== 16. GENERIC DLE FORMS ===== */
.box .box_in { padding: 30px; }
.box .title.h1 {
	font-family: Georgia,'Times New Roman',Times,serif;
	font-size: 32px; line-height: 1.2; color: #2f261b; margin-bottom: 24px;
}
.box .ui-form { list-style: none; padding: 0; }
.box .ui-form .form-group { margin-bottom: 16px; }
.box .ui-form input[type="text"],
.box .ui-form input[type="email"],
.box .ui-form input[type="password"],
.box .ui-form textarea,
.box .ui-form select {
	width: 100%; padding: 12px 16px;
	border: 1px solid #dfd8ce; border-radius: 8px;
	background: #fff; color: #2f261b;
	font-family: Ubuntu, Arial, Helvetica, sans-serif; font-size: 15px;
	outline: none; box-sizing: border-box;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.box .ui-form input:focus,
.box .ui-form textarea:focus,
.box .ui-form select:focus {
	border-color: #b98d56; box-shadow: 0 0 0 3px rgba(185,141,86,0.15);
}

/* Feedback form (old selectors) */
.box.story .addform { max-width: 700px; margin: 0 auto; }
.box.story .addform .combo { display: flex; gap: 16px; }
.box.story .addform .combo .combo_field { flex: 1; }
.box.story .addform textarea.wide { min-height: 140px; resize: vertical; }
.box.story .addform label {
	display: block; margin-bottom: 6px; font-size: 14px; font-weight: 700; color: #5f554b;
}
.box.story .form_submit, .addcomment .form_submit {
	margin-top: 22px; display: flex; align-items: center; gap: 16px; flex-wrap: wrap;
}
.box.story .form_submit .btn-big,
.addcomment .form_submit .btn-big {
	display: inline-block; padding: 14px 28px;
	border: none; border-radius: 8px;
	background: linear-gradient(135deg, #8c4d14, #b98d56);
	color: #fff; font-family: Ubuntu, Arial, Helvetica, sans-serif;
	font-size: 14px; font-weight: 700; text-transform: uppercase;
	letter-spacing: 0.02em; cursor: pointer;
	box-shadow: 0 4px 14px rgba(140,77,20,0.3);
	transition: background 0.3s ease, transform 0.2s ease, box-shadow 0.3s ease;
}
.box.story .form_submit .btn-big:hover,
.addcomment .form_submit .btn-big:hover {
	background: linear-gradient(135deg, #7a4312, #a67b48);
	transform: translateY(-2px); box-shadow: 0 6px 20px rgba(140,77,20,0.4);
}

/* Add comments */
.addcomment {
	margin-top: 30px; padding: 28px;
	background: #faf8f4; border-radius: 12px;
}
.addcomment h3 {
	font-family: Georgia,'Times New Roman',Times,serif;
	font-size: 22px; line-height: 1.3; color: #2f261b; margin-bottom: 20px;
}
.addcomment .plus_icon { margin-bottom: 16px; }
.addcomment .plus_icon span {
	display: inline-block; padding: 10px 20px; border-radius: 8px;
	background: #f4f1ea; color: #8c4d14;
	font-weight: 700; font-size: 14px; cursor: pointer;
	transition: background 0.2s ease;
}
.addcomment .plus_icon span:hover { background: #ebe5da; }
.addcomment .ui-form { list-style: none; padding: 0; margin: 0; }
.addcomment .form-group { margin-bottom: 18px; }
.addcomment .combo { display: flex; gap: 16px; }
.addcomment .combo .combo_field { flex: 1; }
.addcomment input.wide, .addcomment textarea, .addcomment select {
	width: 100%; padding: 12px 16px;
	border: 1px solid #dfd8ce; border-radius: 8px;
	background: #fff; color: #2f261b;
	font-family: Ubuntu, Arial, Helvetica, sans-serif; font-size: 15px;
	outline: none; transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.addcomment input.wide:focus, .addcomment textarea:focus {
	border-color: #b98d56; box-shadow: 0 0 0 3px rgba(185,141,86,0.15);
}
.addcomment label {
	display: block; margin-bottom: 6px;
	font-size: 14px; font-weight: 700; color: #5f554b;
}

/* Captcha */
.c-captcha { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.c-captcha input {
	padding: 10px 14px; border: 1px solid #dfd8ce; border-radius: 8px;
	background: #fff; color: #2f261b; font-size: 14px; outline: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.c-captcha input:focus { border-color: #b98d56; box-shadow: 0 0 0 3px rgba(185,141,86,0.15); }

/* ===== 17. AUDIO PLAYER (in fullstory) ===== */
.rayleigh-audio-player {
	display: flex; align-items: center; gap: 16px;
	padding: 18px 24px; margin: 24px 0;
	background: linear-gradient(135deg, #f4f1ea 0%, #ebe5da 100%);
	border: 1px solid #dfd8ce; border-radius: 12px;
	box-shadow: 0 4px 16px rgba(69,46,28,0.08);
}
.rayleigh-audio-player .audio-play-btn {
	display: flex; align-items: center; justify-content: center;
	width: 48px; height: 48px; min-width: 48px;
	border: none; border-radius: 50%;
	background: linear-gradient(135deg, #8c4d14, #b98d56);
	color: #fff; font-size: 18px; cursor: pointer;
	box-shadow: 0 4px 12px rgba(140,77,20,0.3);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.rayleigh-audio-player .audio-play-btn:hover {
	transform: scale(1.08); box-shadow: 0 6px 18px rgba(140,77,20,0.4);
}
.rayleigh-audio-player .audio-info { flex: 1; min-width: 0; }
.rayleigh-audio-player .audio-title {
	font-weight: 700; font-size: 15px; color: #2f261b; margin-bottom: 8px;
	white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.rayleigh-audio-player .audio-progress {
	position: relative; width: 100%; height: 6px;
	background: #d7c6ae; border-radius: 3px; overflow: hidden; cursor: pointer;
}
.rayleigh-audio-player .audio-progress-fill {
	height: 100%; width: 0;
	background: linear-gradient(90deg, #8c4d14, #b98d56);
	border-radius: 3px; transition: width 0.1s linear;
}
.rayleigh-audio-player .audio-time { font-size: 12px; color: #7d7062; margin-top: 4px; }

/* Native audio */
.rayleigh-full-body audio {
	display: block; width: 100%; max-width: 600px;
	margin: 24px auto; border-radius: 8px;
}

/* ===== 18. HOME AUDIO PLAYER (akafist) ===== */
.rayleigh-home-audio {
	position: fixed; bottom: 0; left: 0; right: 0;
	z-index: 10001; padding: 0 24px 20px; pointer-events: none;
}
.rayleigh-home-audio .rayleigh-audio-player {
	max-width: 640px; margin: 0 auto; pointer-events: auto;
	background: rgba(255,255,255,0.96);
	backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
	border: 1px solid rgba(223,216,206,0.6);
	border-radius: 16px;
	box-shadow: 0 8px 32px rgba(69,46,28,0.15);
	display: flex; align-items: stretch; gap: 0;
	padding: 0; flex-direction: column;
}
.rap-info {
	display: flex; align-items: center; gap: 14px;
	padding: 16px 20px 8px; width: 100%; box-sizing: border-box;
}
.rap-icon {
	display: flex; align-items: center; justify-content: center;
	width: 42px; height: 42px; min-width: 42px;
	border-radius: 50%;
	background: linear-gradient(135deg, #8c4d14, #b98d56);
	color: #fff; font-size: 16px;
}
.rap-details { flex: 1; min-width: 0; }
.rap-title {
	font-weight: 700; font-size: 14px; color: #2f261b;
	white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.rap-subtitle { font-size: 12px; color: #8e8173; margin-top: 2px; }
.rap-controls {
	display: flex; align-items: center; gap: 14px;
	padding: 8px 20px 16px; width: 100%; box-sizing: border-box;
}
.rap-play-btn {
	display: flex; align-items: center; justify-content: center;
	width: 40px; height: 40px; min-width: 40px;
	border: none; border-radius: 50%;
	background: linear-gradient(135deg, #8c4d14, #b98d56);
	color: #fff; font-size: 15px; cursor: pointer;
	box-shadow: 0 3px 10px rgba(140,77,20,0.3);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.rap-play-btn:hover { transform: scale(1.08); box-shadow: 0 5px 16px rgba(140,77,20,0.4); }
.rap-play-btn.playing { background: linear-gradient(135deg, #b98d56, #8c4d14); }
.rap-progress-wrap { flex: 1; min-width: 0; }
.rap-progress {
	position: relative; width: 100%; height: 6px;
	background: #e8e0d4; border-radius: 3px; overflow: hidden; cursor: pointer;
}
.rap-progress-bar {
	height: 100%; width: 0;
	background: linear-gradient(90deg, #8c4d14, #b98d56);
	border-radius: 3px; transition: width 0.15s linear;
}
.rap-time {
	display: flex; justify-content: space-between;
	font-size: 11px; color: #8e8173; margin-top: 4px;
}

/* ===== 19. DESKTOP ONLY ===== */
/* Phones use the separate smartphone template. Keep ta-rayleigh as a fixed desktop layout. */

/* ===== 20. POLISHED INTERNAL LAYOUT ===== */
#logo, #top.shadow #logo { right: 390px; }
#top #nav-arrows { display: none; }

.rayleigh-top-search {
	position: absolute;
	top: 28px;
	right: 34px;
	width: 280px;
	height: 44px;
	margin: 0;
}
.rayleigh-top-search input {
	width: 100%;
	height: 44px;
	padding: 0 1px 0 10px;
	border: 1px solid rgba(80,67,53,0.22);
	border-radius: 22px;
	background: rgba(255,255,255,0.8);
	color: #2f261b;
	font-size: 14px;
	outline: none;
	box-shadow: inset 0 0 0 1px rgba(255,255,255,0.7);
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}
.rayleigh-top-search input:focus {
	background: #fff;
	border-color: #b98d56;
	box-shadow: 0 0 0 3px rgba(185,141,86,0.16);
}
.rayleigh-top-search button {
	position: absolute;
	top: 0;
	right: 0;
	width: 44px;
	height: 44px;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: #7a4312;
	cursor: pointer;
}

#sidebar {
	width: 270px;
	padding-top: 128px;
	box-shadow: 8px 0 34px rgba(69,46,28,0.08);
}
#widgets {
	bottom: auto;
	max-height: calc(100% - 128px);
	overflow-x: hidden;
	padding-bottom: 112px;
}
.rayleigh-menu {
	padding: 0 22px;
}
.rayleigh-menu li a {
	display: block;
	padding: 9px 10px;
	border-radius: 8px;
	font-size: 14px;
	line-height: 1.25;
	text-decoration: none;
}
.rayleigh-menu li.current-menu-item > a,
.rayleigh-menu li.current_page_item > a,
.rayleigh-menu li a:hover {
	background: #f4f1ea;
	color: #7a4312 !important;
}
#sidebar .rayleigh-search {
	margin: 24px 24px 0;
}
#sidebar footer {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 10px 0 14px;
	background: #fff;
	box-shadow: 0 -10px 24px rgba(69,46,28,0.06);
}
#sidebar footer .copyright {
	position: static;
	width: auto;
	line-height: 1.2;
	padding: 0;
	text-align: center;
}
.rayleigh-sidebar-links {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 10px 22px 0;
	font-size: 12px;
	line-height: 1.35;
	text-align: center;
}
.rayleigh-sidebar-links a { text-decoration: none; color: #8c4d14; }
.rayleigh-sidebar-counters { padding: 14px 22px 0; text-align: center; }

.rayleigh-home .swiper-container .nav-arrow {
	display: flex !important;
	align-items: center;
	justify-content: center;
	top: 50%;
	width: 54px;
	height: 54px;
	margin-top: -27px;
	border: 1px solid rgba(255,255,255,0.62);
	border-radius: 50%;
	background: rgba(30,22,16,0.42) !important;
	background-image: none !important;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	box-shadow: 0 10px 28px rgba(0,0,0,0.28);
	transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}
.rayleigh-home .swiper-container .nav-left { left: 34px; }
.rayleigh-home .swiper-container .nav-right { right: 34px; }
.rayleigh-home .swiper-container .nav-arrow:hover {
	background: rgba(140,77,20,0.74) !important;
	border-color: #fff;
	transform: translateY(-1px);
}
.rayleigh-home .swiper-container .nav-arrow:before {
	content: '';
	display: block;
	width: 16px;
	height: 16px;
	border: solid #fff;
	border-width: 0 3px 3px 0;
}
.rayleigh-home .swiper-container .nav-left:before {
	margin-left: 6px;
	transform: rotate(135deg);
}
.rayleigh-home .swiper-container .nav-right:before {
	margin-right: 6px;
	transform: rotate(-45deg);
}

.rayleigh-layout {
	display: flex;
	align-items: flex-start;
	gap: 34px;
	max-width: 1500px;
	margin: 0 auto;
}
.rayleigh-layout-main {
	flex: 1 1 auto;
	min-width: 0;
}
.rayleigh-layout-main > .rayleigh-fullstory,
.rayleigh-layout-main > .rayleigh-static,
.rayleigh-layout-main > .rayleigh-comments,
.rayleigh-layout-main > .rayleigh-related,
.rayleigh-layout-main > .rayleigh-next-prev,
.rayleigh-layout-main > .rayleigh-info {
	max-width: none;
	margin-left: 0;
	margin-right: 0;
}
.rayleigh-layout .rayleigh-heading { margin-bottom: 54px; }
.rayleigh-layout .rayleigh-heading h1 { font-size: 42px; }
.rayleigh-layout .rayleigh-heading h2 { margin-top: 4px; }
.rayleigh-layout .rayleigh-news-grid,
.rayleigh-layout .rayleigh-gallery-grid {
	gap: 24px;
}
.rayleigh-layout .rayleigh-news-grid > article,
.rayleigh-layout .rayleigh-gallery-grid > article {
	flex-basis: calc((100% - 48px) / 3);
	max-width: calc((100% - 48px) / 3);
}

.rayleigh-aside {
	flex: 0 0 282px;
	position: sticky;
	top: 124px;
}
.rayleigh-aside-card {
	margin-bottom: 18px;
	padding: 18px;
	background: rgba(255,255,255,0.92);
	border: 1px solid rgba(69,46,28,0.08);
	border-radius: 14px;
	box-shadow: 0 10px 30px rgba(69,46,28,0.08);
}
.rayleigh-aside-card h3 {
	margin: 0 0 14px;
	font-family: Georgia,'Times New Roman',Times,serif;
	font-size: 20px;
	line-height: 1.2;
	color: #2f261b;
}
.rayleigh-aside-audio p,
.rayleigh-aside-community span {
	display: block;
	margin: -4px 0 12px;
	font-size: 13px;
	line-height: 1.45;
	color: #716457;
}
.rayleigh-aside-audio audio {
	display: block;
	width: 100%;
	height: 42px;
}
.rayleigh-aside-list {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.rayleigh-aside-news {
	display: flex;
	gap: 10px;
	align-items: center;
	text-decoration: none;
	color: #2f261b !important;
}
.rayleigh-aside-thumb {
	flex: 0 0 58px;
	width: 58px;
	height: 58px;
	border-radius: 8px;
	overflow: hidden;
	background: #fff;
	box-shadow: inset 0 0 0 1px rgba(69,46,28,0.08);
}
.rayleigh-aside-thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}
.rayleigh-aside-news-title {
	font-size: 13px;
	line-height: 1.32;
}
.rayleigh-aside-news:hover .rayleigh-aside-news-title { color: #8c4d14; }
.rayleigh-aside-community > a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 10px 14px;
	border-radius: 9px;
	background: #f4f1ea;
	color: #7a4312;
	font-weight: 700;
	text-decoration: none;
}
.rayleigh-aside-community > a:hover { background: #8c4d14; color: #fff; }
.rayleigh-vk-note {
	margin: 16px 0 10px;
	padding-top: 14px;
	border-top: 1px solid rgba(69,46,28,0.1);
	font-size: 13px;
	color: #5f554b;
}
.rayleigh-vk-widget,
#vk_groups {
	width: 100%;
	max-width: 246px;
	overflow: hidden;
}
.rayleigh-aside-vote #votes,
.rayleigh-aside-vote #vote-layer,
.rayleigh-aside-vote .block_grey {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
}
.rayleigh-aside-vote h4.title {
	margin: 0 0 12px;
	padding: 12px 14px;
	border: 1px solid rgba(69,46,28,0.08);
	border-radius: 8px;
	background: #fffaf4;
	font-size: 14px;
	line-height: 1.35;
	font-weight: 700;
	color: #b04f00;
}
.rayleigh-aside-vote .vote_more {
	margin: 0 0 10px;
	font-size: 13px;
}
.rayleigh-aside-vote .vote_more a {
	color: #a05716;
	text-decoration: underline;
}
.rayleigh-aside-vote .vote_list {
	font-size: 13px;
	line-height: 1.6;
	color: #2f261b;
}
.rayleigh-aside-vote .vote_list input[type="radio"],
.rayleigh-aside-vote .vote_list input[type="checkbox"] {
	width: 15px;
	height: 15px;
	margin: 0 6px 0 0;
	vertical-align: -2px;
	accent-color: #0d7fa3;
}
.rayleigh-aside-vote form {
	margin: 0;
}
.rayleigh-aside-vote .btn,
.rayleigh-aside-vote .btn-white,
.rayleigh-aside-vote .btn-border {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	height: auto;
	min-width: 0;
	min-height: 32px;
	margin: 12px 6px 0 0;
	padding: 7px 12px;
	border: 1px solid #b98d56;
	border-radius: 7px;
	background: #fff;
	background-color: #fff !important;
	color: #7a4312;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	text-shadow: none;
	box-shadow: 0 2px 7px rgba(69,46,28,0.12);
	overflow: visible;
}
.rayleigh-aside-vote .btn:hover,
.rayleigh-aside-vote .btn-white:hover,
.rayleigh-aside-vote .btn-border:hover {
	background: #8c4d14 !important;
	border-color: #8c4d14;
	color: #fff;
}
.rayleigh-aside-vote .btn-border .icon,
.rayleigh-aside-vote .btn-border svg {
	display: none !important;
}
.rayleigh-aside-vote .vote_votes {
	margin-top: 10px;
	font-size: 12px;
	color: #7d7062;
}
.rayleigh-counter-box {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 8px;
}
.rayleigh-counter-box img { display: block; border-radius: 3px; }

.rayleigh-footer {
	display: grid;
	grid-template-columns: minmax(280px, 1fr) auto;
	gap: 22px 40px;
	align-items: center;
	max-width: 1500px;
	margin: 46px auto 0;
	padding: 26px 30px;
	background: rgba(255,255,255,0.9);
	border: 1px solid rgba(69,46,28,0.08);
	border-radius: 16px;
	box-shadow: 0 12px 38px rgba(69,46,28,0.08);
}
.rayleigh-footer-brand a {
	display: block;
	margin-bottom: 6px;
	font-family: Georgia,'Times New Roman',Times,serif;
	font-size: 24px;
	font-weight: 700;
	text-decoration: none;
	color: #2f261b;
}
.rayleigh-footer-brand span {
	font-size: 13px;
	line-height: 1.45;
	color: #7d7062;
}
.rayleigh-footer-menu {
	display: grid;
	justify-items: end;
	gap: 8px;
}
.rayleigh-footer-menu-main,
.rayleigh-footer-legal {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 10px 16px;
}
.rayleigh-footer-menu-main a,
.rayleigh-footer-mobile,
.rayleigh-footer-legal a {
	font-size: 13px;
	text-decoration: none;
}
.rayleigh-footer-mobile {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	color: #8c4d14;
}
.rayleigh-footer-mobile:hover { color: #2f261b; }
.rayleigh-footer-legal {
	grid-column: 1 / -1;
	justify-content: flex-start;
	padding-top: 14px;
	border-top: 1px solid rgba(69,46,28,0.08);
}

article.rayleigh-fullstory .rayleigh-full-image {
	display: block;
	padding: 14px;
	margin: 0;
	background: #fff;
	text-align: center;
	box-shadow: inset 0 0 0 1px rgba(69,46,28,0.08);
}
article.rayleigh-fullstory .rayleigh-full-image img {
	display: block;
	width: auto;
	max-width: 100%;
	max-height: 620px;
	height: auto;
	margin: 0 auto;
	border-radius: 10px;
	object-fit: contain;
	object-position: center;
}
.rayleigh-full-body img[width] {
	max-width: 100%;
}
.rayleigh-full-body .rayleigh-media-frame {
	position: relative;
	margin: 30px auto;
	border-radius: 14px;
	overflow: hidden;
	background: #111;
	box-shadow: 0 18px 44px rgba(0,0,0,0.22);
}
.rayleigh-full-body .rayleigh-media-frame iframe,
.rayleigh-full-body .rayleigh-media-frame video {
	display: block;
	width: 100%;
	max-width: 100%;
	min-height: 420px;
	margin: 0;
}
.rayleigh-video-dim {
	position: fixed;
	inset: 0;
	z-index: 10001;
	display: none;
	background: rgba(16,14,12,0.76);
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
}
body.rayleigh-video-playing .rayleigh-video-dim { display: block; }
#content > .rayleigh-video-dim {
	z-index: 20;
}
body.rayleigh-video-playing #top,
body.rayleigh-video-playing .rayleigh-aside,
body.rayleigh-video-playing .rayleigh-full-header,
body.rayleigh-video-playing .rayleigh-fullstory > .rayleigh-full-image,
body.rayleigh-video-playing .rayleigh-full-body > *:not(.rayleigh-media-frame):not(.rayleigh-media-holder) {
	filter: brightness(0.48);
	opacity: 0.42;
}
body.rayleigh-video-playing .rayleigh-media-holder,
body.rayleigh-video-playing .rayleigh-media-frame {
	position: relative;
	z-index: 30;
	filter: none;
	opacity: 1;
}
body.rayleigh-video-playing .rayleigh-media-frame {
	box-shadow: 0 24px 70px rgba(0,0,0,0.48);
}

.rayleigh-native-audio { display: none !important; }
.rayleigh-modern-audio {
	display: flex;
	align-items: center;
	gap: 16px;
	max-width: 720px;
	margin: 30px auto;
	padding: 18px 20px;
	background: linear-gradient(135deg, #fff 0%, #f5efe6 100%);
	border: 1px solid rgba(69,46,28,0.1);
	border-radius: 16px;
	box-shadow: 0 14px 36px rgba(69,46,28,0.12);
}
.rayleigh-modern-audio .rma-play {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 52px;
	width: 52px;
	height: 52px;
	border: 0;
	border-radius: 50%;
	background: linear-gradient(135deg, #8c4d14, #c79a5c);
	color: #fff;
	font-size: 18px;
	cursor: pointer;
	box-shadow: 0 8px 18px rgba(140,77,20,0.28);
}
.rayleigh-modern-audio .rma-play.playing { background: linear-gradient(135deg, #2f261b, #8c4d14); }
.rayleigh-modern-audio .rma-main { flex: 1 1 auto; min-width: 0; }
.rayleigh-modern-audio .rma-title {
	margin-bottom: 10px;
	font-weight: 700;
	font-size: 15px;
	line-height: 1.35;
	color: #2f261b;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.rayleigh-modern-audio .rma-progress {
	position: relative;
	height: 7px;
	border-radius: 999px;
	background: #ddd0bf;
	cursor: pointer;
	overflow: hidden;
}
.rayleigh-modern-audio .rma-progress span {
	display: block;
	width: 0;
	height: 100%;
	background: linear-gradient(90deg, #8c4d14, #c79a5c);
}
.rayleigh-modern-audio .rma-time {
	display: flex;
	justify-content: space-between;
	margin-top: 7px;
	font-size: 12px;
	color: #786b5e;
}

.rayleigh-consent {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 8px 0 20px;
	padding: 14px 16px;
	border: 1px solid #dfd8ce;
	border-radius: 10px;
	background: #faf8f4;
	font-size: 13px;
	line-height: 1.5;
	color: #5f554b;
}
.rayleigh-consent input {
	flex: 0 0 auto;
	margin-top: 3px;
}
.rayleigh-consent a { text-decoration: underline; }
.rayleigh-consent.is-error {
	border-color: #b04a3a;
	box-shadow: 0 0 0 3px rgba(176,74,58,0.12);
}
.rayleigh-btn-submit:disabled {
	opacity: 0.55;
	cursor: not-allowed;
	transform: none;
	box-shadow: none;
}

.rayleigh-related h2 { color: #9a4e10; }
.rayleigh-related-grid:before,
.rayleigh-related-grid:after {
	display: none !important;
	content: none !important;
}
.rayleigh-related-grid .rayleigh-related-card {
	flex: 0 0 calc((100% - 48px) / 3);
	max-width: calc((100% - 48px) / 3);
}
