html, body {height: 100%; margin: 0; padding: 0;}

a {transition: all 0.25s linear;}
body{padding: 0;margin: 0;background-color:#0e1624;font-family: "Inter", "Segoe UI", Arial, sans-serif;font-size:18px;/*overflow-y:scroll;*/line-height:1.6;color: #d7dce4;}
.layout {
    display: flex;
    flex-direction: column;
    min-height: 100vh; /* Минимальная высота - весь экран */
}
.top {
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	flex-direction: row;
	align-content: center;
    align-items: center;
	justify-content: space-between;
}
.header h2{padding:10px;margin: 15px 0;font-size:20px;font-weight: 700;letter-spacing: 0.3px;text-transform: uppercase;}
.header img {width: 30px;height: 30px;padding: 5px;filter: brightness(0) invert(1);}
.header > img,
.header > h2 {
    display: inline-flex;
    vertical-align: middle;
}
.tline {
    width: 100vw;            /* линия на ширину окна */
    height: 1px;
    background: #142237;        /* или любой цвет */
    margin-left: calc(50% - 50vw);  /* выровнять относительно окна */
    margin-right: calc(50% - 50vw);
}
.middle {
    flex: 1 0 auto;
    display: flex; /* Добавляем Flexbox */
    align-items: center; /* Вертикальное центрирование */
    justify-content: center; /* Горизонтальное центрирование */
}

.homedesc {
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	flex-direction: row;
	align-content: center;
	align-items: center;
	justify-content: space-between;
}
.homedesc_left, .homedesc_right {width: 50%;display: flex;}

.homedesc_left {
	order: 1;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.homedesc_right {
	order: 2;
	justify-content: flex-end;
}
.footer {
    flex-shrink: 0; /* Запрещает футеру сжиматься */
    padding: 20px;
    text-align: center;
}
@media screen and (min-device-width:400px), print
{
	.layout{background-color:transparent;max-width:1024px;margin: 0 auto;padding: 0 40px;}
	.header {display: flex;align-items: center;justify-content: space-between;gap: 5px;padding: 0}
	.content{padding:0;/*padding:8px;*/}
	.content p{margin-top:10px;margin-bottom:10px;}
	.content .list-link {font-size: 13px;}
	.content .list-quote {padding-left: 0;font-size: 15px;line-height:20px;}
	.content .list-link span {background-color: #1f3354;padding: 2px 4px;margin-left: 2px;}
	.content .listing span {font-size: 15px;border-left: 4px #2e4a78 solid;color: #777;margin-left: 8px;padding-left: 8px;padding-right: 8px;display: inline-block;border-radius: 0 0 5px 0;}
	.content .listing h3:first-child{margin-top: 15px;}
	.content .list-link{font-size: 15px !important;margin-bottom: 20px;border-top: 2px #2e4a78 solid;margin-top: 5px;padding-left: 7px;}
	.content .listing p:last-child{border-bottom: none !important;}
	.content a:link,.content a:visited{color:#888888;text-decoration:none;}
	.content a.home-read {display: inline-block;padding: 14px 34px;background: #1f3354;color: #ffffff !important;font-size: 18px;-webkit-border-radius: 10px;border-radius: 10px;text-decoration: none;transition: 0.25s ease;}
	.content .home-read:hover { background: #2e4a78;}
	.content a:hover{ color: #444444; }
	.menu a:link,.menu a:visited{font-size:20px;text-decoration:none;border-bottom: 4px transparent solid;}
	.menu a:hover{color:#ffffff;border-bottom: 5px #2e4a78 solid;padding-bottom: 2px;}
	.menu{padding:8px 16px;margin:0;font-size:16px;}
	.menu ul{margin:0px;padding:0px}
	.menu li{display:inline;margin-left:30px;list-style-type:none;}
	.menu ul li a{text-decoration: none;color: #d7dce4;font-size: 18px;padding-bottom: 6px;border-bottom: 2px solid transparent;transition: 0.25s ease;}
	.mobilemenu{padding:8px;}
	.mobilemenu ul{margin:0px;padding:0px}
	.mobilemenu li{display:inline;margin-right:8px;list-style-type:none;}
	.mobilemenu a:link,.mobilemenu a:visited{color:#888888;text-decoration:none;}
	.mobilemenu a:hover{color:#444444}
	.current a:link,.current a:visited{color:#757680;text-decoration:none;}
	.content table{width:100%;max-width:100%;}
	.content input,textarea{margin-top:5px;margin-bottom:5px;resize:none;border:1px solid #cccccc;background-color:#fefefe;font-family: 'Roboto Slab', serif;font-size:16px;padding:3px;min-height:20px}
	.send input,textarea{margin-top:5px;margin-bottom:5px;resize:none;border:1px solid #cccccc;background-color:#fefefe;font-family: 'Roboto Slab', serif;font-size:16px;padding:3px;min-height:20px}
	.content p{margin-top:10px;margin-bottom:10px}
	.content h1{font-size:35px;line-height:45px;margin-top:8px;margin-bottom:8px;font-weight:normal;}
	.content h2{font-size:30px;line-height:35px;margin-top:8px;margin-bottom:8px;font-weight:normal;}
	.content h3{font-size:25px;line-height:27px;margin-top:20px;margin-bottom:20px;font-weight:normal;}
	.content h3:not(:first-child) {padding-top: 50px;border-top: 2px #888888 dashed;}
	.content h4{font-size:20px;margin-top:20px;margin-bottom:20px;font-weight:normal;}
	.content .homeh4 {font-size: 40px;font-weight: 600;margin-bottom: 20px;line-height: 45px;}
	.content h5{font-size:15px;margin-top:15px;margin-bottom:15px;font-weight:normal;}
	.content h6{font-size:10px;margin-top:10px;margin-bottom:10px;font-weight:normal;}
	.content .contact_map iframe {width: 100%;height: 200px;margin: 0;padding: 0;-webkit-border-radius: 1rem;border-radius: 1rem;}
	.content iframe, .content video, .content .listing img {padding: 5px 0 8px 0;margin: 0 -25px;width: calc(100% + 50px);height: auto;}
	.content .list-photodescription {text-align: center;font-size: 13px;color: #c2c2c2;font-weight: 300;}
	.tgme_widget_message.text_not_supported_wrap.js-widget_message {background-color: #4c575c;}
	.content{height: 100%;width: 100%;overflow: auto;margin-bottom: 20px;}
	.content .listing {padding: 0;max-width: 640px;margin: 50px auto;border-radius: 16px;}
	.content .listing .post {border-radius: 15px;padding: 15px 25px;margin: 30px 0;background-color: #142237;}
	img.radius50 {border-radius: 50%;max-height: 300px;max-width: 300px;margin: 10px 0 15px;}
	.layout .reverse {unicode-bidi: bidi-override;direction: rtl;font-weight: 700;-ms-user-select: none;-moz-user-select: none;-khtml-user-select: none;-webkit-user-select: none;}
	.footer{padding:20px;font-size:15px;color: #757680;}
	.footer b{background: #4c575c;color: #fff;padding: 0 3px 1px 2px;font-size: 10px;font-weight: 700;-webkit-border-radius: 5px;border-radius: 5px;}
	.button{display:none;}
	:-moz-ui-invalid {box-shadow: none;}
	:invalid { box-shadow: none;}
}
	
@media print{
	body{font-family: 'Roboto Slab', serif;margin:3%;font-size:16px;line-height:135%;}
	.header{padding:8px;font-size:24px;height:32px;min-height:32px;border-bottom:1px solid #cccccc;}
	.menu{display:none;}
}