body         { margin:0px; padding:0px; width:100%; height:100%; min-height:100%; background:#fff; font-family:'PT Sans', sans-serif; text-transform:uppercase; }
html         { width:100%; height:100%; min-width:300px; }
a            { text-decoration:none; }
.t           { height:100%; width:100%; display:table; }
.v           { vertical-align:middle; height:100%; display:table-cell; }
.main        { position:absolute; top:70px; left:8%; right:8%; bottom:28px; width:84%; height:auto; text-align:center; }
.main:before { content:''; position:fixed; left:0px; bottom:0px; width:100%; height:28px; background:#fff; z-index:10; }
.flat        { float:left; width:100%; height:28px; }

/*Menu*/
.opened-menu            { position:fixed; left:0px; top:0px; width:100%; height:100%; background-color:rgba(4,29,54,0.99); font-size:0px; z-index:1002; text-align:center; }
.opened-menu a          { display:inline-block; position:relative; padding-bottom:10px; padding-left:10px; padding-right:10px; margin-left:2%; margin-right:2%; font-size:34px; font-weight:300;
						  color:#fff; text-decoration:none; }
.opened-menu a:before   { content: ''; position:absolute; bottom:0px; left:0px; width:100%; height:1px; background:#fff; opacity:0.08; }
.opened-menu a.selected { color:#8bd086; }

/*Logo*/
.logo                   { position:fixed; left:8%; top:0px; width:70px; height:70px; background:#041d36; text-align:center; z-index:1003; }
.logo i                 { position:absolute; left:28px; top:20px; width:10px; height:10px; border:2px solid #fff; }
.logo i:before          { content:''; position:absolute; left:-2px; top:14px; width:14px; height:10px; border-top:2px solid #fff; border-bottom:2px solid #fff; }
.logo i:after           { content:''; position:absolute; left:4px; top:16px; width:2px; height:10px; background:#fff; }

/*Menu*/
.menu                   { position:fixed; right:0px; top:0px; width:8%; height:70px; z-index:999999; }
.menu i                 { position:absolute; left:50%; margin-left:-11px; top:50%; margin-top:-1px; width:22px; height:2px; background:#041d36; }
.menu i:before          { content:''; position:absolute; left:0px; top:-8px; width:22px; height:2px; background:#041d36; }
.menu i:after           { content:''; position:absolute; left:0px; bottom:-8px; width:22px; height:2px; background:#041d36; }

.close i                { position:absolute; left:50%; margin-left:-11px; top:50%; margin-top:-1px; width:22px; height:2px; background:#fff;
						  -ms-transform:rotate(45deg); -webkit-transform:rotate(45deg); transform:rotate(45deg); }
.close i:before         { content:''; position:absolute; left:10px; top:-10px; width:2px; height:22px; background:#fff; }
.close i:after          { display:none; }

/*Header*/
.header                 { position:fixed; left:0px; top:0px; width:100%; height:70px; background:#fff; z-index:1000; }
.languages              { position:absolute; padding-left:15px; padding-right:15px; right:8%; top:0px; height:70px; background:#e5e5e5; }
.languages a            { float:left; margin-left:8px; margin-right:8px; font-size:11px; color:#041d36; }
.languages a:hover      { text-decoration:underline; }
.languages a.current    { color:#9b9b9b; text-decoration:none !important; }

/*Main Page*/
.nav                    { position:fixed; right:8%; top:70px; bottom:28px; padding-right:35px; width:2px; height:auto; z-index:2; }
.nav a                  { float:left; margin-top:14px; margin-bottom:14px; width:2px; height:18%; background:#fff; }
.nav a.current          { background:#041d36; }


.o-img                  { position:absolute; left:0px; top:0px; width:100%; height:100%; background-position:center center !important; background-size:cover !important; }
.i-d-type               { margin-top:10px; margin-bottom:10px; font-size:44px; color:#fff; }
.i-d-address            { font-family:'Open Sans',sans-serif; font-size:14px; line-height:24px; font-weight:300; text-transform:none; color:#fff; opacity:0.6; }
.i-d-more               { display:inline-block; margin-top:30px; padding:19px 40px 20px 40px; font-size:14px; line-height:14px; border:2px solid #fff; font-size:14px; color:#fff; }

.object            { position:relative; display:block; width:100%; height:100%; overflow: hidden; color:#BBB; }
.object h2         { color:#FFF; }
.object .cover     { position:absolute; display:block; width:100%; height:100%; z-index:1; }
.object .cover img { position:absolute; display:block; width:100%; }
.object .i-desc    { position:absolute; left:50%; top:50%; margin-left:-255px; margin-top:-149px; padding:35px 10px 60px 10px; width:480px; background:rgba(4,29,54,1); border:5px solid #fff; z-index:999 !important; }
.object .text      { width: 50%; }

.centralize        { position:absolute; left:50%; top:50%; -webkit-transform:translateZ(0px) translateX(-50%) translateY(-50%);
                     transform:translateX(-50%) translateY(-50%); }


/*About*/
.about                  { height:100%; }
.a-photo                { float:left; width:50%; height:100%; background:url(img/designer.jpg) center center; background-size:cover; }

/*Partners*/
.partners               { display:inline-block; position:relative; width:100%; height:100%; }
.partners:before        { content:''; position:absolute; right:0px; bottom:0px; width:1px; height:100%; background:#e5e5e5; }
.partners:after         { content:''; position:absolute; left:0px; bottom:0px; width:100%; height:1px; top:0px; background:#e5e5e5; }
.partners a             { float:left; position:relative; width:20%; height:25%; text-align:center; }
.partners a:before      { content:''; position:absolute; left:0px; bottom:0px; width:100%; height:100%; border-left:1px solid #e5e5e5; border-bottom:1px solid #e5e5e5; }

/*GBP Agency*/
.gbpagency              { position:fixed; height:28px; right:8%; bottom:0px; z-index:10; }

/*Object*/
.o-main                 { margin-right:380px; height:100%; }
.o-m-img-container      { position:relative; height:100%; overflow:hidden; }
.o-m-img-content        { position:absolute; top:0px; bottom:0px; width:100%; height:auto; }
.o-m-img                { float:left; width:100%; height:100%; background-position:center center !important; background-size:contain !important; background-repeat:no-repeat !important; }
.o-m-arrow              { position:absolute; top:0px; width:50%; height:100%; z-index:1; transition:0.3s; }
.o-m-arrow .arrow       { transition:0.3s; }
.o-m-back               { left:0px; text-align:left; }
.o-m-back .arrow        { -moz-transform:rotate(90deg); -ms-transform:rotate(90deg); -webkit-transform:rotate(90deg); -o-transform:rotate(90deg); transform:rotate(90deg); text-align:center; }
.o-m-next               { right:0px; text-align:right; }
.o-m-next .arrow        { -moz-transform:rotate(-90deg); -ms-transform:rotate(-90deg); -webkit-transform:rotate(-90deg); -o-transform:rotate(-90deg); transform:rotate(-90deg); text-align:center; }


.o-m-a-container                 { position:absolute; top:0px; width:70px; height:100%; background:#e5e5e5; text-align:center; }
.o-m-back .o-m-a-container       { left:0px; }
.o-m-next .o-m-a-container       { right:0px; }
.o-m-a-container .arrow          { display:inline-block; position:relative; width:56px; height:50px; border:none; }
.o-m-a-container .arrow i        { margin-top:28px; background:#041d36; height:0px; }
.o-m-a-container .arrow i:before { background:#041d36; left:-20px; width:25px; }
.o-m-a-container .arrow i:after  { background:#041d36; right:-20px; width:25px; }


.o-main-desc            { position:absolute; right:0px; top:0px; width:380px; height:100%; background:#041d36; font-size:14px; }
.back                   { position:absolute; right:40px; top:30px; font-size:11px; color:#fff; opacity:0.6; }
.arrow                  { display:inline-block; position:relative; width:56px; height:70px; border:2px solid #fff; }
.arrow i                { display:inline-block; position:relative; margin-top:20px; width:2px; height:30px; background:#fff; }
.arrow i:before         { content:''; position:absolute; bottom:3px; left:-11px; width:15px; height:2px; background:#fff; 
					      -moz-transform:rotate(45deg); -ms-transform:rotate(45deg); -webkit-transform:rotate(45deg); -o-transform:rotate(45deg); transform:rotate(45deg); }
.arrow i:after          { content:''; position:absolute; bottom:3px; right:-11px; width:15px; height:2px; background:#fff; 
   					      -moz-transform:rotate(-45deg); -ms-transform:rotate(-45deg); -webkit-transform:rotate(-45deg); -o-transform:rotate(-45deg); transform:rotate(-45deg); }
.o-gallery              { float:left; position:relative; width:100%; height:100%; overflow:hidden; }
.o-gallery:before       { content:''; position:absolute; top:0px; left:0px; width:100%; height:1px; background:#fff; z-index:1; }
.o-gallery-item         { float:left; position:relative; width:20%; height:33.33%; background-position:center center !important; background-size:cover !important; }
.o-gallery-item:before  { content:''; position:absolute; right:-1px; bottom:0px; width:100%; height:100%; border-right:1px solid #fff; border-bottom:1px solid #fff; z-index:1; }
.o-g-arrow:before       { content:''; position:absolute; bottom:0px; left:0px; width:100%; height:1px; background:#fff; }
.o-g-arrow:after        { content:''; position:absolute; top:0px; right:-1px; width:1px; height:100%; background:#fff; z-index:1; }
.o-g-back               { float:left; position:relative; width:20%; height:33.33%; background:#041d36; text-align:center; }
.o-g-next               { float:left; position:relative; width:20%; height:33.33%; background:#041d36; }
.o-g-back .arrow        { -moz-transform:rotate(90deg); -ms-transform:rotate(90deg); -webkit-transform:rotate(90deg); -o-transform:rotate(90deg); transform:rotate(90deg); }
.o-g-next .arrow        { -moz-transform:rotate(-90deg); -ms-transform:rotate(-90deg); -webkit-transform:rotate(-90deg); -o-transform:rotate(-90deg); transform:rotate(-90deg); }

.to-next-work .o-m-img  { margin-left:-5%; margin-top:-5%; width:18%; height:18%; -webkit-filter:blur(10px); -moz-filter:blur(10px); -o-filter:blur(10px); -ms-filter:blur(15px); filter:10px); }
.next-work              { display:inline-block; position:relative; width:400px; height:240px; background-color: rgba(4,29,54,0.94); border:2px solid #fff; z-index:1; text-align:center; z-index:10; }
.next-work:before       { position:absolute; left:-28px; top:-28px; width:100%; height:100%; border:28px solid #fff; }
.next-work .i-d-more    { position:relative; margin-top:0px; z-index:1; }



.swiper-container       { width:100%; height:100%; background:#e5e5e5; }
.swiper-slide           { text-align:center; font-size:18px; background:#fff; background-position:center center !important; background-size:cover !important;
                          display:-webkit-box; display:-ms-flexbox; display:-webkit-flex; display:flex; -webkit-box-pack:center; -ms-flex-pack:center;
                          -webkit-justify-content:center; justify-content:center; -webkit-box-align:center; -ms-flex-align:center; -webkit-align-items:center; align-items:center; }
.ihide                  { opacity:0; transition:0.3s; }
.ishow                  { opacity:1 !important; transition:0.3s; }
.to-next-work .swiper-slide  { -webkit-filter:blur(10px); -moz-filter:blur(10px); -o-filter:blur(10px); -ms-filter:blur(15px); filter:10px); }

/*Services*/
.services                 { height:100%; }
.s-tabs                   { float:left; width:50%; height:100%; }
.s-tabs a                 { float:left; position:relative; width:100%; height:50%; background:#fff; overflow:hidden; }
.s-tabs a:before          { content:''; position:absolute; left:0px; top:0px; width:100%; height:100%; background-size:cover !important; background-position:center center !important; transition:0.3s; }
.s-tabs a i               { display:inline-block; position:relative; font-size:34px; font-weight:300; font-style:normal; color:#fff; z-index:2; }
.s-tabs a i:before        { content:''; position:absolute; bottom:-10px; left:0px; width:100%; height:1px; background:#fff; opacity:0.3; }
.interior:before          { background:url(img/interior2.jpg); }
.building:before          { background:url(img/process.jpg); }
.s-tabs a.selected        { background:#587557 !important; }
.s-tabs a.selected:before { opacity:0 !important; }
.s-tabs a:hover::before   { opacity:0.8; }

/*Contacts*/
.contacts               { height:100%; }
#map                    { float:left; width:50%; height:100%; }
.oi-table               { float:left; width:50%; height:100%; background:#041d36; overflow:auto; }
.oi-t-item              { position:relative; margin-left:60px; margin-right:60px; font-size:0px; text-align:left; text-transform:none; }
.oi-t-item:before       { content:''; position:absolute; bottom:0px; left:0px; width:100%; height:1px; background:#fff; opacity:0.08; }
.oi-t-l-item            { display:block; position:relative; padding-top:20px; width:100%; font-size:14px; color:#fff; opacity:0.6; }
.oi-t-r-item            { display:block; position:relative; margin-top:10px; padding-bottom:20px; font-size:14px; line-height:22px; color:#fff; }
.oi-t-r-item a          { display:inline-block; margin-right:10px; color:#8bd086; text-decoration:underline; }
.oi-t-r-item a svg      { display:inline-block; vertical-align:top; opacity:0.2; }
.last-oi-t-item:before  { display:none !important; }
.addthis_toolbox        { margin-top:15px !important; }

@media screen and (max-width: 1440px) {
.o-main         { margin-right:360px;}
.o-main-desc    { width:360px; }
.oi-t-item      { margin-left:40px; margin-right:40px; }
.object .i-desc { margin-left:-195px; margin-top:-137px; padding:25px 10px 50px 10px; width:360px; }
.i-d-type       { font-size:40px; }
}

@media screen and (max-width: 1000px) {
.object .text   { width:90%;	}
}

@media screen and (max-width: 800px) {
.main                   { left:18px; top:60px; right:18px; bottom:28px; width:auto; }
.logo                   { left:18px; width:60px; height:60px; }
.logo i                 { left:23px; top:15px; }
.menu                   { width:58px; height:60px; }
.languages              { display:none; }
.header                 { height:60px; }
.object .i-desc         { margin-left:-135px; margin-top:-138px; width:240px; }
.opened-menu a          { display:block; padding:0px; margin:0px; margin-top:8%; margin-bottom:8%; font-size:27px; }
.opened-menu a:before   { display:none; }

.o-main                 { margin-right:0px; }
.o-m-arrow              { display:none; }
.swiper-slide           { background-size:contain !important; background-repeat:no-repeat !important; }

.o-main-desc            { display:none; }

.services               { overflow:auto; overflow-x:hidden; }
.s-tabs                 { width:100%; height:240px; }
.s-tabs a               { width:50%; height:100%; }
.s-tabs a i             { font-size:18px; }
.s-tabs a i:before      { display:none; }

.partners               { overflow:auto; overflow-x:hidden; }
.partners:before        { position:fixed; right:18px; bottom:18px; }
.partners a             { width:50%; height:90px; }
.partners a img         { max-width:60%; max-height:50px; }
.partners .flat         { display:none; }
.gbpagency              { right:18px; }

.about                  { overflow:auto; overflow-x:hidden; }
.a-photo                { width:100%; height:240px; }

.contacts               { overflow:auto; overflow-x:hidden; }
#map                    { width:100%; height:240px; }
.oi-table               { padding-top:20px; padding-bottom:20px; width:100%; height:auto; }
}
