.pr-btn {
    position: relative;
    display: flex;
    min-height: 50px;
    width: fit-content;
    font-size: 2rem;
    padding: 5px 30px;
    justify-content: center;
    align-items: center;
    background: linear-gradient(97.69deg, #008a81 7.11%, #005a8d 113.91%);
    color: #ffffff;
    text-transform: uppercase;
    text-decoration: none;

    overflow: hidden;
}

.pr-btn span {
    position: relative;
    color: #ffffff;
    z-index: 1;
}

.pr-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #008a81;
    opacity: 0;
    transition: all 200ms ease;
}

.pr-btn:hover::before {
    opacity: 1;
}

.pr-section {
    margin: 80px 0;
}

.pr-section-title {
    margin-bottom: 40px;
    font-size: 4rem;
    line-height: 1.2;
    text-transform: uppercase;
}

.pr-section p {
    margin: 20px 0;
    font-size: 2rem;
}
.pr-section h3{
    margin-top: 4rem;
    margin-bottom: 2rem;
    font-size: 3rem;
}
/* ****************************************************************************************** */
/* ****************************************************************************************** */
.pr-hall {
    position: relative;
    padding-top: 100px;
    /* padding-bottom: 250px; */
    overflow: hidden;
}

.pr-hall__decor-img {
    display: block;
    width: 100%;
    height: auto;
}

.pr-hall__title {
    font-size: 6rem;
	line-height: 1.1;
    margin: 0;
    margin-bottom: 30px
}

.pr-hall__subtitle {
    font-size: 3rem;
    font-weight: 500;
}

.pr-hall .container {
    display: flex;
    gap: 30px;
    align-items: center
}

.pr-hall__left-col {
    flex-grow: 1;
}

.pr-hall__right-col {
    flex-basis: 35%;
}

.pr-hall__right-col .pr-btn {
    margin: 0 auto;
}


.pr-plan {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 2rem;
    margin-top: 4rem;
}

.pr-plan-item {
    display: flex;
    flex-direction: column;
    padding: 2rem;
    gap: 2rem;
    justify-content: space-between;
    min-height: 200px;
    background-color: #f7f7f7;
    box-sizing: border-box;
}

.pr-plan-item__caption {
    font-size: 2rem;
    font-weight: 600;
}

.pr-plan-item__date {
    font-size: 1.8rem;
    color: #3497A4;
}

.advantages-box {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 2rem;
    margin-top: 4rem;
}

.advantage {
    display: flex;
    flex-direction: column;
    padding: 2rem;
    gap: 2rem;
    justify-content: space-between;
    min-height: 150px;
    background-color: #f7f7f7;
    box-sizing: border-box;
}

.advantage__caption {
    font-size: 2rem;
    /* font-weight: 600; */
}

.advantage svg {
    flex-shrink: 0;
}

.advantage svg path {
    stroke: #3497A4;
}

.requirements {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin: 4rem 0;
}

.requirements-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 1.8rem;
}

.requirements-item svg {
    position: relative;
    top: -3px;
    flex-shrink: 0;
    width: 32px;
    height: 32px;
}

.requirements-item svg path,
.requirements-item svg rect {
    stroke: #3497A4;
}

.pr-file {
    display: flex;
    align-items: center;
    gap: 1rem;
    width: fit-content;
    padding: 1rem;
    border: 1px solid #3497A4;
    background-color: #3497a400;
    font-size: 1.8rem;
    font-weight: 500;
    color: #3497A4;
    text-decoration: none;
    box-sizing: border-box;
    transition: all 200ms ease;
}

.pr-file svg {
    display: block;
    flex-shrink: 0;
    width: 30px;
    height: 30px;
}

.pr-file svg path {
    fill: #3497A4; ;
    transition: all 200ms ease;
}

.pr-file:hover { 
    background-color: #3497a4;  
    color: #ffffff;
}
.pr-file:hover svg path {
    fill: #ffffff;
}
.pr-file-stack{
    display: flex;
    gap: 2rem;
    flex-wrap: wrap;
}
.contact-kv{
    display: flex;
    flex-direction: column;
}
.contact-kv__key{
    font-size: 1.8rem;
}
.contact-kv__value{
    font-size: 2rem;
    color: #474747;
    font-weight: 600;

}
a.contact-kv__value:hover{
    text-decoration: none;
}
.pr-bq{
	display: flex;
	gap: 30px;
	align-items: flex-start;
}
.pr-bq__left-col{
	max-width: 400px;
}
.pr-bq__img-box{
	position: relative;
	margin-bottom: 30px;
	width: 300px;  
	overflow: hidden;
}
.pr-bq__img-box img{
	position: relative; 
	width: 100%;
	height: auto;
	object-fit: cover;
	object-position: center;
}
.pr-bq__positoin{
	display: block;
	font-size: 1.8rem;
	line-height: 1.2;
}
.pr-bq__name{
	display: block;
	font-size: 2.2rem;
	font-weight: 600;
	line-height: 1.2;
}
.pr-bq__right-col > p:first-child{
	margin-top: 0;
}
/* ============================================================ */

@media screen and (max-width: 800px){
	.pr-plan { 
		grid-template-columns: repeat(2, 1fr); 
	}
	 .pr-bq__img-box {  
		width: 195px; 
	}
	.pr-hall__title {
		margin-bottom: 10px;
		font-size: 5rem;  
	}
	.pr-hall { 
		padding-top: 75px;  
	}
}
@media screen and (max-width: 600px){
	.pr-section {
		margin: 50px 0;
	}

	.pr-bq {
		flex-direction: column;
		gap: 0; 
	}
	.pr-bq__left-col{
		max-width: 100%;
		width: 100%;
		order: 2; 
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		align-items: flex-end;
	}
	.pr-bq__right-col{order: 1}
	.pr-bq__img-box { 
		margin-bottom: 20px; 
	}
	.pr-section-title {
		margin-bottom: 20px;
		font-size: 3rem; 
	}
	
	.pr-hall__title { 
        font-size: 4rem;
    }
	.pr-hall__subtitle {
		font-size: 2.5rem; 
	}
	.pr-hall .container{
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
	}
	.pr-hall__decor-img {
		margin-top: 30px; 
        height: 100px;
		width: 100%; 
		object-fit: cover;
        object-position: 29% center;
	}
}
@media screen and (max-width: 450px){
	.pr-plan {
        grid-template-columns: 1fr;
    }
	.advantages-box { 
		grid-template-columns: 1fr;  
		margin-top: 3rem;
	}
	.pr-bq__img-box {
        width: 180px;
    }
	.pr-bq__left-col {
        max-width: 100%;
        width: 100%;
        order: 2;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        align-items: flex-start;
    }
	.pr-hall {
        padding-top: 70px;
    }
	.pr-section-title {
        margin-bottom: 20px;
        font-size: 2.5rem;
    }
	.pr-plan-item{
		min-height: auto;
	}
}