@charset "utf-8";
/* CSS Document */

body { padding: 50px 0; font-size: 13px; font-family: "Galdeano"; font-style: normal; font-weight: 400; position: relative; border: 20px solid #2b76bc; }
h1, h2, h3, h4, div, p { font-family: "Galdeano"; font-weight: 400; font-style: normal; font-size: 20px; line-height: 20px; }
div.spacer { width:100%; padding-top:.5em; padding-bottom:.5em;}
h1 { font-size: 36px; line-height: 30px; }
h2 { font-size: 30px; line-height: 27px; }
h3 { font-size: 24px; line-height: 20px; }
ul { padding-left: 1.2em; }
ul {list-style-type: circle;}
p.centre {text-align: center;}
a.button { padding: 7px 18px; background-color: #2b76bc; color: #fff; text-decoration: none; transition: all .5s;}
a.button:hover { background-color: #5092ce; }
menu#menu { display: block; position: fixed; top: 0; left: 0; width: 100%; height: 74px; background-image: url(../images/desk-menu-blue.png); background-position: top left; background-size: 100% 74px; margin: 0; padding: 0; overflow: hidden; z-index: 10; }
menu#menu #mobilemenu { display: none; }
menu#menu #menuleft { position: absolute; top: 0; left: 0; width: 50%; float: left; padding-left: 5%; }
menu#menu #menuleft p { font-size: 28px; color: #FFFFFF; line-height: 66px; }
menu#menu #menuleft p a { color: #FFFFFF; }
menu#menu #menuright { position: absolute; top: 0; right: 0; width: 45%; float: right; }
menu#menu #menuright ul { list-style: none; padding: 0; margin: 0; }
menu#menu #menuright ul li { list-style: none; padding: 0; margin: 0; display: inline; color: #FFFFFF; }
menu#menu #menuright ul li a { color: #FFFFFF; padding: 8px 11px; height: 65px; line-height: 66px; -webkit-transition: all .7s; transition: all .5s; }
menu#menu #menuright ul li a:hover { background-color: #FFFFFF; color: #2b76bc; text-decoration: none; cursor: pointer; -webkit-transition: all .4s; transition: all .5s; }
#mobilemenulist { display: none; }
section#first { margin-bottom: 50px; }
section#second { }
section#third { margin: 50px 0; }
section#fourth { }
section#fifth { margin: 50px 0; }
.white-top { width: 100%; height: 54px; margin: 0; padding: 0; }
section .headsec { text-align: center; width: 100%; margin-bottom: 35px; }
section .photosec { margin-left: 25%; width: 50%; height: 14vw; position: relative; margin-top: 20px; margin-bottom: 20px; }
section .photosec .photobackline { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: url(../images/pic-dash.png); background-size: 100% 20%; background-repeat: no-repeat; background-position: center center; }
section .photosec .photophoto { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-size: 14vw 14vw; background-repeat: no-repeat; background-position: center center; }
section .textsec { width: 50%; margin-left: 25%; position: relative; }
section.blue { color: #FFFFFF; background-color: #2b76bc; }
section.blue .blue-top { position: relative; top: 0; left: 0; width: 100%; height: 74px; background-image: url(../images/blue-top.png); background-size: 100% 74px; }
section.blue .blue-bottom { position: relative; top: 0; left: 0; width: 100%; height: 74px; background-image: url(../images/blue-bottom.png); background-size: 100% 74px; }
table { width: 100%; }
section table caption { color: #000000; font-size: 24px; text-decoration: underline; }
section.blue table caption { color: #FFFFFF; }
table tr td p { margin: 5px; }
table tr th p { margin: 5px; }
table { background-color: #ffffff11; }
table tr th { background-color: #ffffff11; }

.wtable { width: 80%; margin-left: 10%; }
.etable { width: 80%; margin-left: 10%; margin-top: 20px; }
.stable { width: 80%; margin-left: 10%; }
.ctable { width: 80%; margin-left: 10%; }
#softsecond { margin-top: 20px; }
.worksec { }
#portfoliosec { width: 50%; margin-left: 25%; }
#porttabs { }
#porttabs .tablist { list-style: none; margin: 0; padding: 0; position: relative; top: 1px; }
#porttabs .tablist .tabs { list-style: none; margin: 0; padding: 6px 12px; display: block; border-left: 1px solid #FFFFFF; border-top: 1px solid #FFFFFF; border-bottom: 1px solid #FFFFFF; float: left; cursor: pointer; -webkit-transition: all .2s; transition: all .2s; }
#porttabs .tablist .tabs:last-child { border-right: 1px solid #FFFFFF; }
#porttabs .tablist .tabs:hover { background-color: #FFFFFF; color: #2b76bc; -webkit-transition: all .2s; transition: all .2s; }
#porttabs .tablist .tabs.selected { background-color: #FFFFFF; color: #2b76bc; cursor: default; }
#portsel1, #portsel2, #portsel3, #portsel4 { position: rel; top: 1%; left: 6%; width: 100%; height: 100%; -webkit-transition: all .2s; transition: all .2s; }
#portcontainer { position: relative; width: 100%; height: 35vw; border: 1px solid #FFFFFF; padding: 20px 29px 0px; overflow: hidden; }
.slidetitle { margin-top: 0px; margin-bottom: 5px; font-size: 21px; line-height: 22px;}
.slidetext { margin-top: 5px; margin-bottom: 0px; font-size: 16px; }
.slideimage { width: 100%; position: relative; }
.slideimage img { width: 100%; position: relative; }
.slidelink, .slidevid { position: absolute; z-index: 5; bottom: 5px; right: 5px; padding: 6px 12px; background-color: rgba(43,118,188,0.80); border: 1px solid #ffffff; font-size: 18px; cursor: pointer; box-shadow: rgba(17,48,77,0.70) 2px 2px 5px; -webkit-transition: all .2s; transition: all .2s; }
.slidelink:hover, .slidevid:hover { background-color: #2B76BC; box-shadow: rgba(17,48,77,1) 2px 2px 5px; -webkit-transition: all .2s; transition: all .2s; }
.slick-slider {
  margin-bottom: 50px;
}

@media (max-width:768px) {
#portfoliosec { width: 80%; margin-left: 10%; }
#portcontainer { height: 65vw; }
menu#menu #menuright { display: none; }
menu#menu #menuleft { width: 95%; }
menu#menu #mobilemenu { display: hide; position: absolute; top: 12px; right: 15px; width: 38px; height: 38px; background-image: url(../images/burger.png); background-size: 100% 100%; cursor: pointer; -webkit-transition: all .2s; transition: all .2s; }
menu#menu #mobilemenu:hover { background-image: url(../images/burger-x.png); background-color: #FFFFFF; -webkit-transition: all .2s; transition: all .2s; }
table tr td p { font-size: 16px; }
table tr th p { font-size: 20px; }
.slidetext { font-size: 16px; line-height: 16px; }
}

@media (max-width:480px) {
body { border: 10px solid #2b76bc; }
menu#menu #menuleft p { line-height: 30px; }
.white-top { height: 5px; }
h1, h2, h3, h4, div, p { font-size: 18px; font-weight: 400; line-height: 18px; }
section table caption { color: #000000; font-size: 18px; }
table tr th p { font-size: 16px; }
#portfoliosec { width: 100%; margin-left: 0%; }
#portcontainer { height: 90vw; }
.slidetext { font-size: 14px; line-height: 14px; }
section#first { }
section#second { }
section#third { margin: 20px 0; }
section#fourth { }
section#fifth { margin: 20px 0; }
menu#menu #menuleft p { font-size: 25px; }
h1 { font-size: 24px; line-height: 26px; }
h2 { font-size: 20px; line-height: 20px; }
section .photosec { margin-left: 5%; width: 90%; }
section .textsec { width: 94%; margin-left: 3%; }
table { table-layout: fixed; }
.stable { width: 90%; margin-left: 5%; table-layout: fixed; }
.ctable { width: 90%; margin-left: 5%; table-layout: fixed; }
.etable { width: 90%; margin-left: 5%; table-layout: fixed; }
.wtable { width: 90%; margin-left: 5%; table-layout: fixed; }
td p { white-space: normal; word-wrap: break-word; word-wrap: overflow-wrap; }
section .photosec .photophoto { background-size: 28vw 28vw; }
section .photosec { height: 28vw; }
}
