/*
Theme Name:  CleanTheme V2
Description: Modern rebuild of CleanTheme for innashukshina.eu. Same frontend design and all original features preserved. PHP 8+ and WordPress 6.x compatible.
Version:     2.0
Requires at least: 6.0
Tested up to:      6.8
Requires PHP:      8.0
Author:      Evgeniy Dudin (original), modernised 2026
Author URI:  http://sw54.ru/
Text Domain: cleantheme-v2
*/

/* ============================================================
   BASE TYPOGRAPHY & GLOBAL RESETS
   Sets the default font, color, and spacing that all elements inherit.
   ============================================================ */

body {
	font-family: Arial, sans-serif;
	color: #120606;
	font-size: 14px;
	margin: 0;
	padding: 0;
	width: 100%;
}

/* Headings — orange brand color, light weight for a modern feel */
h1, h2, h3, h4, h5, h6 {
	margin: 0 0 10px;
	line-height: 1.2;
	color: #fc562a;
	font-weight: 400;
}
h1 { font-size: 30px; }
h2 { font-size: 24px; }
h3 { font-size: 19px; }
h4 { font-size: 16px; }

ul, ol       { margin: 0 0 10px 40px; }
ul li, ol li { line-height: 1.2; margin-bottom: 10px; }
p            { margin: 0 0 10px; line-height: 1.3; }

small  { font-size: 70%; }
strong { font-weight: bold; }
em     { font-style: italic; }

/* Prevent images from overflowing their containers */
img { max-width: 100%; }

/* ============================================================
   UTILITY CLASSES
   Single-purpose helpers used throughout templates.
   ============================================================ */

.text-left   { text-align: left   !important; }
.text-center { text-align: center !important; }
.text-right  { text-align: right  !important; }

.pull-left  { float: left; }
.pull-right { float: right; }
.clear      { clear: both; }

/* Clearfix — applied to any container that holds floated children */
.clr:before,
.clr:after  { content: ""; display: table; line-height: 0; }
.clr:after  { clear: both; }

/* Brand colors available as utility classes */
.celadon    { color: #019197; } /* teal — used for Skype label, slogan */
.orange     { color: #fc562a; } /* orange — primary brand accent */

/* Black link — used for testimonial names and sidebar links */
.black-link       { color: #000; text-decoration: none; }
.black-link:hover { color: #fc562a; }

/* Superscript / subscript — corrected vertical alignment */
sub, sup {
	position: relative;
	font-size: 75%;
	line-height: 0;
	vertical-align: baseline;
}
sup { top: -0.5em; }
sub { bottom: -0.25em; }
figure {
	margin: 0px 0px 1em;
}
/* WordPress core alignment classes for images in post content */
img.alignleft  { float: left;  margin: 5px 25px 10px 0; }
img.alignright { float: right; margin: 5px 0 10px 25px; }
img.aligncenter { display: block; margin: auto; }

/* ============================================================
   LAYOUT — PAGE WRAPPER
   Fixed 1000 px centered container. Collapses to full width
   on smaller screens via the media query below.
   ============================================================ */

.container {
	width: 1000px;
	padding: 0 20px;
	margin: auto;
}

/* ============================================================
   RESPONSIVE — TABLET & MOBILE  (<= 1000 px)
   ============================================================ */

@media (max-width: 1000px) {
	.container {
		width: 100%;
		padding: 0 10px;
	}

	/* SmartSlider margin fix on small screens */
	.nextend-phone {
		margin-left: 0 !important;
	}

	/* Stack article to full width, remove the right border */
	article {
		width: 95vw !important;
		float: none !important;
		padding-right: 5px !important;
		border-right: none !important;
	}

	/* Stack sidebar below article */
	aside {
		display: block;
		max-width: 80vw !important;
		float: none !important;
	}

	/* Prevent sidebar images from overflowing */
	aside img { max-width: 140px !important; }

	/* Prevent article images from overflowing and preserve ratio */
	article img {
		max-width: 95vw !important;
		height: auto !important;
	}
}

/* ============================================================
   HEADER
   Contains: logo + slogan (left), contact info (right),
   slider (middle), navigation (bottom).
   ============================================================ */

header .top {
	padding: 15px 0 20px;
}

/* Logo link — no underline, inherits color */
header .top .logo {
	text-decoration: none;
}

header .top h1 {
	font-size: 30px;
	margin: 0;
}

header .top .slogan {
	font-size: 18px;
	color: #019197;
	font-style: italic;
}

header .top .pull-right {
	font-style: italic;
}

header .top .phone {
	font-size: 18px;
	margin-bottom: 10px;
}

header .top .dop-info {
	color: #686868;
}

/* Space below the slider */
header .middle {
	margin-bottom: 15px;
}

/* ============================================================
   NAVIGATION
   Horizontal centered menu with teal hover highlight.
   ============================================================ */

nav {
	margin-bottom: 20px;
	padding-bottom: 15px;
	border-bottom: 1px solid #a6e1e3; /* teal separator line */
}

nav .menu {
	list-style: none;
	margin: 0;
	text-align: center;
}

nav .menu li {
	display: inline-block;
	margin: 0 3px;
}
nav .menu li a {
	display: block;
	color: #000;
	padding: 8px 16px;
	font-size: 18px;
	text-shadow: 1px 2px 0 rgba(255, 255, 255, 1);
	text-decoration: none;
}

/* Active item and hover — teal background with layered box-shadow for depth */
nav .menu li a:hover,
nav .menu li.current-menu-item a,
nav .menu li.current-post-ancestor a {
	background: #a4edf0;
	color: #000;
	box-shadow:
		#68ccd0 1px 1px,
		#68ccd0 2px 2px,
		#68ccd0 3px 3px,
		#68ccd0 4px 4px;
}

/* ============================================================
   MAIN CONTENT AREA
   section > article (left, 723 px) + aside (right, 235 px)
   Two-column float layout. Collapses to single column on mobile.
   ============================================================ */

section {
	overflow: hidden; /* clearfix for floated children */
}

/* Article — main content column */
article {
	float: left;
	width: 723px;
	min-height: 1300px;
	padding-right: 19px;
	border-right: 1px solid #a6e1e3; /* teal divider between content and sidebar */
}

article img   { max-width: 725px; }
article a     { color: #019197; text-decoration: underline; }
article a:hover { text-decoration: none; }

/* Post wrapper inside article */
article .post { margin-bottom: 50px; }
article .post p {
	font-size: 14px;
	color: initial;
}
/* Breadcrumb trail */
article .breadcrumbs       { color: #fc562a; margin-bottom: 30px; }
article .breadcrumbs span  { color: #019197; }

/* ============================================================
   HOMEPAGE POST LISTING  (.index-box)
   ============================================================ */

article .index-box-content img,
article .index-box-content iframe {
	margin-bottom: 10px;
}

/* "More" link in all-caps bold */
article .index-box-content a {
	text-transform: uppercase;
	font-weight: 700;
}

/* Post title link — orange, no underline */
article .index-box h2 a {
	color: #fc562a;
	text-decoration: none;
}
/* Category / archive page heading */
article > h1 { text-transform: capitalize; }
/* ============================================================
   ARTICLES CATEGORY  (.articles)
   ============================================================ */

article .articles h2 a {
	color: #fc562a;
	text-decoration: none;
	text-transform: none;
}

article .articles img              { margin-right: 20px; }
article .articles .link-more a     { text-transform: uppercase; font-weight: 700;font-size: 14px; }

/* ============================================================
   RESPONSES / TESTIMONIALS CATEGORY  (.responses)
   ============================================================ */

article .responses {
	padding-bottom: 30px;
	border-bottom: 1px solid #d3d3d3;
}

/* Circular reviewer portrait with shadow */
article .responses img {
	width: 235px;
	height: 235px;
	margin-right: 30px;
	overflow: hidden;
	border-radius: 50%;
	border: 7px double #efefef;
	box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.5);
}

/* Quote bubble */
article .responses .responses-post {
	background: #ebebeb;
	border-radius: 10px;
	padding: 20px;
	float: none;
	width: 100%;
	margin-bottom: 15px;
	position: relative;
	box-sizing: border-box;
}

/* CSS triangle pointing left toward the reviewer photo */
article .responses .responses-post .triangle {
	border-color: #fff #ebebeb #fff #fff;
	border-style: solid;
	border-width: 10px 15px 10px 10px;
	height: 0;
	width: 0;
	position: absolute;
	top: 15px;
	left: -25px;
}

/* ============================================================
   FREE CONTENT CATEGORY  (.besplatno)
   ============================================================ */

.besplatno .img-preview { margin-right: 20px; }

.besplatno h2 a {
	text-decoration: none;
	color: #fc562a;
}

/* ============================================================
   SUBSCRIPTION / LANDING PAGES  (.podpiska)
   Used by page-50, page-1013, page-1229 templates.
   ============================================================ */

.podpiska {
	width: 1000px;
	height: 752px;
	margin: 5px auto 0;
	padding: 0 20px;
}

.podpiska h3 { margin-bottom: 20px; }

.podpiska > .post { padding: 5px 20px 0; }

.podpiska > .post h1 {
	font-weight: 700;
	margin-bottom: 10px;
}

.podpiska > .post .text-download {
	color: #fff;
	text-decoration: underline;
	margin-bottom: 30px;
	font-weight: 700;
}

.podpiska > .post .text-download table { margin: auto; }
.podpiska > .post .text-download table td { vertical-align: middle; }

/* Submit button styling */
.podpiska button[type=submit] {
	width: 410px;
	height: 50px;
	background: #ff826b;
	font-size: 30px;
	border: 1px solid #f7696b;
	color: white;
	border-radius: 10px;
	box-shadow: 2px 3px #f7696b;
	cursor: pointer;
}
.podpiska button[type=submit]:hover { box-shadow: 2px 3px #c44143; }

/* Copyright notice positioned near bottom */
.podpiska > .post .copy {
	color: #595959;
	position: relative;
	top: -65px;
}

/* Two-column layout inside subscription pages */
.podpiska > .post .pull-left  { width: 400px; }
.podpiska > .post .pull-right { width: 560px; }

.podpiska > .post .pull-right .title {
	font-weight: 700;
	font-size: 16px;
	text-decoration: underline;
	margin-bottom: 20px;
	padding-top: 15px;
}

/* Benefit list — teal checkmark icons via background image */
.podpiska > .post .pull-right ul {
	list-style: none;
	margin: 0;
}
.podpiska > .post .pull-right ul li {
	background: url(img/ic-ok.png) left center no-repeat;
	padding-left: 30px;
	line-height: 1.2;
	color: #019197;
	margin-bottom: 20px;
}

.podpiska > .post .sr-box { width: 410px !important; }

.podpiska img {
	max-height: 500px;
	margin-top: 20px;
}

.podpiska ul.sr-box-list .input-button { margin: initial !important; }

/* Subscription page responsive overrides */
@media (max-width: 1024px) {
	.pull-right { float: none !important; width: 99% !important; }
	.pull-left  { float: none !important; width: 99% !important; }

	.podpiska {
		width: 100% !important;
		height: auto !important;
		background-size: cover;
		margin: 5px;
		padding: 5px;
	}

	.podpiska > .post .sr-box     { width: 70% !important; }
	.podpiska button[type=submit] { width: 90% !important; }

	.podpiska > .post .copy { top: -55px; }
	.podpiska img           { max-width: 60%; }

	.podpiska ul.sr-box-list .input-img  { width: 90% !important; }
	.podpiska input[type=text]           { width: 90% !important; }

	.podpiska ul.sr-box-list .input-name  { background-size: 100% 100% !important; }
	.podpiska ul.sr-box-list .input-email { background-size: 100% 100% !important; }
}

/* ============================================================
   SMARTRESPONDER SUBSCRIPTION FORM
   Styles for the embedded SR form widgets used on landing pages.
   ============================================================ */

ul.sr-box-list .input-img {
	width: 410px;
	height: 54px;
	padding: 0 !important;
	margin-bottom: 10px !important;
}

ul.sr-box-list .input-name {
	background: url(/wp-content/uploads/2016/01/input-name.png) no-repeat !important;
}

ul.sr-box-list .input-email {
	background: url(/wp-content/uploads/2016/01/input-name.png) no-repeat !important;
}

ul.sr-box-list .input-img input {
	width: 390px;
	height: 35px;
	padding: 0;
	margin: 10px;
	border: none !important;
}

ul.sr-box-list .input-button {
	width: 323px;
	height: 61px;
	padding: 0 !important;
	cursor: pointer;
	display: block;
	margin: auto !important;
}

ul.sr-box-list .input-button > input {
	width: 323px;
	height: 61px;
	display: block;
	text-indent: -9999px;
	background: none !important;
	border: none !important;
}

/* ============================================================
   SOCIAL SHARING BUTTONS  (.soc-button)
   Row of Twitter / Facebook / VK buttons on single posts.
   ============================================================ */

ul.soc-button {
	width: 100%;
	list-style: none;
	margin: 20px 0 0;
}

ul.soc-button li {
	float: left;
	margin-right: 45px;
}

/* First button has no left margin */
ul.soc-button li:first-child { margin-right: 0 !important; }

/* ============================================================
   PAGINATION  (wp-pagenavi plugin)
   ============================================================ */

.wp-pagenavi { line-height: 3; }

/* Remove default borders from plugin output */
.wp-pagenavi span,
.wp-pagenavi a { border: none !important; }

/* Current page — teal highlight */
.wp-pagenavi span.current { background: #68ccd0; color: #fff; }
.wp-pagenavi  {
	font-size: 14px;
    color: initial;
}
.wp-pagenavi a { color: #000; }

/* ============================================================
   SMARTSLIDER2 NAVIGATION ARROWS
   Overrides the default arrow size to match the site design.
   ============================================================ */

.nextend-transition-previous-rounded .smartslider-inner,
.nextend-transition-next-rounded .smartslider-inner,
.nextend-transition-previous-rounded .smartslider-outer,
.nextend-transition-next-rounded .smartslider-outer,
.nextend-transition-previous-rounded,
.nextend-transition-next-rounded,
.nextend-transition-previous-rounded-dark,
.nextend-transition-next-rounded-dark {
	width: 37px !important;
	height: 37px !important;
}

.nextend-transition-next-rounded .smartslider-outer,
.nextend-transition-next-rounded .smartslider-inner,
.nextend-transition-previous-rounded .smartslider-outer,
.nextend-transition-previous-rounded .smartslider-inner {
	opacity: 0.3;
}

/* ============================================================
   SIDEBAR  (aside)
   235 px right column, floated left (sits right of the article).
   ============================================================ */

aside {
	float: left;
	width: 235px;
	padding-left: 20px;
	min-height: 300px;
}

/* Widget list — no bullets */
aside ul { list-style: none; margin: 0; }

/* Space between widgets */
aside ul li.widget { margin-bottom: 40px; }

aside ul h2 { font-size: 24px; color: #fc562a; }

aside ul a { color: #000; text-decoration: none; }

/* Category list links — orange on hover/active */
aside ul.cat-child a:hover,
aside ul.cat-child li.current-cat a {
	color: #fc562a;
	text-decoration: none;
}

/* Book widget layout helpers */
aside ul .descr-book {
	position: relative;
	margin-top: -30px;
}

aside ul .link-book { padding-top: 20px; }

/* Book CTA button — orange background, yellow text, layered shadow */
aside ul .link-book a {
	text-decoration: none;
	background: #fc562a;
	color: #fbde3b;
	padding: 15px 20px;
	box-shadow:
		#fce66c 1px 1px,
		#fce66c 2px 2px,
		#fce66c 3px 3px,
		#fce66c 4px 4px;
}

/* ============================================================
   FOOTER
   ============================================================ */

footer {
	border-top: 1px solid #a6e1e3;
	margin-top: 20px;
	padding: 20px 0;
	color: #595959;
	text-align: center;
}

footer span { font-size: 11px; }

/* ============================================================
   SMARTRESPONDER WIDGET  (sidebar embed)
   ============================================================ */

li.sr-251862_93 label {
	text-align: center;
	font-weight: normal !important;
	font-size: 14px !important;
	background: white !important;
}

#sr-subscribe-text {
	text-align: center;
	font-size: 18px !important;
	background: white !important;
	display: inline-block !important;
}

/* ============================================================
   TABLE UTILITY
   ============================================================ */

table.table td { padding: 4px; }

/* ============================================================
   COMMENTS
   ============================================================ */

/* Label width in the comment form */
.comment-form label {
	width: 200px;
	display: inline-block;
}

/* Comment list items — alternating background colors */
.comment.list .comment {
	padding: 10px;
	border: 1px solid lightgrey;
	border-radius: 5px;
	margin: 10px 0;
}

.comment.list .comment:nth-child(even) { background: #f4f4f4; }
.comment.list .comment:nth-child(odd)  { background: #fefefe; }

.comment.list .comment-author {
	font-weight: bold;
	font-style: normal;
}

.comment.list p { margin: 10px 0; }
