/*
 Theme Name:   Конференция 2025
 Theme URI:    https://wordpress.org/themes/twentytwentyone/
 Description:  
 Author:       Dmitriy
 Author URI:   https://site01.ru
 Template:     generatepress
 Version:      1.0
*/

@font-face {
    font-family: 'Century Gothic';
    src: local('Century Gothic Regular'), local('Century-Gothic-Regular'),
        url('fonts/CenturyGothic.woff2') format('woff2'),
        url('fonts/CenturyGothic.woff') format('woff'),
        url('fonts/CenturyGothic.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
  }

@font-face {
    font-family: 'Montserrat';
    src: local('Montserrat Regular'), local('Montserrat-Regular'),
        url('fonts/Montserrat-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: local('Montserrat Bold'), local('Montserrat-Bold'),
        url('fonts/Montserrat-Bold.ttf') format('truetype');
    font-weight: 800;
    font-style: bold;
}

a:active,
a.active.focus,
a.active:focus,
a.focus,
a:active.focus,
a:active:focus,
a:focus,
button.active.focus,
button.active:focus,
button.focus,
button:active.focus,
button:active:focus,
button:focus,
.btn.active.focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn:active:focus,
.btn:focus,
input,
textarea,
textarea:focus,
textarea:active.focus
textarea:active {
outline: 0 !important;
outline-color: none !important;
outline-width: 0 !important;
outline-style: none !important;
box-shadow: none !important;
background: none !important;
} 

body {
	background: #D9D1CC;	
}

body, button, input, select, textarea {
	font-family: Montserrat;
	color: #000;
	font-size: 22px;
}

#block-1 {
	width: 100%;
	height: 100vh;
	background: url(images/sample/bg-2025-1.jpg);
	display: block;
	position: relative;
	background-repeat: no-repeat;
	background-size: cover;
	overflow: hidden;
}

.block-1-title {
	width: 45%;
	height: 500px;
	background: #D9D1CC;
	position: absolute;
	color: #000;
	right: 10%;
	top: 10%;
}

.block-1-title h1 {
	font-weight: normal;	
  	padding: 40px 0;
}
.block-1-title div {
  display: flex;
  justify-content: space-between;
  font-size: 30px;
  padding: 0 15%;
}

.block-1-title img {
	position: absolute; 
	bottom: 20px;
	left: 20px; 
	width: 53%;
}

#block-2 {
	width: 100%;
	height: 100vh;
	display: flex;
	position: relative;	
	overflow: hidden;
}

.block-2-text {
	color: #FFF;
	background: #7C7777;
	font-size: 22px;
	padding: 50px;
}

.block-2-text p {
	margin-bottom: 35px;
	line-height: 1.5;
}

.block-head-title {
	display: flex;
	padding: 0 0 30px 0;
}

.block-head-title img {
	width: auto !important;
	height: 38px !important;
}

.block-head-title h2 {
	color: #000;
	font-weight: normal;
	font-size: 22px;
  	letter-spacing: 4px;
}

#block-2 img {
	height: 100%;
	width: auto;
}

#block-3 {
	display: flex;
	position: relative;
	width: 100%;
	height: 100vh;
	background: url(images/sample/bg-2025-3a.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	overflow: hidden;
}

.block-3-text {
	color: #000;
	font-size: 22px;
	padding: 50px;
}

.block-3-img {
	margin: 50px;	
}

.block-3-text p {
	margin-bottom: 10px;
	line-height: 1.2;
}

.grid-container {
	max-width: 100%;
}

.inside-header {
	padding: 0 40px;
}

.separate-containers .site-main {
	margin: 0;
}

.fancybox__content > .f-button.is-close-btn {
	top: 5px;
	right: 5px;
	border-radius: 5px;	
}

.entry-title {
	margin-top: 30px;
}
















.site-info {
	background: none;
}

.site-header {
	background: none;
}

.separate-containers .inside-article, .separate-containers .comments-area, .separate-containers .page-header, .one-container .container, .separate-containers .paging-navigation, .inside-page-header {
	background-color: rgba(255,255,255,.25) !important;
	padding: 50px;	
}


a, a:focus, a:active, a:active.focus, a:visited,
.site a:focus:not(.wp-block-button__link):not(.wp-block-file__button),
.has-background-white .site a:focus:not(.wp-block-button__link):not(.wp-block-file__button){
	color: #7c3a2d;
	text-decoration: none;
}

a:hover {
	color: #b35340;
	text-decoration: none;
}

input, textarea {outline:none;} input:active, textarea:active {outline:none;} :focus {outline:none;} textarea {resize:none;} textarea {resize:vertical;} textarea {resize:horizontal;}


h1, .h1 {	
 	font-size: 45px;
  	text-align: center;
  	font-weight: bold;
  	line-height: 1.3;
  	text-transform: uppercase;
  	padding: 20px 0;
}

h2 { 
  border-radius: 8px;
  font-size: 37px;
  padding: 8px 20px;
  font-weight: 700;
}

h3 {
	padding: 20px 10px;
	margin-bottom: 0;
}

p {
	padding-bottom: 10px;
	margin-bottom: 0;
	line-height: 1.3;
}

table {
	border-width: 0;
	position: relative;
}

table::before {
	content: '';
	display: block;
	position: absolute;
	width: 2px;
	height: 100%;
	background-color: #FFF;
	left: 28%;	
}

table td, table th, .wp-block-table td, .wp-block-table th {
	padding: 5px 7px 5px 30px;
	border-width: 0;	
}

table td p {
	padding-bottom: 0;
}

.date-1-razdel {
	border-right: 1px solid #222;
	width: 105%;
}

.date-1-razdel, .date-2-razdel {
	margin: 10px 0;	
}

.date-1, .date-2 {
  margin: 20px auto;  
  background: #CD2A3D;
  padding: 5px 50px;
  width: fit-content;
  border-radius: 5px;
  color: #FFF;
  font-weight: 700;
}

.date-2 {
	background: #880B04;
}

a.but, a.but:active, a.but:visited, a.but:focus,
.site .button, button, input[type="submit"], input[type="reset"], .wp-block-search .wp-block-search__button, .wp-block-button .wp-block-button__link, .wp-block-file a.wp-block-file__button {	
	text-align: center;
	font-size: 20px;
	background: #ce2020 !important;
	display: block;	
	padding: 15px 40px;
	color: #FFF !important;
	font-weight: 400;
	text-transform: uppercase;
	text-decoration: none;
	width: fit-content;
	margin: 0 auto;
	transition-duration: 0.3s;
	letter-spacing: 3px;
	text-decoration: none !important;
	border: 0 !important;
	white-space: normal;
	position: relative; /* Обязательно для анимации */ 
    overflow-x: hidden; /* Обязательно для анимации */
	border-radius: 0;
	cursor: pointer;
}

a.but .flare, a.but:active .flare, a.but:visited .flare, a.but:focus .flare {
    position: absolute;
    top: 0;
    height: 100%;
    width: 45px;
    transform: skewX(-45deg); /* Наклон*/
    animation: flareAnimation;
    left: -150%;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.4));
    animation: flareAnimation 3s infinite linear; /*Время и тип анимации можно менять*/
}

@keyframes flareAnimation {
    0% {
        left: -150%;
    }
    100% {
        left: 150%;
    }
}


a.but, a.but:active, a.but:visited, a.but:focus {
	margin: 50px auto;
}

a.but:hover, input[type="submit"]:hover, .wp-block-button:hover .wp-block-button__link {
	background: #ff0000  !important;
	color: #FFF;		
}

input[type="checkbox"]:after {
    content: "";    
    display: block;    
    top: 2px;
    position: absolute;
    width: 7px;
    height: 13px;
    border: 3px solid #000;
    border-top: 0;
    border-left: 0;
    transform: rotate(30deg);
	left: 7px;
	top: 3px;
	width: 8px;
	height: 13px;
	opacity: 0;
  }

input[type="checkbox"]:checked:after {
	opacity: 1;
}




/*Fancy Box*/

#fancybox-content {
	background: #052542;
	border: 3px solid #EFCB84 !important;	
}

#form_registr {
	max-width: 800px;
	padding: 10px 20px;
}

.fancybox__content > .carousel__button.is-close {
	top: 0;
	background: none !important;
}

.fancybox__content > .carousel__button.is-close svg{
	color: #222;
	filter: none;
}

.fancybox__content > .carousel__button.is-close:hover svg{
	color: #CD2A3D;	
}

.fancybox__content {
	padding: 25px 35px;
}

.wpcf7-form {
	font-size: 20px;
}
.wpcf7-form h2 {
	font-size: 27px;
	padding: 10px 20px 30px 20px;
	background: 0;
	color: #222;
	text-align: center;
	text-transform: uppercase;
}

.wpcf7-form h3 {
	text-align: center;
	padding: 10px 5px;
	text-transform: uppercase;
	font-size: 22px;
}

.wpcf7-form label {
	display: block;
	padding: 0;	
	margin: 0 0 -10px 0;
}

.wpcf7-form .cf7-main-input {
	padding-bottom: 30px;
}

.wpcf7-form .cf7-main-input label {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.wpcf7-form .cf7-main-input label span {
	width: 76%;
}

.wpcf7-form .cf7-main-date-peregovor {
	display: flex;
	padding: 25px 0;
	flex-wrap: wrap;
}

.wpcf7-form .cf7-main-date-peregovor p.date-peregovor-text {
	width: 75%;
}

.wpcf7-form .cf7-main-date-peregovor p.date-peregovor-num {
	width: 25%;
}


.wpcf7 form .wpcf7-response-output {
	margin: 0 0 1em;
	font-size: 17px;
}

#cf7_registration {
	width: 100%;
	max-width: 800px;
}

.cf7-main-date {
	padding-bottom: 25px;
}

.wpcf7-list-item {
	margin: 0 0 0 1em;
	display: block;
	line-height: 3;
}

.wpcf7-list-item label:hover {
	cursor: pointer;
	color: #CD2A3D;
}

.cf7-main-date .wpcf7-checkbox {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	margin-top: 10px;
}

.cf7-main-date .wpcf7-list-item {
	margin: 0;
}

.cf7-main-date .wpcf7-list-item label input+span {
	color: #880B04;
	background: #FFF;
	border: 2px solid #880B04;
	padding: 10px 40px;
	width: fit-content;
	border-radius: 5px;	
	font-weight: 700;
}

.cf7-main-date .wpcf7-list-item label input {
	display: none;
}

.cf7-main-date .wpcf7-list-item label input:hover+span {
	color: #FFF;
	background: #880B04;
	border: 2px solid #880B04;
}

.cf7-main-date .wpcf7-list-item label input:checked+span {
	color: #FFF;
	background: #880B04;	
}

.cf7-main-dinner {
	padding: 10px 0 60px 0;
}

.cf7-main-dinner .wpcf7-list-item {
	margin: 0;
}

.cf7-main-dinner p span {
	line-height: 0;
	padding-top: 10px;
	line-height: 1.4;
}

.cf7-main-program {
	position: relative;
	margin-bottom: 140px;
}

.cf7-main-program span.wpcf7-list-item {
	margin: 10px 0 30px 0;
	width: 50%;
	line-height: 1.5;
}

.cf7-main-program .wpcf7-list-item label {
	display: flex;
	flex-wrap: nowrap;
}

.cf7-main-program .wpcf7-list-item label span {
	width: 90%;
}

.cf7-main-program .wpcf7-list-item label input:hover+span{
	color: #CD2A3D;
}

.cf7-main-program .wpcf7-list-item label input:checked+span{
	color: #CD2A3D;	
}


.cf7-main-program .spa-program {
	display: none;
	position: absolute;
	transition-duration: 0.2s;
}


.cf7-main-program span.wpcf7-list-item .wpcf7-list-item-label {
	display: block;
}

.cf7-main-program span.wpcf7-list-item .wpcf7-list-item-label:after {
	content: "";
	background-repeat: no-repeat;
	background-size: contain;
	background-position: right top;
	display: none;
	width: 350px;	
	position: absolute;
	left: 380px;
	top: 0;
	opacity: 0;	
}

.cf7-main-program .wpcf7-list-item:nth-of-type input:checked + .wpcf7-list-item-label:after {
	display: block;
	opacity: 1;
	transition-duration: .3s;
}

.cf7-main-program .wpcf7-list-item:nth-of-type(1) input:checked + .wpcf7-list-item-label:after {
	background-image: url(images/programs/spa-program.jpg);
	height: 280px;
	display: block;
	opacity: 1;
	transition-duration: .3s;
}

.cf7-main-program .wpcf7-list-item:nth-of-type(2) input:checked + .wpcf7-list-item-label:after {
	background-image: url(images/programs/snegohod-program.jpg);
	height: 280px;
	display: block;
	opacity: 1;
	transition-duration: .3s;
}

.cf7-main-program .wpcf7-list-item:nth-of-type(3) input:checked + .wpcf7-list-item-label:after {
	background-image: url(images/programs/art-program.jpg);
	height: 280px;	
	display: block;
	opacity: 1;
	transition-duration: .3s;
}


.cf7-check-programs {
	display: flex;
	flex-direction: column;
}

.check-programs-col{
	width: 100%;
	display: flex;
}

.check-programs-col .check-prog-one {
	width: 50%;
	margin: 10px 0;
}

.cf7-check-programs .exursia-2304 .wpcf7-list-item input:checked + .wpcf7-list-item-label:after {
	background-image: url(images/programs/program-2025-001.jpg);
	height: 160px;
  	display: block;
  	opacity: 1;
  	transition-duration: .3s;
  	background-size: contain;
  	background-repeat: no-repeat;
  	margin: 10px 15px 0 0;
}

.cf7-check-programs .exursia-2404 .wpcf7-list-item input:checked + .wpcf7-list-item-label:after {
	background-image: url(images/programs/program-2025-02.jpg);
	height: 160px;
  	display: block;
  	opacity: 1;
  	transition-duration: .3s;
  	background-size: contain;
  	background-repeat: no-repeat;
  	margin: 10px 15px 0 0;
}

.cf7-check-programs .dinner-2304 .wpcf7-list-item input:checked + .wpcf7-list-item-label:after {
	background-image: url(images/programs/dinner-2025-01.jpg);
	height: 160px;
  	display: block;
  	opacity: 1;
  	transition-duration: .3s;
  	background-size: contain;
  	background-repeat: no-repeat;
  	margin: 10px 15px 0 0;
}

.cf7-check-programs .dinner-2404 .wpcf7-list-item input:checked + .wpcf7-list-item-label:after {
	background-image: url(images/programs/dinner-2025-02.jpg);
	height: 160px;
  	display: block;
  	opacity: 1;
  	transition-duration: .3s;
  	background-size: contain;
  	background-repeat: no-repeat;
  	margin: 10px 15px 0 0;
}















.wpcf7-not-valid-tip {
	font-size: 15px;
}

.wpcf7-response-output {
	display: none;
}


input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], .site textarea {
	border: 1px solid #222 !important;
	border-radius: 4px;
	color: var(--form--color-text);
	line-height: 1.2;
	padding: 10px;
	margin: 0;
	max-width: 100%;
	width: 100%;
}


input[type="checkbox"], input[type="radio"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	position: relative;
	margin-bottom: -6px;
	margin-right: 10px;
	width: 25px;
	height: 25px;
	border: 1px solid #444;
	//background: #FFF;
}


input[type="checkbox"]:hover, input[type="radio"]:hover {
	cursor: pointer;
}

.fancybox-content {
	background: #052542;
	padding: 20px;
}


#fancybox-close {
	position: absolute;
	top: 2px;
	right: -5px;
	width: 35px;
	height: 35px;
	background: transparent url('images/close.svg') 0 0;
	cursor: pointer;
	z-index: 111103;	
	background-repeat: no-repeat;	
}


.modal-window {
	display: none;
}
.modal-window.active {
	display: block;
}



/*Footer*/

.site-footer {
	padding-top: 0;
	padding-bottom: 0;
}

.site-footer > .site-info {
	border-top: 0;
}

.inside-site-info {
	padding: 0 40px;
}


@media screen and (max-width: 900px) {
	
	.block-1-title {
		width: 70%;	
	}

	#block-2,
	#block-3 {
		height: auto;
		flex-direction: column;
	}
	
	.header-logo img{		
		width: 70%;
	}
	
	body {
		font-size: 20px;
	}
	
	.briliant h1 {
		font-size: 60px;
	}

	.date-1 h4, .date-2 h4 {
        font-size: 28px;
        width: 200px;
	}
	
	.date-1, .date-2 {
		font-size: 20px;
	}
	
	.request {
		font-size: 37px;
	}
	
	h2 {    
    	font-size: 30px;
	}
		
	.wpcf7-form h2 {
		font-size: 25px;
	}
	
	table {
		display: block;
		height: auto;
		overflow-x: scroll;
	}
	
	.cf7-main-program span.wpcf7-list-item {
		width: 100%;
		margin: 40px 0;
	}
	
	.cf7-main-program span.wpcf7-list-item .wpcf7-list-item-label::after {
		position: relative;
		left: 0;
		top: 10px;
	}
	
	.page-home-years {
		display: none;
	}
	
	.page-home-text {
		width: 100%;
		margin: 0 0 0 0 !important;
	}
	
	.block-15-years {
		text-align: center;
	}
	
	.block-15-years img {
		width: 80%;
	}

	.separate-containers .inside-article, .separate-containers .comments-area, .separate-containers .page-header, .one-container .container, .separate-containers .paging-navigation, .inside-page-header {
		padding: 50px;		
	}

	.title-block-2025 h1 {
		font-size: 45px;
		padding: 0 20px 0 0;
	}

	.year-2025 {
		font-size: 68px;
	}

	
}

@media screen and (max-width: 800px) {
	
	H1 {
		font-size: 38px;
	}
	
	.title-block-2025 {
		flex-direction: column;
	}

	.title-block-2025 h1 {
		max-width: 100%;
		text-align: center;
	}

	.year-2025 {
		text-align: center;	
	}

}

@media screen and (max-width: 768px) {
	.inside-header {
		display: none;
	}

.block-1-title {
	right: 0;	
	left: 0;
	margin: 0 auto;
}

}

@media screen and (max-width: 400px) {
	body, .entry-content, .entry-summary, .entry-content p {
		font-size: 19px;
	}

	.block-1-title div {
		font-size: 25px;
		text-align: center;
		flex-direction: column;
	}

	.block-1-title h1 {
		padding: 40px 15px;
	}

	.block-1-title img {
		width: 80%;
	}

	.block-head-title {
		flex-direction: column;
		padding: 0 0 10px 0;
	}

	.block-2-text,
	.block-3-text {
		font-size: 19px;
		padding: 50px 30px 0 30px;
	}
	h2 {
		border-radius: 0;
		padding: 30px 0 0 0;
	}










	
	.site-header {
		padding-bottom: 0;
	}	
	.header-logo {
		flex-wrap: wrap;}
	
	.header-logo {
		justify-content: center;
	}
	
	.header-logo img {
		width: 80%;		
		margin: 0;		
	}

	.block-15-years img {
		width: 100%;
	}
	
	h1, .h1 {
		font-size: 25px;
		padding: 0 0 20px 0;
	}
	
	h2 {
		font-size: 26px;
	}
	
	h3 {
		font-size: 26px;
	}
		
	.date-1-razdel {
		border-right: 0;
		width: 100%;
	}
	
	.date-1 {
		margin: 40px auto 0 auto;
	}
	
	.date-2 {
		margin: -20px auto 40px auto;
	}
	
	
	table td, table th, .wp-block-table td, .wp-block-table th {
		padding: 5px 10px 5px 14px;		
	}
	
	.entry-content table tbody p {
		font-size: 17px !important;
	}
	
	a.but {
		font-size: 20px;
		max-width: 270px !important;
	}
	
	.wpcf7-form h2 {
		font-size: 23px;    	
    	padding: 30px 20px 0;    	
	}
	
	.fancybox__content {
		padding: 10px;	
	}
	
	.cf7-main-date .wpcf7-checkbox label {
		margin: 10px 0;
	}
	
	.wpcf7-form .cf7-main-input label {
		flex-wrap: wrap;
	}
	
	.wpcf7-form .cf7-main-input label span {
		width: 100%;
	}	
	
	.cf7-main-program {
		margin-bottom: 0;
	}

	
	.cf7-main-program span.wpcf7-list-item .wpcf7-list-item-label::after {		
		left: -35px;	
		width: 114%;
	}
	
	.cf7-main-program .wpcf7-list-item:nth-of-type(1) input:checked + .wpcf7-list-item-label::after {
		height: 210px;
	}
	
	.cf7-main-program .wpcf7-list-item:nth-of-type(2) input:checked + .wpcf7-list-item-label::after {
		height: 235px;
	}
	
	.cf7-main-program .wpcf7-list-item:nth-of-type(3) input:checked + .wpcf7-list-item-label::after {
		height: 267px;
	}
	
	.cf7-main-program .wpcf7-list-item:nth-of-type(4) input:checked + .wpcf7-list-item-label::after {
		height: 255px;
	}
	
	.cf7-main-program .wpcf7-list-item:nth-of-type(5) input:checked + .wpcf7-list-item-label::after {
		height: 247px;
	}
	
	.cf7-main-program .wpcf7-list-item:nth-of-type(6) input:checked + .wpcf7-list-item-label::after {
		height: 265px;
	}
	
	.cf7-main-program span.wpcf7-list-item {
		margin: 0;
	}	
	
	.cf7-main-program .wpcf7-list-item.first label{
		border-top: 1px solid #ccc;
		margin-top: 20px;
	}
	
	.cf7-main-dinner .wpcf7-list-item label {
		padding: 0 0 0 10px;
	}
	.cf7-main-program .wpcf7-list-item label{
		border-bottom: 1px solid #ccc;
		padding: 15px 10px;
		margin: 0;
	}
	
	input[type="submit"] {
		padding: 12px 20px;
		margin-top: 30px;
	}
	
	.wpcf7-form .cf7-main-date-peregovor p.date-peregovor-text,
	.wpcf7-form .cf7-main-date-peregovor p.date-peregovor-num {
		width: 100%;
	}

	.separate-containers .inside-article, .separate-containers .comments-area, .separate-containers .page-header, .one-container .container, .separate-containers .paging-navigation, .inside-page-header {
		padding: 40px 20px;
	}

	.title-block-2025 h1 {
		font-size: 30px;
		padding: 20px 20px 0 0;
	}

	a.but, a.but:active, a.but:visited, a.but:focus, .site .button, button, input[type="submit"], input[type="reset"], .wp-block-search .wp-block-search__button, .wp-block-button .wp-block-button__link, .wp-block-file a.wp-block-file__button {
		padding: 15px 10px;	
	}
	
	.check-programs-col{
		flex-direction: column;
	}
	
	.check-programs-col .check-prog-one {
		width: 100%;		
	}
	

}

