@charset "utf-8";
/* CSS Document */

@charset "utf-8";
/* CSS Document */

/* CSS Document - DIT Main (2015) */

/* Fonts
--------------------*/
@font-face {
  font-family: 'KlavikaBasic-Regular';
  src: url('fonts/KlavikaWebBasic_EOT/KlavikaWebBasicRegular.eot') format('embedded-opentype'), 
  	   url('fonts/KlavikaWebBasic_WOFF/KlavikaWebBasicRegular.woff') format('woff');
}
@font-face {
  font-family: 'KlavikaBasic-Medium';
  src: url('fonts/KlavikaWebBasic_EOT/KlavikaWebBasicMedium.eot') format('embedded-opentype'), 
  	   url('fonts/KlavikaWebBasic_WOFF/KlavikaWebBasicMedium.woff') format('woff');
}
@font-face {
  font-family: 'KlavikaBasic-Bold';
  src: url('fonts/KlavikaWebBasic_EOT/KlavikaWebBasicBold.eot') format('embedded-opentype'), 
  	   url('fonts/KlavikaWebBasic_WOFF/KlavikaWebBasicBold.woff') format('woff');
}



/* General & Fonts
--------------------*/
body { font-family: arial, sans-serif; font-size: 16px; line-height: 1.5em; }
a { color: #0066cc; text-decoration:none }
a:hover { color: #0066cc; text-decoration: underline }
a:active { text-decoration: none }

h1, h2, h3, h4 { font-family:"KlavikaBasic-Medium", arial, sans-serif; font-weight: normal; }
h1 { font-size: 39px; line-height: 47px; }
h1.page { margin-top: 0; }
h2, h1.page { font-size: 39px; line-height: 47px; color: #0095da; }
h3 { font-size: 29px; line-height: 39px; }
h4 { font-size: 24px; line-height: 33px;  }
h4 em { font-family:"KlavikaBasic-Regular", arial, sans-serif; font-weight: normal; }
#sidebar h4 { text-transform: uppercase; }
h5 { font-size: 16px; }

#logo, #primary, #quicklinks, .panel { font-family: "lucida grande", arial, sans-serif; }

.caption { font-family:"KlavikaBasic-Regular", arial, sans-serif; font-size: 24px; line-height: 35px; }
.intro { font-size: 21px; line-height: 31px; color: #666; }



/* Layout
--------------------*/
#cookies-warning { padding: 10px 0; background: #999; color: #fff; font-size: 14px; line-height: 19px; }
#cookies-warning p { margin: 0; }
#cookies-warning p.message { max-width: 500px; margin: 0 20px 0 140px; }
#cookies-warning a { color: #fff; text-decoration: underline }
#cookies-warning a:hover { text-decoration: none }
#cookies-warning a.action { background: #ccc; padding: 0 18px; text-transform: uppercase; color: #333; text-decoration: none; font-weight: normal; display: inline-block; font-size: 16px; line-height: 35px; }
#cookies-warning a.action:hover { background: #0095da; }

@media (max-width: 767px) {
#cookies-warning p.message { width: 80%; padding-left: 2%; margin: 0; font-size: 12px; line-height: 17px; }
#overview-links h4 { cursor: pointer  }
}


#header { background: #0095da; height: 150px; }
#header a { color: #fff; }

#logo { color: #fff; font-size: 20px; line-height: 1.5em;  background: url(http://dit.ie/media/dre/img/dit_logo_with_border.png) center left no-repeat;   letter-spacing: 0.5px; z-index: 888; position: relative }
#logo a { display: block; padding: 30px 0 30px 140px; }
#logo .irish { display: block; color: #e3e3e3; }

#quicklinks { font-size: 12px; z-index: 999;  }
#quicklinks ul { background:#6e7476 url(http://dit.ie/media/dre/img/quicklinks_bg.gif) bottom left no-repeat;  padding: 2px 10px 2px 20px;  }
#quicklinks a { margin-left: 20px; }

#search-form { margin-top: 35px; }
#search-form input.form-control { background: none; border-radius: 0; border-color: #79c7ec; color: #fff !important; }
#search-form .form-control[placeholder] { color: #79c7ec !important; } 
#search-form .form-control::-moz-placeholder { color: #79c7ec !important; }
#search-form .form-control:-moz-placeholder { /* Mozilla Firefox 4 to 18 */  color: #79c7ec; opacity:  1;}
#search-form .form-control:-ms-input-placeholder { /* Internet Explorer 10+ */ color: #79c7ec;}
#search-form .form-control::-webkit-input-placeholder { color: #79c7ec; }
#search-form button { border: none; background: none; color: #fff; font-size: 22px; margin-top: 3px; }

#primary { color: #fff; text-align: center; border-top: 1px solid #1780d5; font-size: 18px;
background: #016cc4; /* Old browsers */ background: -moz-linear-gradient(top,  #016cc4 0%, #005eab 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#016cc4), color-stop(100%,#005eab)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top,  #016cc4 0%,#005eab 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top,  #016cc4 0%,#005eab 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top,  #016cc4 0%,#005eab 100%); /* IE10+ */
background: linear-gradient(to bottom,  #016cc4 0%,#005eab 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#016cc4', endColorstr='#005eab',GradientType=0 ); /* IE6-9 */}

#primary ul.list-inline, #primary ul.list-inline li { margin: 0; padding: 0; }
#primary a { padding:15px 15px; display: block; color: #fff; outline: none }
#primary a:hover, #primary li.current a, #primary a.active { background-color: #015194; text-decoration: none; text-decoration: none }

.panel { display: none; background-color: #043e6f; padding: 20px 0; position: absolute; width: 100%; z-index: 999; border-radius: 0;  }
.panel li  { font-size: 14px; padding: 5px 0;}
.panel h5 { margin-bottom: 5px; }
.panel h5, .panel h5 a { color: #fff; }
.panel a { color: #d0eaff; }


ul.navlinks, .navlinks ul, .navlinks li { margin: 0; padding: 0; list-style-type: none }
.navlinks  {    border-bottom: 1px solid #eee; }
.navlinks a { border-left: 0px solid #fff; border-bottom: 1px solid #c4c4c4; color: #333; display: block; padding: 15px 10px 15px 30px; text-decoration: none; background: #fff; background-repeat: no-repeat !important; background-position: top left !important; }

/* Standard*/
.parent .level-1 li a, 
.level-1 .parent .level-2 a, 
.level-1 .parent .level-2 .parent li a, 
.level-1 .parent .level-2 .parent .level-3 li a, 
.level-1 .parent .level-2 .parent .level-3 .parent .level-4 li a, 
.level-1 .parent .level-2 .parent .level-3 .parent .level-4 .parent .level-5 li a  
{ background-color: #fff; border-left-color: #fff; border-bottom: 1px solid #c4c4c4; background-image: none; color: #333; }

/* Standard Hover*/
.navlinks a:hover, .level-1 a:hover,
.level-1 .parent .level-2 a:hover, 
.level-1 .parent .level-2 .parent li a:hover, 
.level-1 .parent .level-2 .parent .level-3 .parent li a:hover, 
.level-1 .parent .level-2 .parent .level-3 .parent .level-4 .parent li a:hover,
.level-1 .parent .level-2 .parent .level-3 .parent .level-4 .parent .level-5 .parent li a:hover 
{ background-color: #fff; border-left-color: #0063ce; background-image: url(../images/template/nav_border_left.gif); background-position: left top; background-repeat: repeat-y !important; color: #333; }

/* Parents */
.level-1 .parent a,
.level-1 .parent .level-2 .parent a,
.level-1 .parent .level-2 .parent .level-3 .parent a,
.level-1 .parent .level-2 .parent .level-3 .parent .level-4 .parent  a,
.level-1 .parent .level-2 .parent .level-3 .parent .level-4 .parent .level-5 .parent  a
{background-color: #ebecee; border-left-color: #ebecee; border-bottom: 1px solid #fff; background-image: url(../images/template/secondary_closed.png);  }

/* Level 5 Current */
.level-1 .parent .level-2 .parent .level-3 .parent .level-4 .parent .level-5 .current  a {
background-color: #fff; border-left-color: #0063ce;  background-image: none; color: #0063ce;
background-image: url(../images/template/nav_border_left.gif); background-position: left top; background-repeat: repeat-y !important;  }

/* Curent Parent's Parent Level 2 + 3 */
.level-1 .parent .level-2 .parent-current a,
.level-1 .parent .level-2 .parent .level-3 .parent-current a,
.level-1 .parent .level-2 .parent .level-3 .parent .level-4 .parent-current  a,
.level-1 .parent .level-2 .parent .level-3 .parent .level-4 .parent .level-5 .parent-current  a
{background-color: #c4c4c4; border-left-color: #c4c4c4;  border-bottom: 1px solid #c4c4c4; background-image: url(../images/template/secondary_open.gif); }

/* Parent Hover*/
.level-1 .parent a:hover, 
.parent .level-2 .parent a:hover, 
.level-1 .parent .level-2 .parent .level-3 .parent a:hover,
.level-1 .parent .level-2 .parent .level-3 .parent .level-4 .parent a:hover,
.level-1 .parent .level-2 .parent .level-3 .parent .level-4 .parent .level-5 .parent a:hover 
{background-color: #c4c4c4; color: #333;}



#banner { background-size: cover; background-position: center center; padding: 48px 0 38px; }
#banner .caption { background: #fff; background: rgba(255,255,255,0.9);  }
#banner .caption h2 { color: #0094dd; }

#breadcrumbs { padding-top: 12px; padding-bottom: 12px; font-weight: bold; color: #666; font-size: 14px;  }
#breadcrumbs a { color: #0095da; }

#content { background: #f7f7f7; }

#sidebar { font-size: 15px; }
#sidebar section { background: #fff; margin-bottom: 15px; }
#sidebar .alt1, #sidebar .alt1 a, #sidebar .alt2, #sidebar .alt2 a { color: #fff }
#sidebar .alt1 { background: #6e7476; }
#sidebar .alt2 { background: #989fa1; }
#sidebar .alt3 { background: #d0cfcb; color: #333; }
#sidebar h4 { margin-top: 0; }

#main .alt4, #main .alt4 .wrapper { background: #f27420; color: #fff; }
#main .alt4 a { color: #fff; text-decoration:underline } 
#main .alt4 a:hover { text-decoration:none } 
#main .alt5, #main .alt5 .wrapper { background: #0095da; color: #fff; }

#footer { background: #3d4143; padding: 20px 0; color: #f2f1ef; font-size: 13px; }
#footer a { color: #f2f1ef; }
#footer hr { color: #7f8084; border-color: #7f8084 }
#footer .link-list h4 { font-family: arial, sans-serif; font-size: 15px; font-weight: bold }
#footer .link-list li {  }

#siteinfo, #siteinfo a { color: #b7b7b7; padding-left:4px; padding-right:4px; }
#siteinfo, #siteinfo a:first-child {padding-left:0; }
#siteinfo a:hover { border-color: #b7b7b7 }




/* Ids & Classes
--------------------*/
a.img-link { border: 0; text-decoration: none }

.clearfix:before, .clearfix:after { content: "\0020"; display: block; height: 0; overflow: hidden; }  
.clearfix:after { clear: both; }  
.clearfix { zoom: 1; } 

span.divider { padding: 0 5px; font-weight: normal; }

.wrapper { padding:15px; } 
#main .wrapper { background-color: #fff; margin-bottom: 15px;   }

/* COMMENTED OUT BY TC
.text-wrapper { max-width: 600px; padding-left: 10px; }
*/
.text-wrapper { max-width: none !important; padding-left: 10px; }

ul.links { margin-top: 20px; }
ul.links li { margin-bottom: 10px }


ul.buttons li { max-width: 234px; background: -webkit-linear-gradient(#fc862b, #f37300); /* For Safari 5.1 to 6.0 */
  background: -o-linear-gradient(#fc862b, #f37300); /* For Opera 11.1 to 12.0 */
  background: -moz-linear-gradient(#fc862b, #f37300); /* For Firefox 3.6 to 15 */
  background: linear-gradient(#fc862b, #f37300); /* Standard syntax */ white-space: wrap !important; }
ul.links a.btn { background: url(../images/template/btn_arrow_bg.png) right center no-repeat; margin-bottom: 0; white-space: normal !important; }

.link.list-unstyled li {padding-bottom:12px;}

.link.list-unstyled li:first-child {padding-top:15px;}


article.box { margin-bottom: 15px; }
article.box header { position: relative }
article.box header h3 { position: absolute; top:15%; background-color: #f00; padding: 5px 10px; margin: 0; background:#fff; background: rgba(255,255,255,0.7); font-size: 24px; line-height: 33px; color: #333; }
article.box header img { min-width: 100%; }
article.box a:hover header img { opacity: 0.7; }
article.box .summary { background: #fff; padding: 15px; }

a.btn { background-color: #0095da; border-radius: 0; border: 0; box-shadow: -3px 3px 0px #a5e1fd; padding: 10px 15px; margin-bottom: 15px; color: #fff; }
.arrow {background: url(http://dit.ie/media/dre/img/arrow_white.png) center right no-repeat; width: 30px; display:inline-block}

a.btn-alt { background-color: #9d9b94; box-shadow: -3px 3px 0px #d2d1ce; }
a.btn-alt:hover { color: #ccc; }

.more a { background: url(http://dit.ie/media/dre/img/arrow.gif) center left no-repeat; padding-left: 30px; }

.summary ul { max-width: 600px; }

.equal-height { min-height: 100%; }

.wrap { background-color: #fff; }

header .wrapper { background-color: #fff; margin-bottom: 12px;  }
header.course-code .wrapper { background: #f27420 !important; padding-left: 0; padding-right: 0; text-align: center  }
header.course-code h1 { color: #fff; font-size: 2em; }

#course-header { margin-bottom: 15px; }
#course-header .name { background-color: #fff; }
#course-header .code { background-color: #f27420; text-align: center  }
#course-header .code h1 { color: #fff; font-size: 2em; }

header.course em { float: right; }

#text h3 { color: #0095da; }

.equal-column { overflow: hidden }
.equal-column section.last { min-height: 200px; }

table.table tr td, table.table tr th { border: 0; }
table.table th.first { background-color: #0060a9; color: #fff; }
table.table th.letter { color: #0060a9; font-size: 19px; padding-top: 20px; }
table.table th.letter hr { margin-bottom: 15px; margin-top: 0; color: #e6e6e6; border-color: #e6e6e6 }

.alphabet { margin-left: 2px; margin-bottom: 30px; }
.alphabet li { margin: 0 0 10px; padding: 0; }
.alphabet a { background-color: #636363; padding: 5px 8px; color: #fff; border-radius: 5px; font-weight: bold; text-decoration: none }
.alphabet span { padding: 5px 8px; }
.alphabet a:hover { opacity: 0.7 }

.social li { margin-bottom: 4px; line-height: 32px; font-size: 14px; }
.social a { color: #333; }
.social i { margin-right: 10px; font-size: 32px; position: relative; top: 4px; }
.social i.fa-twitter, #connect .twitter .fa-square  { color: #19a9e3;  }
.social i.fa-facebook-square, #connect .facebook .fa-square  { color: #3a599a; }
.social i.fa-youtube-play, #connect .youtube .fa-square  { color: #ce211b; }
.social i.fa-google-plus, #connect .google-plus .fa-square { color: #e04a32 }
.social i.fa-instagram, #connect .instagram .fa-square  { color: #19a9e3;  }
#footer .social-icons a { font-size: 1.2em }
#footer .social-icons a:hover { opacity: 0.7; }

#course-info p { margin-bottom: 25px; }

.btn-module { background:url(../images/template/button_bg_module.jpg) center right no-repeat; padding-right: 40px !important; box-shadow: none !important; font-weight: bold; text-align: left; width: 100%; max-width: 234px; }

.faq { margin-bottom: 0px; }
.faq .wrapper { margin-bottom: 4px !important; }
.faq h4 { margin: 0; }
.faq h4 a { color: #333; }
.faq .answer { padding-top: 30px; }

.related { background-color: #999 !important; }
.related h4 { text-transform: uppercase; margin: 0; }
.related h4, .related a { color: #fff; }
.related ul { border-top: 1px solid #b3b3b3; margin-bottom: 30px }
.related h4, .related li { padding: 12px 10px 12px 25px; }
.related li { border-bottom: 1px solid #b3b3b3;  }


.share.inline .addthis_toolbox { display: inline; }
.share a { float: none !important; display: inline-block; border: 0; background: #86cff3; width: 32px !important;
  height: 32px !important; color: #0095da; margin-left: 10px; text-align: center; }
.share .fa { font-size: 28px; line-height: 32px; }
.share .fa-facebook { font-size: 27px; }
.share a:first-child { margin-left: 0; }
.share.inline a:first-child { margin-left: 10px; }
.share a:hover { background: #fff; }


.social-icons.list-inline li { padding-right:9px; }

#pageHome #slider {max-height:410px;}
  
  
/* Responsive
--------------------*/
#header button.mobile-action { height: 80px; width: 70px; margin: 0; text-align: center; padding: 0; color: #333; border-radius: 0; font-size: 32px; border-left: 1px solid #cdcdcd; border-bottom: 0; color: #fff; }
.mobile-action  { display: block; float: left; text-decoration: none; line-height: 80px; text-transform: uppercase;  }

#mobile-actions { height: 80px; }
#mobile-actions li, #mobile-actions ul { margin: 0; padding: 0; }
#mobile-actions .logo img {  max-height: 70px; margin: 5px 0 0 5px }

#search-mobile { background-color: #999; margin-bottom: 15px; }
#search-mobile #keywords { background: none; border:none; color:#fff; font-size:3em; height:auto; line-height:1.5em; padding:0; width:100%; }
#search-mobile form { padding: 0px 0; margin: 0; }  
#search-mobile input[type="search"] { -webkit-appearance:textfield; box-sizing:content-box; }
#search-mobile button { float: left }
#search-mobile .form-group { margin: 0; padding: 0; }

/* Mobile */
@media (max-width: 767px) {
article.box .summary, #banner, #quicklinks, #overview-links ul, #primary, #breadcrumbs, .panel { display: none }
article.text-box .summary { display: block }
#content { padding-top: 12px; }

#header { padding: 0; height: 80px; }
article.box img { min-width: 100%; }
#logo { background-size: contain; padding: 10px 0 10px 70px; margin-top: 10px; font-size: 11px;   }
#logo .text { visibility: hidden; }
}

/* Tablet Upwards */
@media (min-width: 768px) {
#logo { margin-top: -15px; font-size: 18px; }
#primary { font-size: 16px; }
#primary a { padding:15px 15px; }
#footer .link-list { width: 33%; }
#banner { padding: 28px 0 18px; }
#siteinfo .eu-logo img { float: right; margin-top: -20px;}
}

/* Tablet Downwards */
@media (max-width: 767px) {
/*#sidebar { display: none }*/
}

/* Desktop Upwards */
@media (min-width: 960px) {
#primary a { padding:15px 25px; }
#footer .link-list { width: 20%; }
#banner { padding: 38px 0 28px; }
#search-form input { min-width: 210px; }
}

/* Large Desktop Downwards */
@media (max-width: 1247px) {
.options a.btn, .options .filter { min-width: 100%; max-width: 100%; }
.arrow { display: none }
}
	
/* Large Desktop Upwards */
@media (min-width: 1248px) {
#primary a { padding:auto 40px; }
#banner { padding: 48px 0 38px; }
.options a.btn, .options .filter { min-width: 90%; max-width: 90%; }
}

/*rc: changes */

div.row div.box.col-xs-12 div.wrapper div.text-wrapper h1 {
 	color:#333; 
}

/* rc: fix hero stretching */
#banner {
  	background-size: cover;
}

/* rc: style google custom search */

form.gsc-search-box {
 	margin-top:35px !important; 
}

form.gsc-search-box table.gsc-search-box td.gsc-input input#gsc-i-id1 {
	background:rgba(0,0,0,0) !important;
  	color:#fff !important;
  	border-color:#79c7ec !important;
  	width:210px !important;
  	height:34px !important;
  	font-size:14px !important;
  	padding:6px 12px !important;
  	float:right !important;
}

form.gsc-search-box table.gsc-search-box td.gsc-search-button input.gsc-search-button {
	background:url("http://dit.ie/media/dre/img/searchbtn.PNG") no-repeat !important;
  	border:none !important;
  	width:24px !important;
  	height:24px !important;
  	text-indent:-9999px !important;
}

form.gsc-search-box table.gsc-search-box td.gsc-input input#gsc-i-id1:focus {
	box-shadow:0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(102, 175, 233, 0.6);
}

td.gsc-clear-button {
 	display:none !important; 
}

td.gsc-search-button i.fa.fa-search {
 	color:#fff !important;
  	font-size:22px !important;
}

.gsc-search-button > button {
 	background:transparent !important;
  	border:none !important;
}

div#search-mobile form.gsc-search-box table.gsc-search-box td.gsc-input input#gsc-i-id2 {
	background: transparent none repeat scroll 0 0 !important;
	border: medium none !important;
	color: #fff !important;
	height: 60px !important;
	outline: medium none !important;
	padding: 6px 12px !important;
  	font-size:3em !important;
}

#search-mobile form.gsc-search-box {
 	margin-top:0 !important; 
}

#search-mobile td.gsc-search-button {
 	display:none !important; 
}


table.gsc-above-wrapper-area-container tbody tr td.gsc-orderby-container div.gsc-orderby div.gsc-option-menu-container.gsc-inline-block div.gsc-selected-option-container.gsc-inline-block {
 	width:90% !important; 
}