
/*---------------------
General
---------------------*/
a						{font-weight:normal; color:#333; text-decoration:none;}
a:hover					{text-decoration:underline;}

h1, h2, h3 { font: bold 14px 'Roboto Slab', Arial, Sans-serif; color: #000; }
h1						{font-size:42px; margin:0 0 10px 0; font-weight:bold;}
h2						{font-size:32px; margin:25px 0 25px 0;}
h3						{font-size:24px; margin:25px 0 5px 0;}
h4						{margin:25px 0 5px 0; font-weight:bold; line-height:1.5;}
p						{margin:0 0 10px 0;}
hr { opacity: 0.2; }
img:hover { transition: all 0.3s ease-in-out; transform: scale(1.02); }
img { transition: all 0.3s ease-in-out; }

::selection             {background:#d0e8ff;}
::-moz-selection        {background:#d0e8ff;}

table,
table tr,
table tr td				{font:normal 12px/1.5 Arial, Verdana, Sans-serif;}

img, table				{border:0;}
html 					{margin:0; padding:0;}
body { margin: 0; padding: 0; COLOR: #4f4f4f; font-size: 16px; font-weight: lighter; font-family: 'Roboto', Arial, Sans-serif; line-height: 1.5; background-color: #005360; background: url(/gfx/footerBg.png) #005360 bottom repeat-x; }

/*---------------------
Body layout
---------------------*/
#wrapper 					{margin:0 auto;}
.inner                      {max-width: 1000px; margin:0 auto;}
.inner.big                  {max-width:1800px; margin: 0 auto; padding: 0 2.5% !important; box-sizing:border-box;}

#logo                       {}
#logo img                   {display:inline-block; }

.header { background-color: #005360; padding: 8px 15px; display:flex; justify-content:space-between; align-items:center; }
.header .column {display:flex; justify-content:flex-start; align-items:center;}

.header #contact				{position:absolute; right:20px; top:10px;}

.topmenu { }
.header #responsive-menu-btn  {display:none;}

.topmenu ul                  {margin:0; padding:0;}
.topmenu ul li               {display:inline-block; position:relative; top: 10px; padding: 0 0 20px 0;}
.topmenu ul li a             {font-weight: 700; font-size: 16px; color: #FFF; text-decoration: none; padding: 0px 12.5px; display: flex; justify-content: flex-start; align-items:center; gap: 8px;}
.topmenu ul li.on a,
.topmenu ul li:hover a {color:#FDCC3A; }
.topmenu ul li a:hover       {text-decoration:none;}
.topmenu ul li a.haschild    {display:none;}
    .topmenu ul li ul { display: none; position: absolute; top: 48px; left: -30%; background: #fff; z-index: 1000; width: 243px; border-right: 1px solid #00000029; border-bottom: 1px solid #00000029; border-left: 1px solid #00000029; border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; }
    .topmenu ul li:hover ul { display: block; }
    .topmenu ul li ul li { display: block; text-align: center; margin: 0; padding:0; top:0;}
        .topmenu ul li ul li a { color: #000 !important; display: block; padding: 10px 0; border-bottom: 1px solid #00000029; }
        .topmenu ul li ul li:last-child a { border-bottom: none; }
        .topmenu ul li ul li:hover a,
        .topmenu ul li ul li.on a { color: #FDCC3A !important; }
    .topmenu ul li .fa-caret-up {color:#fff; position:absolute; bottom: -10px; left:51%; font-size:26px; display:none; margin:auto; text-align:center;}
    .topmenu ul li:hover .fa-caret-up { display: block; }

    .header #nav ul#responsive { display: none; }
.header .links {display:flex; justify-content:space-between;}
.header .links a {text-align:center; color:#fff; font-size: 12px; font-weight:bold; margin: 0 0 0 25px;}
.header .links a:hover {text-decoration:none;}
    .header .links i,
    .header .links img { color: #FDCC3A; display:block; font-size: 20px; margin: 0 auto 5px auto; }


/*---------------------
Page layout
---------------------*/
.clearfix:after 			{content:"."; display:block; height:0; clear:both; visibility:hidden;}
* html .clearfix 			{height: 1%;}

.contentTop {padding: 35px 0 0 0;}
.breadcrumbs {text-align:center; font-size:14px;}
    .breadcrumbs a,
    .breadcrumbs .links { color: #005360; font-weight:bold; }
.contentTop { background-color: #fbf8f8; padding: 35px 0 0 0; }
.contentTop h1 {text-align:center; line-height:1em; margin: 20px 0 25px 0;}

.content					{ background-color:#fff; }
.content .inner             {min-height:450px; overflow:hidden; padding:40px 0;}
.contentright   			{width:75%; margin:0; padding:0; float:right; overflow:hidden;}

.contentBottom { background: #FBF8F8; padding:80px 5%;}
.contentBottom h2 {margin: 0 0 70px 0; text-align:center;}

/*---------------------
Start page
---------------------*/
.infoMessagesDiv { width: 90%; max-width: 1667px; margin: 50px auto; }
    .infoMessagesDiv .row { display: flex; justify-content: space-between; align-items: center; margin: 0 0 20px 0; }
    .infoMessagesDiv h2 {margin:0;}
    .infoMessagesDiv .row .yellowBtn { background: #FDCC3A; color: #000; font-size: 16px; font-weight: bold; padding: 10px 20px; cursor:pointer; display: inline-block; border-radius: 100px; }

    .infoMessagesDiv .infoMessages {display:flex; flex-direction:column; gap: 11px; margin: 20px 0 0 0;}
    .infoMessagesDiv .infoMessage { display: flex; justify-content: flex-start; align-items:center; border-radius:10px; padding:15px; gap: 15px;}
    .infoMessagesDiv .infoMessage.yellow { background:#FDCC3A; }
        .infoMessagesDiv .infoMessage.green { background: #36bc3d; }
        .infoMessagesDiv .infoMessage.red { background: #BC3636; }
    .infoMessagesDiv .infoMessage .infoIcon {}
        .infoMessagesDiv .infoMessage.yellow .infoIcon .white { display:none; }
        .infoMessagesDiv .infoMessage.green .infoIcon .black { display:none; }
        .infoMessagesDiv .infoMessage.red .infoIcon .black { display:none; }
        .infoMessagesDiv .infoMessage .infoText p {margin:0;}
        .infoMessagesDiv .infoMessage .infoText .infoHeader { font-weight: bold; color: #fff; }
        .infoMessagesDiv .infoMessage .infoText .infoText { color: #fff; }
        .infoMessagesDiv .infoMessage.yellow .infoText .infoHeader { color: #000; }
        .infoMessagesDiv .infoMessage.yellow .infoText .infoText { color: #000; }
        .infoMessagesDiv .infoMessage .closeBtn {margin-left:auto; background:#fff; border-radius:100px; padding:3px 9px; cursor:pointer;}


        .startImage { width: 100%; position: relative; }
.startText {position:absolute; top: 35%; left:0; right:0; margin: auto; z-index:4; text-align:center; max-width:90%;}
.startText h1 {font-size: 48px; font-weight:bold; margin: 0 0 20px 0; color:#fff;}
.startText p {font-size: 22px; color:#fff; font-weight:lighter;}
    .startText p a { display: inline-block; padding: 20px 100px; color: #00353C; background: #FDCC3A; border-radius: 12px; font-size: 16px; font-weight:bold; margin: 40px 7px 0 7px; }
.flexslider { overflow: hidden; width: 100%; margin: 0 auto !important; }
.flexslider .slides li      {background-size:cover; background-position:center;}
.flexslider .slides li a    {display:block; height:100%; width:100%;position:relative; z-index: 2;}

.startLinks { height:110px; text-align: center; background: #C7DEE8; position:relative; display:flex; justify-content:center; align-items:center; overflow:hidden; }
.startLinks img.bg {margin: 0 50px 0 0; position:relative; top: 20px;}
.startLinks p {font-size: 26px; font-weight:bold; color:#000; margin: 0 25px 0 0;}
    .startLinks a { background: #005360; color:#fff; font-size: 16px; font-weight:bold; padding: 20px 40px; border-radius:12px; margin: 0 7px; display:inline-flex; align-items:center; justify-content:center;}
    .startLinks a img {margin: 0 9px 0 0;}

.startNews { }
.startNews .inner {width:90%; max-width:1667px; min-height:0; overflow:visible; padding: 75px 0;}
.startNews .startNewsHeader {display:flex; justify-content:space-between; align-items:center; margin: 0 0 20px 0;}
.startNews .startNewsHeader h2 {margin: 0;}
    .startNews .startNewsHeader a { font-size: 16px; font-weight: bold; color: #005360; }

#news-list {padding:0; margin: 0; display:flex; justify-content:space-between; list-style:none;}
    #news-list li { background: url(/gfx/newsBg.png) bottom center #fff no-repeat; width: 32%; padding: 25px 25px 60px 25px; box-sizing: border-box; border-radius: 8px; border: 1px solid #bababa; }
    #news-list li a:hover {text-decoration:none;}
#news-list li .title {font-weight: bold; font-size: 18px; display:block; color:#000; margin: 15px 0;}
#news-list li .text {font-size: 16px; font-weight:lighter;}
    #news-list li .readMore { font-size: 16px; font-weight: bold; color: #005360; display:block; margin: 15px 0 0 0; }
    #news-list li .readMore i {font-size: 14px;}

.post .image {
    width:100%;
    height:200px;
    display:block;
    background-size:cover;
    background-position:center;
    border-radius:10px;
}

#start-content { margin: 0 auto; }

#start-puffs						{overflow:hidden;}
    #start-puffs .puffitem { width: 50%; height: 100%; margin: 0; padding: 0; float: left; text-align: left; overflow: hidden; position: relative; transition: all 0.3s ease-in-out; }
    #start-puffs .puffitem .filter {display:block; position:absolute; bottom: 0; width: 100%; height:100%; z-index:2; background: rgb(255,255,255); background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(0,0,0,0.2553396358543417) 90%); }
#start-puffs .puffitem.last			{margin-right:0;}

#start-puffs .puffitem a                                                {display:block; width:100%; height:100%; text-decoration:none;}
    #start-puffs .puffitem .rub, #start-puffs .puffitem a .rub { position: absolute; z-index:3; bottom: 10%; left: 5%; font-size: 28px; color: #fff; width: 100%; display: block; padding: 0 0 0 25px; font-weight: bold; text-align: left; border-left: 4px solid #FDCC3A; }
#start-puffs .puffitem .image, #start-puffs .puffitem a .image          {width:100%; display:block; margin:0; text-align:center; background-color:#fff; overflow:hidden;}
#start-puffs .puffitem .image img, #start-puffs .puffitem a .image img  {width:100%; display:block; opacity:1.0; filter:alpha(opacity=100);}
#start-puffs .puffitem .content, #start-puffs .puffitem a .content      {width:100%; /*background:rgba(0,0,0,.6); color:#fff; text-shadow:0 -1px 0 rgba(0,0,0,.3);*/}
#start-puffs .puffitem .content p, #start-puffs .puffitem a .content p  {/*padding:0; margin:0;*/ line-height:16px; font-size:12px; color:#444;}
#start-puffs .puffitem:hover { transition: all 0.3s ease-in-out; transform: scale(1.02); }
#start-puffs .puffitem:hover .rub                                               {transition-duration:0.2s; -webkit-transition-duration:0.2s; }
#start-puffs .puffitem:hover img, #start-puffs .puffitem a:hover img            {transition-duration:0.2s; -webkit-transition-duration:0.2s; opacity:0.8; filter:alpha(opacity=80);}

.quotes { padding: 75px 0 70px 0;}
.quotes h2 {text-align:center; font-size: 28px; margin: 0 0 40px 0;}

.quotesSlider {margin: 0 auto; padding: 0; position:relative; width: 1100px; max-width:80%;}
    .quotesSlider .quoteItem { display: none; -webkit-backface-visibility: hidden;  min-height:250px;   }
        .quotesSlider .quoteItem .quoteText { text-align: center; font-size: 24px; color: #000; background: #C7DEE8; padding: 7.5% 5%; border-radius: 20px; }
.slides:after { content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0; }
.quotesSlider .flex-direction-nav a { opacity: .8; }
.quotesSlider .flex-next {right: -55px !important; }
.quotesSlider .flex-prev {left: -55px !important; }
    .quotesSlider:hover .flex-next:hover, .quotesSlider:hover .flex-prev:hover { opacity: 1; }
.quotesSlider .flex-control-nav { bottom: -150px; }
.quotesSlider .flex-control-paging li a.flex-active { background: #FDCC3A; cursor: default; }
.quotesSlider .flex-control-paging li a { background: #DBDBDB; box-shadow:none; width: 16px; height:16px;}

.quoteInfo { text-align: center;}
    .quoteInfo .image { height: 80px; width: 80px; display: flex; justify-content: center; align-items: center; border-radius: 100px; overflow: hidden; border: 10px solid #FDCC3A; box-shadow: 0px 0px 0px 10px #fdcc3a8f; margin: auto; }
        .quoteInfo .image img { width:100%; border-radius:50%; box-sizing:border-box; }
        .quoteInfo .name {font-weight:bold; color:#000; font-size: 16px; font-weight:bold; font-family:'Roboto Slab', Arial, sans-serif; margin: 20px 0 0 0;}

.apartments { background: url(/gfx/karta.jpg) top center no-repeat #FCCC3A; display: flex; justify-content: center; align-items: center; flex-direction: column; height: 495px; }
.apartments img {width:100px;}
.apartments h2 {margin: 15px 0 20px 0;}
.apartments p {font-size: 16px; font-weight:lighter;}
    .apartments a { background: #005360; color:#fff; padding: 20px 45px; font-weight:bold; border-radius: 5px; display:inline-block; margin: 20px 0 0 0;}

/*---------------------
Submenu vertical
---------------------*/
.leftmenu { float: left; width: 25%; }
.leftmenu ul					    {width:90%; margin:0; padding:0 0 10px 0; list-style:none; overflow:hidden;}
.leftmenu ul li				        {width:100%; margin:0; padding:0; border-bottom:1px dotted #999;}
.leftmenu ul li:last-child          {background:none; border:0;}
.leftmenu ul li a				    {width:100%; margin:0; padding:0; font:normal 12px/40px Arial; color:#555; text-decoration:none; display:block;}
.leftmenu ul li a:hover             {color:#333;}
.leftmenu ul li.on a			    {color:#333; font-weight:bold;}
.leftmenu ul li.on-childs           {background:none; border:0;}
.leftmenu ul li.on-childs a	        {color:#555; font-weight:bold; line-height:30px;}

.leftmenu ul li.on-childs ul            {margin:0 0 0 15px !important;}
.leftmenu ul li.on-childs ul li         {background:none; border:0;}
.leftmenu ul li.on-childs ul li a       {font-weight:normal !important; line-height:24px !important; font-size:11px; color:#555;}
.leftmenu ul li.on-childs ul li a:hover {color:#333;}
.leftmenu ul li.on-childs ul li.on a    {color:#333; font-weight:bold !important;}

/*---------------------
Submenu horizontal
---------------------*/
.fullmenu { padding: 0 0 30px 0; }
.fullmenu ul					    {width:auto; text-align:center; margin:0; padding:0; list-style:none; overflow:hidden;}
.fullmenu ul li				        {display:inline-block; margin:0 7.5px 10px 7.5px; padding:0; }
.fullmenu ul li:last-child          {background:none; border:0;}
    .fullmenu ul li a { margin: 0; padding: 15px 20px; font-size: 14px; font-weight: bold; color: #000; background: #00000012; border-radius: 12px; text-decoration: none; display: block; }
    .fullmenu ul li:hover a,
    .fullmenu ul li.on a, .fullmenu ul li.on-childs a { color: #fff; background: #005360; }


/*---------------------
Footer layout
---------------------*/
#footer { padding: 100px 2.5%; max-width: 1800px; margin: auto; background: url(/gfx/footerBg.png) #005360 bottom center no-repeat; height: 540px; box-sizing: border-box; position: relative; color: #fff; display: flex; justify-content: space-between; }
#footer h4 {font-size: 18px; color:#fff; font-weight:bold; margin: 0 0 20px 0;}
#footer p {font-size: 16px; font-weight:lighter;}
#footer p a {font-weight:bold; color:#fff;}
    #footer .socialMedia a { background: #FDCC3A; padding: 9px 12px; font-size: 20px; border-radius: 100px; color: #005360; text-align:center; margin: 0 5px 0  0;}
        #footer .socialMedia a em { width: 17px; text-align: center; }


@media screen and (max-width: 1600px) {
    .startLinks img.bg {position:absolute; left: 10px; top:0; z-index:0;}
    .startLinks p {position:relative; z-index:2;}
}
@media screen and (max-width: 1400px) {
    .startLinks {height:auto;}
    .startLinks img.bg { position: absolute; left: 10px; top: 0; z-index: 0; display:none; }
    .startLinks p {display:none; }
}

@media screen and (max-width: 1000px) {
    .inner { max-width: 95%; }
}

    @media screen and (max-width: 900px) {
        h1 { font-size: 36px; }
        h2 { font-size: 26px; }
        h3 { font-size: 22px; }
        body { font-size: 14px; }

        .header .links a {margin:0 0 0 15px;}

        .header #nav { position: static; top: 0; left: 0; height: auto; min-height: 50px; width: 100%; padding: 0; margin: 0; z-index: 9; display: none; }
        .header .topmenu { display: none; }

        .header #responsive-menu-btn { display: block; height: 50px; padding: 0 0 0 25px; z-index: 999; color: #fff; font-size: 30px; font-weight: bold; text-transform: uppercase; line-height: 50px; text-decoration: none; cursor: pointer; }
        .fullmenu ul li a { padding: 7.5px 10px; font-size: 12px; }
        .content { width: auto; height: auto; min-height: 100px; margin: 0; padding: 0; }
            .content .inner { min-height: 100px; padding-bottom: 2%; }


            .content .inner { width: auto; height: auto; margin: 0 auto; }
        .contentright { float: none; width: 100%; }
        .contentTop { padding: 20px 0; }
        .contentTop h1 {margin: 20px 0 0 0;}
        .contentBottom { padding: 40px 2.5%; }
            .contentBottom h2 { margin: 0 0 30px 0; }

        #footer { padding: 40px 2.5%; flex-wrap: wrap; }
            #footer div { width: 40%; margin: 0; }

        .flexslider .slides li { height: 400px !important; }

        .startText { top: 20%; }
            .startText h1 { font-size: 36px; }
            .startText p { font-size: 18px; }
                .startText p a { padding: 10px 20px; font-size: 14px; margin: 20px 7px 0 7px; }

        .startLinks { padding: 10px 0; }
            .startLinks a { font-size: 14px; padding: 10px 20px; margin: 0 5px 10px 5px; }
                .startLinks a:nth-child(3n) { margin: 0 5px 0px 5px; }

        .startNews { padding: 40px 0; }
        #news-list li { padding: 15px 15px 40px 15px; }
            #news-list li .title { font-size: 16px; margin: 0 0 10px 0; }
            #news-list li .text { font-size: 14px; }
            #news-list li .readMore { font-size: 12px; margin: 5px 0 0 0; }
                #news-list li .readMore i { font-size: 10px; }

        #start-puffs .puffitem .rub, #start-puffs .puffitem a .rub { font-size: 22px; padding: 0 0 0 10px; }
        .quotesSlider .flex-control-nav { bottom: -130px; }

        .quotes { background: #FBF8F8; padding: 25px 0 20% 0; }
        .quotesSlider .quoteItem { min-height: 0; }
            .quotesSlider .quoteItem .quoteText { font-size: 18px; padding: 5% 2.5% 10% 2.5%; }

        table.responsive-table,
        table.responsive-table thead,
        table.responsive-table tbody,
        table.responsive-table th,
        table.responsive-table td,
        table.responsive-table tr { display: block; border: 0; }
            table.responsive-table thead tr { position: absolute; top: -9999px; left: -9999px; }
            table.responsive-table tr { border: 1px solid #ccc; }
            table.responsive-table td { padding: 4px 6px; }
            table.responsive-table td { border: none; border-bottom: 1px solid #ddd; position: relative; padding-left: 50%; white-space: normal; text-align: left !important; }
                table.responsive-table td:before { position: absolute; top: 6px; left: 6px; width: 45%; padding-right: 10px; white-space: nowrap; text-align: left; font-weight: bold; }
                table.responsive-table td:before { content: attr(data-title); }
    }

    @media screen and (max-width: 600px) {

        h1 { font-size: 32px; }
        h2 { font-size: 24px; margin: 15px 0 10px 0; }
        h3 { font-size: 18px; }

        .startText h1 { font-size: 32px; margin: 0 0 10px 0; }
        .startText p { font-size: 16px; }
            .startText p a { margin: 0px 7px 10px 7px; }

        .startNews { padding: 20px 5%; }
        #news-list { display: block; }
            #news-list li { width: 100%; margin: 0 0 20px 0; padding: 40px 40px 60px 40px; }
        #start-puffs .puffitem { width: 100%; height: 100%; float: none; }
        .quotes { padding: 25px 0 30% 0; }
            .quotes h2 { font-size: 22px; }
        .quotesSlider .quoteItem .quoteText { font-size: 14px; padding: 5% 2.5% 10% 2.5%; }
        .quoteInfo .image { height: 40px; width: 40px; border: 5px solid #FDCC3A; box-shadow: 0px 0px 0px 5px #fdcc3a8f; }
        .quoteInfo { bottom: -60px; }
            .quoteInfo .name { font-size: 14px; margin: 10px 0 0 0; }
        .quotesSlider .flex-next { right: -30px !important; }
        .quotesSlider .flex-prev { left: -30px !important; }
        .quotesSlider .flex-control-nav { bottom: -100px; }
        .quotesSlider .flex-control-paging li a { width: 12px; height: 12px; }
        #footer { padding: 40px 2.5% 200px 2.5%; flex-wrap: wrap; }
            #footer h4 { font-size: 16px; }
            #footer p { font-size: 14px; }
            #footer .socialMedia a { padding: 6px 7px; font-size: 16px; }
                #footer .socialMedia a em { width: 14px; }
    }


    @media screen and (max-width: 480px) {
        h2 { font-size: 20px; }
        h3 { font-size: 16px; }
        #logo img { height:30px; }
        .header .links img { height: 16px; }


        .startText { top: 15%; }
        .startNews .startNewsHeader h3 { font-size: 20px; }
        .startNews .startNewsHeader a { font-size: 14px; }
        .apartments { height: 300px; }
            .apartments p { font-size: 14px; }

            .apartments a { padding: 10px 25px; margin: 10px 0 0 0; }

        .contentBottom { padding: 20px 5%; }
            .contentBottom h2 { margin: 0 0 20px 0; }
        .header #responsive-menu-btn { padding: 0 0 0 15px; font-size: 24px; }

        .header .links a { text-align: center; color: #fff; font-size: 10px; font-weight: bold; margin: 0 0 0 10px; }
        .header .links i { color: #FDCC3A; display: block; font-size: 16px; margin: 0 0 5px 0; }

        .quotes h2 { font-size: 20px; }
        #footer { padding: 40px 2.5% 600px 2.5%; }
    }
