/*!
Launched:2015-12-??

Authors:
Nevin McElwrath and Erik Runyon
Marketing Communications:Web

CONTENTS
-----------------------------------------
1. Common Styles
2. Screen Styles
3. Media Queries
4. Themes
5. Print Styles

BRANDING
-----------------------------------------
1. COLORS
	 - Blue (Headings):#002b5b
	 - Blue (Links):#004da3
	 - Gold:#dcb439

2. FONT STACKS
	 - Headings:GPC, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif
	 - Body:font-family:Lora, "Times New Roman", Times, serif
*/

@import url(//fonts.googleapis.com/css?family=Lora);

/*************************************************************************************
 * 1. Common Styles
 ************************************************************************************/
*, *:before, *:after {-moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box;}
@-ms-viewport {width:device-width; zoom:1;}
@-o-viewport {width:device-width; zoom:1;}
@viewport {width:device-width; zoom:1;}

html {width:100%; margin:0; padding:0; font-size:100%; overflow-y:scroll;
	-webkit-text-size-adjust:100%;
	-ms-text-size-adjust:100%;
	text-size-adjust:100%;
	-webkit-font-smoothing:antialiased;
	-moz-font-smoothing:antialiased;
	font-smoothing:antialiased;
}
body {width:100%; margin:0; padding:0; color:#383838; font:1em/1.5em Lora, "Times New Roman", Times, serif;}
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, summary {display:block;}
audio, canvas, video {max-width:100%; width:100%; display:inline-block; *display:inline; *zoom:1;}
audio:not([controls]) {display:none;}
[hidden] {display:none;}
p {margin:0 0 1em; font-size:1.15em; line-height:1.7em;}
a {color:#235b9d; outline:none; -webkit-tap-highlight-color:rgba(0,0,0,0);
	-webkit-transition:all 125ms ease;
		 -moz-transition:all 125ms ease;
			 -o-transition:all 125ms ease;
					transition:all 125ms ease;
}
a:visited {color:#1c3553; text-decoration:none; }
a:hover {color:#1c3553;}
a:active {color:#235b9d;}
a:focus {outline:thin dotted;}
a.tapped {background-color:rgba(220,179,57,0.5);}
::-moz-selection,
::selection {background:#0058cf; color:#fff; text-shadow:none;}
strong, b {font-weight:bold;}
em, i {font-style:italic;}
h1,h2,h3,h4,h5,h6 {margin:1.4em 0 0.25em; line-height:1.2em; color:#7a3628; font-weight:300; text-rendering:optimizeLegibility; font-family:GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;}
h1 a,h2 a,h3 a,h4 a,h5 a,h6 a {text-decoration:none;}
h1 a:visited,h2 a:visited,h3 a:visited,h4 a:visited,h5 a:visited,h6 a:visited {color:#004da3;}
h1 a:hover,h2 a:hover,h3 a:hover,h4 a:hover,h5 a:hover,h6 a:hover {text-decoration:underline;}
h1 {margin-top:0; font-size:2em;}
h2 {margin:0; font-size:2.4em; }
h3 {font-size:1.563em;}
h4 {font-size:1.375em;}
h5 {font-size:1.188em;}
h6 {font-size:1em;}
h1 + h2,
h2 + h3,
h3 + h4,
h4 + h5 {margin-top:0;}
ol, ul {margin:1em 0; padding:0 0 0 2em;}
li {margin:0 0 0.25em;}
nav ul {margin:0; padding:0; list-style:none;}
nav li {margin:0; padding:0;}
nav a {text-decoration:none;}
iframe, embed {width:100%;}
sup {vertical-align:super; font-size:smaller;}
sub {vertical-align:sub; font-size:smaller;}
pre, code, kbd, samp {font-family:monospace, sans-serif;}
hr {clear:both; width:100%; margin:1em 0; border:1px solid #dadada; border-width:1px 0 0;}

/* Quotes
----------------------------------------------------*/
blockquote {margin:1em 0; padding:0; font-size:1.3em; line-height:1em; text-align:left; font-family:GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; font-style:italic;}
blockquote cite { text-align:right; }
blockquote p {color:#1a324e;line-height:1.5em;}
blockquote.pull {font-style:normal;}
blockquote.pull p:before {margin:0 auto 0.75em; content:""; display:block; width:50%; height:3px; background:#b18d03; text-align:center;}
blockquote cite {margin-top:1em; display:block; font-size:0.75em; line-height:1.4em; font-style:normal; color:#656565}
blockquote cite:before {content:"– "}

/* Images
----------------------------------------------------*/
figure {margin:0;}
figcaption {margin:1em 0 0; font-size:0.9em; text-align:left; width:90%; font-style:italic; color:#656565; line-height:1.4em; font-family:GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; }
figcaption a { color:#932e18; }
figcaption a:hover { color:#711e0e; }
figcaption a:visited { color:#713e33; }
img {max-width:100%; width:auto; height:auto; border:none; vertical-align:bottom; -ms-interpolation-mode:bicubic;
	-webkit-box-sizing:content-box;
		 -moz-box-sizing:content-box;
					box-sizing:content-box;
	-webkit-transition:all 125ms ease;
		 -moz-transition:all 125ms ease;
			 -o-transition:all 125ms ease;
					transition:all 125ms ease;
}

/* General Classes
----------------------------------------------------*/
.noborder {border:none !important;}
a[href$=".pdf"] {padding:1px 0 0 20px; background:url(/images/icons/pdf.gif) left center no-repeat;}
.ndmark {display:block; width:200px; max-width:100%; text-decoration:none;}
.hr {margin:2em 0; text-align:center;}
.cf:before, .cf:after {content:"\0020"; display:block; height:0; overflow:hidden;}
.cf:after {clear:both;}
.cf {zoom:1;}

.skip-links {border:0; clip:rect(0 0 0 0); height:1px; margin:-1px; overflow:hidden; padding:0; position:absolute; width:1px;}
.skip-links:active, .skip-links:focus {clip:auto; height:auto; margin:0; overflow:visible; position:static; width:auto;}

/* Fonts
	 https://dev.conductor.nd.edu/fonts/
----------------------------------------------------*/
@font-face {font-family:GP; font-weight:200; font-style:normal;
	src:url('//static.nd.edu/fonts/gp-min/gp-light.woff') format('woff'),
			url('//static.nd.edu/fonts/gp-min/gp-light.ttf') format('truetype');
}
@font-face {font-family:GP; font-weight:400; font-style:normal;
	src:url('//static.nd.edu/fonts/gp-min/gp-book.woff') format('woff'),
			url('//static.nd.edu/fonts/gp-min/gp-book.ttf') format('truetype');
}
@font-face {font-family:GP; font-weight:400; font-style:italic;
	src:url('//static.nd.edu/fonts/gp-min/gp-book-italic.woff') format('woff'),
			url('//static.nd.edu/fonts/gp-min/gp-book-italic.ttf') format('truetype');
}

/*************************************************************************************
 * 2. Screen Styles
 ************************************************************************************/
@media screen,projection {
	blockquote {padding:1em;}
	body {background:#eee;}
	figure {margin:2em auto;}
		figure img {margin:0 auto;}
	.wrapper {height:100%;}
	.row {width:100%; margin:0 auto; *zoom:1;}
	.row:before, .row:after {content:" "; display:table;}
	.row:after {clear:both;}

	/* Header
	----------------------------------------------------*/
	.site-header { position:relative; z-index:1; margin:0; height:300px; background:url('images/photo-grotto2-700.jpg') center 10% no-repeat; background-size:cover; }
	.brandbar,
	.titlebar {overflow:hidden;}
		.brandbar li {margin:0 -0.9375em; padding:0;}
		.brandbar a {display:block;	margin:0 auto; text-decoration:none; height:50px; text-indent:-9999px; overflow:hidden; background-repeat:no-repeat;}
		.dept-nd img {display:none;}
			.dept-nd a {background-position:left 0;}
			.dept a {background-position:right 0;}
	.titlebar {position:relative; z-index:9999;}
		.site-title {padding:0.2em 0.45em; display:inline-block; color:#1a324e; font-weight:200; background:#eee;}
		.site-subtitle {color:#777; display:block; }

	/* Content
	----------------------------------------------------*/
	.site-content { position:relative; padding:2em 0 0; top:-4em; }
	.section { position:relative; padding:1em; }

	/* Dividers */
	.divider {position:relative; height:300px; margin:2em 0; background-position:center center; background-size:cover; background-repeat:no-repeat; box-shadow:inset 0px 0px 95px rgba(0,0,0,0.5);}
		.d1 {background-image:url('images/photo-fall-700.jpg');}
		.d2 {background-image:url('images/photo-dome-700.jpg');}
		.caption { display:block; position:absolute; top:0; right:0; background-color:rgba(0, 0, 0, 0.75); color:rgba(255, 255, 255, 0.9); font-size:0.8em; font-family:"Helvetica Neue", Helvetica, Verdana, Arial, sans-serif; padding:0.3em 1em; margin:0; text-align:right; width:100%; }
		.site-header .caption { top:50px; }

	.image-right { margin:0 0 1.2em 1.2em; clear:right; }
	.image-left img,
	.image-right img { box-shadow:-8px 8px 0 rgba(148, 148, 148, 0.4); }
	.captioned { font-style:italic; font-size:0.8em; color:#656565; line-height:1.2em; }
	.captioned img { margin-bottom:1.3em; }
	.image-right.captioned { text-align:right; }
	.image-left.captioned { text-align:left; }

	.gallery { position:relative; display:block; }
	.gallery .count { width:2.4em; height:2.4em; line-height:2.4; display:block; position:absolute; background-color:green; color:white; text-align:center; padding:0; font-size:0.8em; border-radius:3em; font-family:"Helvetica Neue", Helvetica, Verdana, Arial, sans-serif; top:-1.2em; right:-1.2em; vertical-align:middle; /* border:2px solid #eee; */ box-shadow:0 0 0 4px #eee; transition:all 125ms ease; }
	.gallery:hover { cursor:pointer; }
	.gallery:hover .count { background-color:#156721; font-size:1em; }

	/*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */
	.fancybox-wrap,
	.fancybox-skin,
	.fancybox-outer,
	.fancybox-inner,
	.fancybox-image,
	.fancybox-wrap iframe,
	.fancybox-wrap object,
	.fancybox-nav,
	.fancybox-nav span,
	.fancybox-tmp { padding:0; margin:0; border:0; outline:none; vertical-align:top; }
	.fancybox-wrap { position:absolute; top:0; left:0; z-index:8020; }
	.fancybox-skin { position:relative; background:#f9f9f9; color:#444; text-shadow:none; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; }
	.fancybox-opened { z-index:8030; }
	.fancybox-opened .fancybox-skin { -webkit-box-shadow:0 10px 25px rgba(0, 0, 0, 0.5); -moz-box-shadow:0 10px 25px rgba(0, 0, 0, 0.5); box-shadow:0 10px 25px rgba(0, 0, 0, 0.5); }
	.fancybox-outer, .fancybox-inner { position:relative; }
	.fancybox-inner { overflow:hidden; }
	.fancybox-type-iframe .fancybox-inner { -webkit-overflow-scrolling:touch; }
	.fancybox-error { color:#444; font:14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif; margin:0; padding:15px; white-space:nowrap; }
	.fancybox-image, .fancybox-iframe { display:block; width:100%; height:100%; }
	.fancybox-image { max-width:100%; max-height:100%; }
	#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span { background-image:url('images/fancybox_sprite.png'); }
	#fancybox-loading { position:fixed; top:50%; left:50%; margin-top:-22px; margin-left:-22px; background-position:0 -108px; opacity:0.8; cursor:pointer; z-index:8060; }
	#fancybox-loading div { width:44px; height:44px; background:url('images/fancybox_loading.gif') center center no-repeat; }
	.fancybox-close { position:absolute; top:-18px; right:-18px; width:36px; height:36px; cursor:pointer; z-index:8040; }
	.fancybox-nav { position:absolute; top:0; width:40%; height:100%; cursor:pointer; text-decoration:none; background:transparent url('blank.gif'); /* helps IE */-webkit-tap-highlight-color:rgba(0,0,0,0); z-index:8040; }
	.fancybox-prev { left:0; }
	.fancybox-next { right:0; }
	.fancybox-nav span { position:absolute; top:50%; width:36px; height:34px; margin-top:-18px; cursor:pointer; z-index:8040; visibility:hidden; }
	.fancybox-prev span { left:10px; background-position:0 -36px; }
	.fancybox-next span { right:10px; background-position:0 -72px; }
	.fancybox-nav:hover span { visibility:visible; }
	.fancybox-tmp { position:absolute; top:-99999px; left:-99999px; visibility:hidden; max-width:99999px; max-height:99999px; overflow:visible !important; }
	/* Overlay helper */
	.fancybox-lock { overflow:hidden !important; width:auto; }
	.fancybox-lock body { overflow:hidden !important; }
	.fancybox-lock-test { overflow-y:hidden !important; }
	.fancybox-overlay { position:absolute; top:0; left:0; overflow:hidden; display:none; z-index:8010; background:url('images/fancybox_overlay.png'); }
	.fancybox-overlay-fixed { position:fixed; bottom:0; right:0; }
	.fancybox-lock .fancybox-overlay { overflow:auto; overflow-y:scroll; }
	/* Title helper */
	.fancybox-title { visibility:hidden; font:normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif; position:relative; text-shadow:none; z-index:8050; }
	.fancybox-opened .fancybox-title { visibility:visible; }
	.fancybox-title-float-wrap { position:absolute; bottom:0; right:50%; margin-bottom:-35px; z-index:8050; text-align:center; }
	.fancybox-title-float-wrap .child { display:inline-block; margin-right:-100%; padding:2px 20px; background:transparent; /* Fallback for web browsers that doesn't support RGBa */ background:rgba(0, 0, 0, 0.8); -webkit-border-radius:15px; -moz-border-radius:15px; border-radius:15px; text-shadow:0 1px 2px #222; color:#FFF; font-weight:bold; line-height:24px; white-space:nowrap; }
	.fancybox-title-outside-wrap { position:relative; margin-top:10px; color:#fff; }
	.fancybox-title-inside-wrap { padding-top:10px; }
	.fancybox-title-over-wrap { position:absolute; bottom:0; left:0; color:#fff; padding:10px; background:#000; background:rgba(0, 0, 0, .8); }

	.video { background: url(images/overlay-play.png) no-repeat; background-position: 10% 80%; background-size: 20%; z-index: 1; display: block; }
	.video img { z-index: -1; position: relative; }

	.section.byline { margin:1em 0; font-family: "Helvetica Neue", Helvetica, Verdana, Arial, sans-serif; border-top: 1px solid #ccc; padding-top: 1.5em; }
	.byline ul { margin:0; padding:0; list-style:none; }
	.byline li { margin:0 0 0.3em; }
	.byline strong { font-weight: 500; text-transform: uppercase; letter-spacing: 0.05em; }

	/* Footer
	----------------------------------------------------*/
	.site-footer {position:relative; clear:both; overflow:hidden; margin:0 auto; padding:1em 0; color:#656565; text-align:center; font-family:"Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; background:#ddd; border-top:1px solid #ccc;}
		.footer-inner {position:relative; margin:0 auto; padding:1em 0;}
		.site-footer p {margin:0; font-size:0.875em;}
	.site-info {margin:1em 0;}
	.site-info li {display:inline-block; *display:inline; *zoom:1; margin:0 2%;}
	.site-footer a {color:#002b5c; text-decoration:underline;}
	.geo,
	.country-name {border:0; clip:rect(0 0 0 0); height:1px; margin:-1px; overflow:hidden; padding:0; position:absolute; width:1px;}
	.address {display:block; margin:0;}
	.site-link,
	.org,
	.tel {display:block;}
	.ndmark {width:200px; height:70px; margin:2em auto;}

}

/*************************************************************************************
 * 3. Media Queries
 ************************************************************************************/

/* 580px
----------------------------------------------------*/
@media only screen and (min-width:36.25em) {
	blockquote.pull {font-size:1.3em;}
	blockquote {font-size:1em;}

	.caption { /* top:0; right:1em; */ width:auto; }
}

/* 700px
----------------------------------------------------*/
@media only screen and (min-width:43.75em) {
	html {background-attachment:fixed;}

	h2 {font-size:2.3em;}
	h3 {font-size:1.75em;}
	h4 {font-size:1.5em;}
	h5 {font-size:1.25em;}
	h6 {font-size:1.125em;}

	.bq-wide { margin-left:-1em; margin-right:-1em; }
	.image-right { float:right; width:40%; }
	.image-left { float:left; width:40%; }

	.row {max-width:90vw;}
	.brandbar li {margin:0 auto;}

	.site-title {font-size:2.5em;}
	.site-subtitle {font-size:0.8em;}

	/* Header
	----------------------------------------------------*/
	.site-header {text-align:left; height:450px; box-shadow:inset 0px 0px 95px rgba(0,0,0,0.5); background-image:url('images/photo-grotto2-1200.jpg');}
	.brandbar {padding:0;}
		.brandbar li {float:left;}

	/* Content
	----------------------------------------------------*/
	.divider {height:400px;}
		.d1 {background-image:url('images/photo-fall-1200.jpg');}
		.d2 {background-image:url('images/photo-dome-1200.jpg');}

	.image-right,
	.image-left { max-width:40%; }
	.programs { max-width:20%; }

	/* Footer
	----------------------------------------------------*/
	.site-footer {text-align:left;}
		.footer-inner {padding:1em 0 2em;}
		.ndmark {position:absolute; right:0; top:1.4em; margin:0;}
		.site-link {display:block;}
		.org {display:inline;}
}

/* 1000px
----------------------------------------------------*/
@media only screen and (min-width:62.5em) {
	blockquote {padding:0;}
		blockquote.pull {text-align:center; font-size:1.1em}
	.brandbar {padding:0;}
	.site-header { height:600px; }
	.site-title {margin-bottom:0.5em; font-size:3.5em;}
		.site-title div {font-size:0.9em;}
		.site-subtitle {font-size:0.7em;}

	/* Content
	----------------------------------------------------*/
	.section {width:70vw; padding:0;}
	.pull {float:right; width:20vw; margin-right:-20vw; padding:0 0 0 2em;}

	.image-right { margin:0 -10% 1.2em 2.2em; }

	/* Footer
	----------------------------------------------------*/
	.contact-info {margin:0;}
	.site-link,
	.address,
	.site-link,
	.tel,
	.email {float:left; margin:0 1em 0 0;}
	.site-link {margin-right:0.5em;}
	.phone {clear:left;}

	/* IE8 Over-rides */
	.lt-ie8 .header-util nav li {float:right;}
	.lt-ie8 .search-form {width:300px;}
	.lt-ie8 .search-input {float:left;}
}

/* 1200px
----------------------------------------------------*/
@media only screen and (min-width:75em) {
	blockquote {font-size:1.1em;}
	.row {max-width:80vw;}
	.section {width:60vw; padding:0;}
	.pull {float:right; width:20vw; margin-right:-20vw;}

	.site-header {background-attachment:fixed; background-image:url('images/photo-grotto2-1600.jpg'); background-position: center 30%; }
	.divider {height:600px; background-attachment:fixed;}
		.d1 {background-image:url('images/photo-fall-1600.jpg');}
		.d2 {background-image:url('images/photo-dome-1600.jpg');}
}

/* 1400px
----------------------------------------------------*/
@media only screen and (min-width:87.5em) {
	blockquote.pull {font-size:1.2em;}
	.divider {height:700px;}
}

/* 1600px
----------------------------------------------------*/
@media only screen and (min-width:100em) {
	.site-header { height: 800px; }
	.divider {height:800px;}
}

/* 2000px
----------------------------------------------------*/
@media only screen and (min-width:125em) {
	.site-header {background-image:url('images/photo-grotto2-2000.jpg'); }
	.d1 {background-image:url('images/photo-fall-2000.jpg');}
	.d2 {background-image:url('images/photo-dome-2000.jpg');}
}

/* Vertical fix to avoid face cropping
----------------------------------------------------*/
@media only screen and (min-height: 70em) and (min-width: 75em) {
	.site-header { background-attachment: scroll; background-size: cover; background-position: center 30%; height: 800px; }
}

/* Hi-res
----------------------------------------------------*/
@media
	(-webkit-min-device-pixel-ratio:1.5),
	only screen and (min--moz-device-pixel-ratio:1.5),
	(min-resolution:144dppx){

		.dept-nd a,
		.dept a {background-size:auto 50px;}

		.video { background: url(images/overlay-play@2x.png) no-repeat; background-position: 10% 80%; background-size: 20%; }

	 /* Fancybox */
	 #fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span { background-image:url('images/fancybox_sprite@2x.png'); background-size:44px 152px;}
	 #fancybox-loading div { background-image:url('images/fancybox_loading@2x.gif'); background-size:24px 24px;}
}

/*************************************************************************************
 * 4. Themes
 ************************************************************************************/
@media screen, projection {

	/* Brand Bar
	----------------------------------------------------*/
	.dept-nd a {width:301px; background-image:url(//static.nd.edu/images/brandbar/dept-nd-white.png);}
	.brandbar.theme-bb-blue {background:#002b5c; border-bottom:1px solid #001123;}
}

/* Hi-res
----------------------------------------------------*/
@media
	(-webkit-min-device-pixel-ratio:1.5),
	only screen and (min--moz-device-pixel-ratio:1.5),
	(min-resolution:144dppx){
		.dept-nd a {background-image:url(//static.nd.edu/images/brandbar/dept-nd-white@2x.png);}

}


/*************************************************************************************
 * 5. Print Styles
 ************************************************************************************/
@media print {

	@page {margin:0.5cm;}
	body {font-family:Georgia, "Times New Roman", Times, serif; color:#000;}
	figure {margin:2em 0;}
	img, tr {page-break-inside:avoid;}
	p, h2, h3 {orphans:3; widows:3;}
	h2, h3 {page-break-after:avoid;}

	/* Styles
	----------------------------------------------------*/
	a[href^="javascript:"]:after,
	a[href^="#"]:after {content:"";}
	.ndmark {width:150px;}
	.image-right img {float:right; margin:0 0 1em 2em;}
	.image-left img {float:left; margin:0 2em 1em 0;}

	/* HIDDEN
	----------------------------------------------------*/
	.breadcrumbs,
	.header-util,
	.skip-links,
	.nav-mobile,
	.nav-site,
	.nav-skip {display:none;}

	/* STRUCTURE
	----------------------------------------------------*/
	.site-header {overflow:hidden; position:relative; margin:0 0 20px; padding:0 0 20px; border-bottom:1px solid gray;}
		.brandbar {font-size:12px; text-transform:uppercase; font-family:"Adobe Garamond", Garamond, Baskerville, "Baskerville Old Face", "Hoefler Text", "Times New Roman", serif;}
			.brandbar i {text-transform:none;}
		.site-title,
		.subline {margin:0; font-family:GPC, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;}
		.site-header a,
		.site-title a,
		.subline a {color:#000;}
		.site-title {margin:4px 0 2px; font-size:2em; }
		.subline {font-size:1em;}

	.site-content a:link:after {content:" [link:" attr(href) "] "; font-size:11px; font-family:inherit;}
	.site-content abbr:after {content:" (" attr(title) ")";}

	.site-footer {position:relative; clear:both; margin:20px 0 0; padding:20px 0 0; border-top:1px solid gray;}
		.site-footer p {margin:0;}
		.geo,
		.country-name {display:none;}
		.tel {display:block;}
		.site-footer .ndmark {position:absolute; top:20px; right:0;}
}
