/*!
Launched:2022-07-18
Authors:Taylor Packet, Erik Runyon
Marketing Communications:Web

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

BRANDING
-----------------------------------------
1. COLORS
 - Blue: #0c2340
 - Gold: #ae9142

2. FONT STACKS
 - Headings: GPC, "Arial Narrow", "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif
 - Body/Default: Sumana, Georgia, "Times New Roman", Times, serif
 - Captions/Secondary: "Libre Franklin", "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif
*/



/*************************************************************************************
* 1. Common Styles
************************************************************************************/

 :root {
	--brand-blue:#0c2340;
	--brand-gold:#ae9142;
	--link-blue:#0c2340;
	--link-focus:#15a6b5;

	--font-default:"Libre Franklin","Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;
	--font-secondary:"Libre Franklin","Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;
	--font-heading:Factoria, "Arial Narrow", "Libre Franklin", "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;

	--gray:#555;
	--gray-dark:#333;
	--gray-light:#d2d2d2;
	--gray-extra-light:#e2e2e2;

	--sky-blue:#e1e8f2;
	--sky-blue-light:#edf2f9;
	--sky-blue-dark:#c1cddd;

	--grid-gap:1.5rem;
	--anim-duration:325ms;
	--anim-duration-fast:125ms;
	--anim-duration-slow:500ms;
	--anim-ease:ease-in-out;

	--offset:-8vw;
}
 *, *:before, *:after { 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; overflow-x:hidden; -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 { margin:0; color:#383838; font:1em/1.5em var(--font-default); }
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary { display:block; }
audio, canvas, progress, video { display:inline-block; vertical-align:baseline; max-width:100%; }
audio:not([controls]) { display:none; height:0; }
[hidden] { display:none; }
[tabindex="-1"]:focus { outline:none !important; }
p { margin:0 0 1.25em; font-size:1.15em; line-height:1.8; }
a { color:var(--brand-blue-bright); overflow-wrap:break-word; -webkit-text-decoration-skip:ink; text-decoration-skip:ink; text-decoration-skip-ink:auto; background-color:transparent; -webkit-tap-highlight-color:rgba(0,0,0,0); }
a:visited { color:var(--brand-blue); }
a:hover { color:var(--brand-blue-bright); }
a:active { color:var(--brand-gold); }
a:focus { outline:thin dotted; }
strong, b { font-weight:bolder; }
em, i { font-style:italic; }
small { font-size:80%; }
iframe, embed { width:100%; }
sub,sup { position:relative; vertical-align:baseline; line-height:0; font-size:smaller; }
sup { vertical-align:super; font-size:65%; }
sub { vertical-align:sub; }
pre, code, kbd, samp { overflow:auto; font-family:monospace, sans-serif; }
hr { clear:both; margin:3rem 5%; max-width:calc(65rem - 10%); border:1px solid var(--gray-light); }
a, area, button, [role="button"], input:not([type="range"]), label, select, summary, textarea { touch-action:manipulation; }

/* Headings
---------------------------------------------------*/
h1,h2,h3,h4,h5,h6 { margin:1.4em 0 0.25em; line-height:1.1; color:var(--brand-blue); font-weight:700; text-rendering:optimizeLegibility; font-family:var(--font-heading); }
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:var(--brand-blue); }
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:1.65em; }
h2 { margin:2rem 0 0.75em; font-size:2.75em; text-transform:uppercase; }
h2:after { content:''; display:block; width:50px; height:4px; margin:0.5rem 0 0; background:var(--brand-gold); }
h3 { margin-top:0; font-size:1.563em; }
h4 { font-size:1.375em; }
h5 { font-size:1.188em; }
h6 { font-size:1em; }

/* Lists
----------------------------------------------------*/
ol, ul, dl { margin:1rem 0; padding:0 0 0 2rem; }
li { margin:0 0 0.25rem; }
nav ul { list-style:none; }
nav ul,nav li { margin:0; padding:0; }
nav a { text-decoration:none; }

/* Tables
----------------------------------------------------*/
table { width:100%; margin:2em 0; border-collapse:collapse; border-spacing:0; border:1px solid var(--gray-light); }
tr { border-top:1px solid var(--gray-light); }
tr:nth-child(even) td { background:var(--gray-extra-extra-light); }
th,thead th { text-align:left; background-color:var(--gray-extra-light); color:var(--gray-dark); border-right:1px solid var(--gray-light); font-family:var(--font-default); font-weight:600; font-size:1em; border-bottom:3px solid var(--gray); }
tfoot th { text-align:right; }
th, td { padding:0.5em 0.75em; }
td { border-right:1px solid var(--gray-light); border-left:1px solid var(--gray-light); }
td, td img { vertical-align:top; }

/* Quotes
----------------------------------------------------*/
 blockquote { position:relative; margin:2rem 1rem; padding:0; font-family:var(--font-default); text-align:left; }
 blockquote p { margin:0 0 1rem; font-size:1.5rem; line-height:1.6em; color:var(--brand-blue); }
 blockquote p cite { display:block; margin:1rem 0 0; font-size:1rem; line-height:1.4; color:var(--gray); text-align:right; font-weight:normal; font-style:normal; font-family:var(--font-secondary); }

/* Images & Videos
----------------------------------------------------*/
 img { max-width:100%; min-width:100%; width:auto; height:auto; border:none; vertical-align:bottom; -ms-interpolation-mode:bicubic; box-sizing:content-box; }
 figure { display:block; margin:0; }
 figcaption { clear:both; margin:0.75em 0; padding:0 1rem; font-size:0.95rem; text-align:left; color:var(--gray); line-height:1.4em; font-family:var(--font-secondary); }

 .full,
 .figgroup-2,
 .figgroup-3,
 .figgroup-3-combo,
 .figgroup-4,
 .image-right { margin:2rem 0; }
 .figgroup-2,
 .figgroup-3 { display:grid; grid-template-columns:1fr; }
 .figgroup-3-combo img, .figgroup-4 img { margin:0.75rem 0 0; }

 .video { min-width:100%; position:relative; display:inline-block; text-align:center; overflow:hidden; }
 .video .play { position:absolute; bottom:0; left:0; width:100%; height:100%; margin:0 auto; background:rgba(0, 0, 0, 0.1) url('images/play-btn.svg') no-repeat left center / auto 100%; -webkit-transform-origin:12% 79%; transform-origin:12% 79%; -webkit-transform:scale(1); transform:scale(1); transition:all 125ms cubic-bezier(0, 0, 0.25, 1); }
 .video:hover .play { background-color:rgba(0, 0, 0, 0); -webkit-transform:scale(1.15); transform:scale(1.15); }
 p.video-container { margin-bottom:0; }

 .photo-quote { margin:3em 0; }
 .photo-quote figure { margin:0 auto; width:50%; }
 .photo-quote img { border-radius:100%; }

 /* Scrolling fades */
	.js .animate { transform:scale(1.02); opacity:0; transition:all 1s cubic-bezier(0.31, 0.72, 0.49, 0.9); }
	.js figcaption.animate,
	.js .slide.animate { transform:scale(1) translate(2rem,0); }
	.js .animate.active,
	.js .animate.active-once { transform:scale(1) translateY(0); opacity:1; }


/* General Classes
----------------------------------------------------*/
 .ndmark { display:block; width:200px; max-width:100%; text-decoration:none; }
 .hidden {display:none !important;}
 .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; }

 .visibility-hidden { display:none !important; }
 .visually-hidden { position:absolute; border:0; clip:rect(0 0 0 0); height:1px; width:1px; overflow:hidden; margin:-1px; padding:0; white-space:nowrap; }

/*************************************************************************************
* 2. Screen Styles
************************************************************************************/
@media screen {
body { background:#fffffe; }
.mt { margin-top:-3.75rem !important; }
 .wrapper { height:100%; }
 .site-content { margin:auto; display:grid; grid-template-columns:1fr minmax(0, 30em) minmax(0, 30em) 1fr; grid-gap:var(--grid-gap); }
 .site-content.bg { background:var(--sky-blue-light); }
 .site-content.pillars { grid-template-columns:repeat(12, 1fr); margin-top:5rem; padding:2rem 0 3rem 0; }
 .float-img { margin:0 0 1rem; }
	.float-img.left { grid-column:1/12; }
	.float-img.right { grid-column:2/13; }
	.float-content.left,
	.float-content.right { grid-column:2/11; }

 .section { grid-column:2/4; }
 .section.grid { margin:4rem 0 0; }

 .full-bleed { display:grid; grid-template-columns:1fr minmax(0, 30em) minmax(0, 30em) 1fr; grid-gap:var(--grid-gap); grid-row-gap:0.8em; }
 .full-bleed img,
 .full-bleed video { object-fit:cover; overflow:hidden; height:50vh; grid-column:1/5; }
 .full-bleed figcaption { margin:0 0 2rem; grid-column:2/4; }

 .full-bleed.vimeo-wrapper { grid-gap:0; margin:2rem 0 4rem; }
 .full-bleed.vimeo-wrapper { position:relative; width:100%; height:100%; z-index:-1; pointer-events:none; overflow:hidden; }
 .full-bleed.vimeo-wrapper iframe { min-height:100%; position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); border:0; }
 .full-bleed.vimeo-wrapper img,
 .full-bleed.vimeo-wrapper.footer-img img { height:100%; }

 .bgvid { position:relative; overflow:hidden; }
 .bgvid img { position:absolute; top:0; left:0; right:0; bottom:0; }

 .embed-inner { position:relative; padding:0; }
 .embed-inner iframe,
 .embed-inner object,
 .embed-inner embed { position:absolute; top:0; left:0; width:100%; height:100%; }
 progress { position:fixed; left:0; top:0; z-index:10; width:100%; height:5px; border:none; color:var(--brand-blue); background-color:transparent; -webkit-appearance:none; appearance:none; }

 progress::-webkit-progress-bar { background-color:transparent; }
 progress::-webkit-progress-value { background-color:var(--brand-blue); }
 progress::-moz-progress-bar { background-color:var(--brand-blue); }

/* Header
----------------------------------------------------*/
 .site-header { position:relative; z-index:999; margin:0; }

 .brandbar { position:absolute; top:0; left:0; bottom:0; right:0; height:100%; }
 .brandbar li { margin:0; padding:0; }
 .brandbar a { display:block; margin:0.5rem 1rem; text-decoration:none; height:65px; text-indent:-9999px; overflow:hidden; background-repeat:no-repeat; }

 .dept-nd img { display:none; }
 .dept-nd a { background-position:center 0; }
 .dept a { background-position:right 0; }

	.header-image { position:relative; overflow:hidden; margin:0; width:100%; height:60vh; }
	.header-image:before { content:''; z-index:2; display:block; position:absolute; top:0; width:100%; height:100%; box-shadow:inset 0px 80px 80px rgba(0,0,0,0.35); background: rgba(0,0,0,0.25); }
	.header-image img { width:100%; height:100%; -o-object-fit: cover; object-fit:cover; object-position:bottom; }

	.header-overlay { position:absolute; z-index:2; left:50%; top:30%; transform:translate(-50%, -30%); }

 .category,
 .pubdate { margin:0 0 0.5rem; color:var(--gray); font-family:var(--font-secondary); font-weight:400; text-transform:uppercase; letter-spacing:0.08em; }
 .pubdate { margin:2em 0 0; text-transform:capitalize; letter-spacing:0; }
 .site-title { margin:0 auto; width:324px; height:86px; font-size:2.25rem; line-height:1.1em; font-weight:700; font-family:var(--font-heading); color:var(--brand-blue); background:url('images/title.svg') no-repeat left; background-size:contain; text-indent:-9999px; }
 .subtitle { margin:1em 0 0; font-size:1.4rem; line-height:1.45em; font-weight:300; font-family:var(--font-secondary); color:var(--gray-dark); }

 .page-nav {position:absolute; border:0; clip:rect(0 0 0 0); height:1px; width:1px; overflow:hidden; margin:-1px; padding:0; white-space:nowrap;}

.nav-skip {position:absolute; top:0.25em; right:0.5em; display:block; width:2em; height:2em; padding:0.5em 0; text-indent:2.1875em; font-size:1.3em; line-height:1.9em; text-align:center; text-decoration:none; border:none; border-radius:0; z-index:100; text-indent: -9999px; background:#0c2340; box-shadow:none;
 }
		.nav-skip span {position:relative; top:0.4em; margin:0 auto;
			-webkit-transition-duration:0s;
			-webkit-transition-delay:0.2s;
							transition-delay:0.2s;
	}
		.nav-skip span:before,
		.nav-skip span:after {position:absolute; content:'';}
		.nav-skip span,
		.nav-skip span:before,
		.nav-skip span:after {width:1.3em; height:3px; background-color:#eee; display:block;
			-webkit-transition-property:top, -webkit-transform;
			-webkit-transition-duration:0.2s;
							transition-duration:0.2s;
			-webkit-transition-delay:0.2s, 0;
							transition-delay:0.2s, 0;
	}
		.nav-skip span:before {top:-0.45em;}
		.nav-skip span:after {top:0.45em;}

		.nav-skip.toggled span {background-color:rgba(0,0,0,0.0);
			-webkit-transition-delay:0.2s;
				 -moz-transition-delay:0.2s;
							transition-delay:0.2s;
	}
		.nav-skip.toggled span:before,
		.nav-skip.toggled span:after {top:0;
			-webkit-transition-delay:0, 0.2s;
							transition-delay:0, 0.2s;
	}
		.nav-skip.toggled span:before {-webkit-transform:rotate(45deg); -moz-transform:rotate(45deg); -ms-transform:rotate(45deg); -o-transform:rotate(45deg); transform:rotate(45deg);}
		.nav-skip.toggled span:after {-webkit-transform:rotate(-45deg); -moz-transform:rotate(-45deg); -ms-transform:rotate(-45deg); -o-transform:rotate(-45deg); transform:rotate(-45deg);}

 .mobile-nav-wrapper {position:absolute; top:0.4em; right:0; z-index:9999; overflow:hidden;}
		.mobile-nav-wrapper.sticky {position:fixed; right:0;}
		.mobile-nav {padding:2em 1em 0.5em; background:#0c2340; background:rgba(12,35,64,0.9); transform:translateY(-20em); font-family:GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; transition:all 0.2s;}
			.mobile-nav-wrapper.active .mobile-nav {transform:translateY(0);}
			.mobile-nav ul {list-style:none; padding:0;}
			.mobile-nav a {display:block; padding:0.25em; color:#fff; text-decoration:none;}
			.mobile-nav a:hover {color:#999;}

/* Content
----------------------------------------------------*/
 .lede { font-size:1.15rem; }
 .section.lede-top { margin:3rem 0 2rem; }

 .byline:before { content:''; margin-bottom:1.5em; display:block; height:4px; width:80px; background:var(--brand-gold); }
 .byline { margin:3.5em 0 0; color:var(--brand-blue); }
 .byline h2 { margin:0; font-size:1.275rem; }
 .byline p { margin:0; font-size:1.25em; font-weight:700; font-family:var(--font-heading); }
 .byline ul { padding:0; list-style:none; font-size:0.9em; font-weight:400; font-family:var(--font-secondary); font-style:normal; color:var(--gray); }
 .byline ul strong { color:var(--gray-dark); }
 .byline a { color:var(--brand-blue); }

	/* Story Slider */
.slider { position:relative; margin:2rem 0 3rem; }
.slides { display:flex; grid-gap:0.75rem; align-items:center; scroll-behavior:smooth; overflow-x:scroll; overflow-y:hidden; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch;}
	.slider .cover { display:flex; flex-direction:column; width:100vw; max-width:650px; padding:2rem 2.5rem; color:#fff; background:var(--brand-blue) url('images/slider-bg.jpg') center top / cover no-repeat; }
	.slider .cover .body p { flex:1; font-size:1.15rem; line-height:1.65; color:#eee; font-family:var(--font-secondary); }
	.slider .cover .body a,
	.slider .cover .body a:link,
	.slider .cover .body a:hover,
	.slider .cover .body a:visited { color:#ccc; }
	.slider .cover .title { margin:0 0 1.5rem; font-size:2rem; line-height:1.1; color:#fff; font-family:var(--font-heading); }
	.slider .cover .subtitle { font-size:0.9rem; letter-spacing:1px; margin-bottom:0.5rem; text-transform:uppercase; color:var(--gray-light); }
	.slider .cover .drag-cta { display:flex; gap:1rem; align-items:center; color:#fff; font-size:1.1rem; line-height:1.6; font-family:var(--font-secondary); background:none; border:none; text-align:right; }
	.slider .cover .drag-cta .icon { color:var(--brand-gold); }
	.slider .cover .drag-cta .cta { width:100%; }
		.slider .cover .drag-cta:hover {cursor:pointer;}

	.slider .slide { flex:1 0 auto; scroll-snap-align:start; }
	.slider .slide img {max-height:100%; }
	.slider .slide .entry-wrapper p { padding:0 1rem; font-size:1rem; font-family:var(--font-secondary); }
	.slider .slide.image { max-width:960px; width:100vw; align-self:baseline; }
	.slider .slide.image .entry-wrapper { height:100%; width:100%; }
	.slider .slide.image .entry-wrapper .image-wrapper { height:100%; }
	.slider .slide.text-above-image,
	.slider .slide.text-below-image { max-width:455px; overflow:hidden; width:100vw;}
	.slider .slide.text-above-image .entry-wrapper,
	.slider .slide.text-below-image .entry-wrapper { display:flex; height:100%; }
	.slider .slide.text-above-image .entry-wrapper img,
	.slider .slide.text-below-image .entry-wrapper img { width:533px; }
	.slider .slide.text-above-image .entry-wrapper { flex-direction:column; }
	.slider .slide.text-below-image .entry-wrapper { flex-direction:column-reverse; }
	.slider .slide.text-below-image .entry-wrapper .image-wrapper,
	.slider .slide.text-above-image .entry-wrapper p { margin-bottom:1.5rem; }
	.slider .slide.text-below-image .entry-wrapper p { flex:1; }

	.slider .btn { opacity:1; position:absolute; top:50%; z-index:1; transform:translateY(-50%); height:45px; width:45px; border-radius:100%; transition:opacity 0.4s; background-color:rgba(174,145,66,0.85); background-position:50% 50%; background-repeat:no-repeat;}
		.slider .btn.slide-next {right:10px; background-image:url('data:image/svg+xml;charset=utf-8,<svg width="18" height="18" viewBox="0 0 34 34" xmlns="http://www.w3.org/2000/svg"><title>Shape</title><path d="M25.557 14.7L13.818 2.961 16.8 0l16.8 16.8-16.8 16.8-2.961-2.961L25.557 18.9H0v-4.2z" fill="%23FFF" fill-rule="evenodd"/></svg>');}
		.slider .btn.slide-prev {left:10px;background-image:url('data:image/svg+xml;charset=utf-8,<svg width="18" height="18" viewBox="0 0 34 34" xmlns="http://www.w3.org/2000/svg"><title>Shape</title><path d="M33.6 14.7H8.043L19.782 2.961 16.8 0 0 16.8l16.8 16.8 2.961-2.961L8.043 18.9H33.6z" fill="%23FFF" fill-rule="evenodd"/></svg>');}

 .stats { margin:2rem 0 0; padding-top:3rem; border-top:1px solid #ccc; }
 .stats strong { display:block; margin:0 0.75rem 0 0; line-height:1; font-size:4.5rem; font-family:var(--font-heading); color:var(--brand-blue); }
	.stats .upper { display:block; margin:0 0 0.5rem; font-size:0.9rem; text-transform:uppercase; letter-spacing:2px; color:var(--gray); }
	.stats .lower { display:block; font-size:1rem; line-height:1.25; color:var(--gray); }
	.stats .float { float:left; }
	.stats .margin { margin-top:1rem; }

 .stats-icons { display:flex; grid-template-columns:repeat(5, 1fr); grid-gap:1rem;	margin-bottom:1rem; }
	.stats-icons p { grid-column:2/6; line-height:1; }

 .icon-chapel,
 .icon-mass,
 .icon-service { content:""; background-size:contain; background-repeat:no-repeat; width:90px; height:78px; }
 .icon-chapel { background-image:url('images/icon-chapel.png'); }
 .icon-mass { background-image:url('images/icon-mass.png'); }
 .icon-service { background-image:url('images/icon-service.png'); }
 .icon-aaat { content:""; background-image:url('images/AAAT-logo.png'); background-size:contain; background-repeat:no-repeat; width:108px; height:97px; }



/* Cards
----------------------------------------------------*/
 .card-label { color:var(--gray); font-family:var(--font-default); }
 .card-link, .card-link:visited { display:block; text-decoration:none; color:var(--brand-blue); }
 .card-link:hover { text-decoration:none; color:var(--brand-blue); }
 .card-link::before { content:''; display:block; position:absolute; top:0; bottom:0; right:0; left:0; z-index:2 }

/* Cards (flexible content containers)
----------------------------------------------------*/
 .card { display:flex; flex-flow:column; width:100%; position:relative; margin:0; width:100%; }
 .card-body { padding:0 1rem 1rem; font-size:1rem; }
 .card-title { margin:0 0 1rem; font-size:1.35rem; padding-top:0; font-family:var(--font-heading-article); font-weight:400; }
 .card-label { font-size:1rem; margin:0 0 0.5em; font-size:0.875rem; font-weight:normal; letter-spacing:0.08em; text-transform:uppercase; }
 .card-image { order:-1; margin:0; width:100%; }
 .card-image img { width:100%; }

/* Hover Effects
----------------------------------------------------*/
 [class*="hover-"], [class*="hover-"]::after, [class*="hover-"]::before { transition:all var(--anim-duration) cubic-bezier(0, 0, 0, 1); }
 .hover-grow { transform:scale(1); margin-bottom:0.75rem; }
 .hover-grow:hover { transform:scale(1.01); }
 .hover-bg { border-bottom:0.25rem solid transparent; }
 .hover-bg:hover,
 .hover-bg:focus-within { background-color:var(--sky-blue); border-color:var(--sky-blue-dark); }
 .hover-bg:focus-within a:focus { outline:none; }
 .hover-more { padding-right:3rem; background-position:calc(100% - 2rem) 50%; background-size:1rem; background-repeat:no-repeat; background-image:url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 192 512"%3E%3Cpath fill="%23ae9142" d="M166.9 264.5l-117.8 116c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17L127.3 256 25.1 155.6c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0l117.8 116c4.6 4.7 4.6 12.3-.1 17z"/%3E%3C/svg%3E'); }
 .hover-more.card { padding-right:0; }
 .hover-more.card-body,
 .hover-more .card-body { padding-right:3rem; }

/* Buttons
----------------------------------------------------*/
 .btn { display:inline-block; padding:0.8rem 1rem; border:3px solid transparent; border-radius:0.6rem; line-height:1.5rem; text-decoration:none; transition:all 125ms ease-in-out; font-size:1rem; font-family:var(--font-secondary); }
 .btn:focus { border-color:var(--link-focus); outline:none; }
 .btn:visited { color:var(--brand-blue); }
 .btn svg { vertical-align:middle; transition:transform .25s ease-in-out}
 .btn:hover svg { transform:translateX(0.325em); }
 .btn-inline { color:var(--brand-blue); }
 .btn-inline:hover { color:var(--brand-blue); background-color:var(--sky-blue); transform:scale(1.02); }
 .btn-inline:active { color:var(--brand-blue); background-color:var(--sky-blue); }
 .btn-inline svg { fill:var(--brand-gold); }
 .btn-hidden { display:none; }
 .btn-hidden-mobile { display:block; }

 .text-right { text-align:right; }

/* Footer
----------------------------------------------------*/
 .site-footer { position:relative; text-align:center; font-family:"Libre Franklin", Helvetica, Arial, Verdana, sans-serif; background:#f5f5f5; }
 .site-footer p { clear:both; margin:0; font-size:1rem; }
 .site-footer a { color:var(--gray); }
 .site-footer svg { fill:var(--gray); }
 .footer-global { padding:2rem 0 0; }
 .footer-global li { padding:0.5rem 0; }
 .social { margin:2rem 0; }
 .copyright { font-weight:bold; }
 .address { display:block; margin:0; }
 .ndmark { width:200px; margin:2em auto; }
 .footer-global-links { padding:1rem 0; background:var(--gray-light); font-size:1rem; }
 .footer-global-links a { padding:0.45rem 1rem; border-radius:0.5rem; transition:all 125ms ease-in-out; text-decoration:none; transition:all 125ms ease-in-out; }
 .footer-global-links a:hover { text-decoration:underline; }
 .footer-global-links nav a:hover { text-decoration:none; background-color:#f0f0f0; }
 .footer-global-links li { margin:0 1rem; padding:0.5rem 0; }
 .footer-links-content { text-align:center; }
 .footer-links-policy { justify-content:flex-end; text-align:center; }

 .full-bleed.vimeo-wrapper.footer-img { margin:0; }
 .full-bleed.footer-img p { display:none; }
 .mobile-text p { padding:1rem; font-family:var(--font-heading); font-size:1.35rem; line-height:1.4; color:var(--brand-blue); }


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

/** 580px **
----------------------------------------------------*/
@media only screen and (min-width:36.25em) {

/* Header
----------------------------------------------------*/
.brandbar a { margin:0.5rem auto; }
 .site-title { padding:11rem; }

/* Images & Video
----------------------------------------------------*/
 .image-right,
 .image-left { width:52%; max-width:52%; font-size:0.9rem; text-align:left; color:#888; line-height:1.4em; font-family:"Libre Franklin", Helvetica, Arial, Verdana, sans-serif; }
 .image-right { float:right; margin:0 0 1.2em 3em; }
 .header-image { height:60vh; min-height:31.25rem; }
 .header-video { padding-top:54.875%; }

 .video-right {width:52%; float:right; margin:0 0 1.2em 3em;}
}
/** 768px **
----------------------------------------------------*/
@media only screen and (min-width:48em) {

/* Header
----------------------------------------------------*/
 html { background-attachment:fixed; }
 .brandbar li { margin:0 auto; }
 .header-image { height:70vh; min-height:43.75rem; }
 .site-title { padding:18rem; font-size:3em; }
 .subtitle { font-size:1.8rem; }
	.header-overlay { top:27%; }

/* Content
----------------------------------------------------*/
 h2 { font-size:4rem; }
 h2:after { margin-left:-0.5rem; width:60px; height:6px; }
 h3 { font-size:2rem; }
 .float-content h3 { font-size:2.65rem; }
 h4 { font-size:1.5rem; }
 h5 { font-size:1.25rem; }
 h6 { font-size:1.125rem; }

 .lede { font-size:1.3rem; }

 blockquote p { margin:2em 3em 1.25em 3em; }

 .slider { margin:3rem 0 4rem; }
 .slider .cover { padding:6.5rem 6rem; }
 .slider .cover .title { font-size:2.65rem; }

 .stats-grouping { display:grid; grid-template-columns:repeat(2, 1fr); grid-gap:var(--grid-gap); }

/* Buttons/Hover
----------------------------------------------------*/
 .btn-hidden { display:block; }
 .btn-hidden-mobile { display:none; }
 .hover-more { background-image:none; }
 .hover-more:hover,
 .hover-more:focus-within { background-image:url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 192 512"%3E%3Cpath fill="%23ae9142" d="M166.9 264.5l-117.8 116c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17L127.3 256 25.1 155.6c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0l117.8 116c4.6 4.7 4.6 12.3-.1 17z"/%3E%3C/svg%3E'); background-position-x:calc(100% - 1.5rem); }

 /* Images
 ----------------------------------------------------*/
 .full,
 .figgroup-2 { margin:1rem 0; }
 .figgroup-3 { margin:2rem 0 3rem; }
 .full-bleed img,
 .full-bleed video { height:80vh; }
 .figgroup-2 { grid-template-columns:repeat(2, 1fr); grid-column-gap:var(--grid-gap); }
 .figgroup-2 figcaption { grid-column:1/3; }
 .figgroup-3 { grid-template-columns:repeat(3, 1fr); grid-column-gap:var(--grid-gap); }
 .figgroup-3-combo img,
 .figgroup-4 img { margin:0; }
 .figgroup-3-combo figure,
 .figgroup-4 figure { margin:0; }
 .figgroup-3-combo figcaption,
 .figgroup-4 figcaption { margin:-0.65em 0 0; grid-column:1/9; }
 .figgroup-3-combo { display:grid; grid-template-columns:repeat(8, 1fr); grid-gap:1.5rem; }
 .figgroup-3-combo img:nth-child(1) { grid-column:1/5; grid-row:1/9; }
 .figgroup-3-combo img:nth-child(2) { grid-column:5/9; grid-row:1/6; }
 .figgroup-3-combo img:nth-child(3) { grid-column:5/9; grid-row:6/9; }
 .figgroup-4 { display:grid; grid-template-columns:repeat(8, 1fr); grid-gap:var(--grid-gap); }
 .figgroup-4 img:nth-child(1) { grid-column:1/3; grid-row:1/2; }
 .figgroup-4 img:nth-child(2) { grid-column:3/5; grid-row:1/2; }
 .figgroup-4 img:nth-child(3) { grid-column:1/5; grid-row:2/9; }
 .figgroup-4 img:nth-child(4) { grid-column:5/9; grid-row:1/9; }

 .photo-quote { margin:3rem 0 1rem; display:grid; grid-template-columns:repeat(7, 1fr); grid-column-gap:var(--grid-gap); }
	.photo-quote figure { grid-column:1/3; width:100%; }
	.photo-quote.pull { margin-top:1rem; margin-bottom:0; margin-left:1rem; }
	.photo-quote.pull figure { grid-column:1/8; width:40%; margin-bottom:1rem; }
	.photo-quote.pull blockquote { grid-column:1/8; }
	.photo-quote.pull blockquote p { margin: 0 1em 0.25em; }
	.photo-quote blockquote { grid-column:3/8; }
	 .photo-quote blockquote p { margin:0 1em 0; }

 /* Footer
 ----------------------------------------------------*/
 .social li { display:inline-block; margin:0 0.25rem; }
 .footer-links-content li { margin-right:0.5rem; display:inline-block; }
 .footer-links-policy li { margin-left:0.5rem; display:inline-block; }
 .full-bleed.footer-img p { position:absolute; left:0; right:0; margin:0 auto; padding:0; display:flex; width:90%; align-items:center; padding:0 2rem; width:100%; height:100%; color:#fff; font-size:1.75rem; font-family:var(--font-heading); line-height:1.4; background:none; }
 .mobile-text { display:none; }
}

/** 960px **
----------------------------------------------------*/
@media only screen and (min-width:60em) {
h2:after { margin-left:-1rem; width:72px; }

 /* Header
 ----------------------------------------------------*/
 .category { font-size:1.2rem; margin:0 0 0.5rem; }
 .site-title { padding:20rem; font-size:3rem; }
 .header-image { height:106vh; }
 .header-overlay { top:58%; transform:translate(-50%, -58%); }

 .page-nav li {display:inline-block;}
	 .page-nav a {display:block; padding:1rem; font-size:0.9rem; text-decoration:none; color:#fff;}
	 .page-nav a:hover {background:#143865; transition:all 0.45s ease;}
	 .page-nav .active {background:#143865; color:#eee;}
	 .page-nav.sticky {clip:auto; height:auto; width:auto; overflow:visible; margin:0; list-style:none; border-top:3px solid #ae9142; border-bottom:3px solid #081629; background:#0c2340; text-align:center; font-family:"Libre Franklin", "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; transition:all 0.25s ease; position:fixed; top:0; left:0; right:0; margin:0; z-index:100;}

.mobile-nav-wrapper {display:none;}
.nav-skip {display:none;}


 /* Content
 ----------------------------------------------------*/
 blockquote { margin:0; }
 blockquote.pull p { margin-top:1rem; }
 .pull { width:40vw; margin-right:-8vw; float:right; }
 .full-bleed.footer-img p { font-size:2rem; }

 .float-img.left { grid-column:1/7; }
 .float-img.right { grid-column:7/13; }
 .float-content { margin:2rem 1rem; align-self:center; }
 .float-content.left { grid-column:7/12; }
 .float-content.right { grid-column:2/7; grid-row:2; }

 .site-content.pattern.floral { background:url('images/pattern-floral.svg') 68vw -13.5vw / 51rem no-repeat; }
 .site-content.pattern.knot { background:url('images/pattern-knot.svg') 68vw -13.5vw / 51rem no-repeat; }
 .site-content.pattern.knot-rings { background:url('images/pattern-knot_rings.svg') 68vw -13.5vw / 51rem no-repeat; }
	.site-content.pattern.knot-rings.short { background:url('images/pattern-knot_rings-short.svg') 68vw -13.5vw / 51rem no-repeat;}

 .mb { margin-bottom:-4rem !important; }

 .full-bleed.footer-img p { font-size:2.25rem; width:68%; }

 /* Footer
 ----------------------------------------------------*/
 .footer-global { padding:3rem 0 0; }
 .footer-global li { padding:0; }
 .footer-global .col { display:flex; justify-content:space-between; max-width:90vw; margin:0 auto 1rem; }
 .footer-global .social { justify-self:center; max-width:500px; }
 .footer-global .social svg { margin-right:0.25rem; vertical-align:text-bottom; margin-bottom:2px; }
 .footer-global .social ul { display:grid; grid-template-columns:repeat(3, 1fr); grid-gap:0.5rem; justify-items:start; }
 .footer-global .ndmark { margin:0; }
 .footer-global .social { margin:0; }
 .footer-global .vcard { text-align:left; }
 .social li { display:inline-block; margin:0 0.25rem; font-size:1rem; }
 .social a { color:var(--gray); padding:0.5rem 1rem; margin-top:-0.5rem; display:block; border-radius:0.6rem; border:3px solid transparent; transition:all 125ms ease-in-out; }
 .social a:hover { background-color:var(--sky-blue); color:var(--brand-blue); }
 .social a:focus { border-color:var(--link-focus); outline:none; }
 .social a:active { color:var(--brand-blue); background-color:var(--sky-blue-dark); }
 .social a:hover svg { fill:var(--brand-blue); }
 .footer-global-links { font-size:.875rem; }
 .footer-global-links nav { display:flex; }
 .footer-global-links ul { width:50%; margin:0; }
 .footer-links-content { text-align:left; }
 .footer-links-content li { margin:0; display:inline-block; }
 .footer-links-policy { justify-content:flex-end; text-align:right; }
 .footer-links-policy li { margin-left:0.5rem; display:inline-block; }
 .vcard p { font-size:0.875rem; line-height:1.6rem; }
}


/** 1200px **
----------------------------------------------------*/
@media only screen and (min-width:75em) {

/* Header
----------------------------------------------------*/
 .site-title { padding:22rem; font-size:3.75em; }
 .subtitle { font-size:1.9rem; }
 .page-nav a { padding:1rem 1.5rem; font-size:1rem; }

 /* Images
----------------------------------------------------*/
 .full-bleed img,
 .full-bleed video { width:100vw; height:100vh; }

/* Content
----------------------------------------------------*/
 .pull { width:32vw; }
 .social li { font-size:1.125rem; }

 .section.lede-top { margin:10rem 5rem; }
 .section.lede-top p { font-size:1.75rem; }
 .section.grid { display:grid; margin:6rem 0 0; grid-template-rows:auto; grid-template-columns:repeat(12, 1fr); grid-gap:5rem; grid-row-gap:0; }
 .section.grid h2 { grid-column:1/9;}
 .section.grid .main { grid-column:1/9; }
 .section.grid .aside { grid-column:9/13; }
	.section.grid .aside p { font-size:1rem; 	}
 .section.grid .stats-grouping,
 .section.grid .figgroup-3 { grid-column:1/13; }

 .pillars { margin-top:4rem; padding-top:0; }
 .pillars p { font-size:1.25rem; }
 .float-content { margin:2rem 3rem; }
 #faith.float-content { margin:0 3rem 4rem; }

 #global.float-content { margin:0 3rem -3rem; z-index:2; }

	.section.grid h2 span { display:block; }

}

/** 1400px **
----------------------------------------------------*/
@media only screen and (min-width:87.5em) {
 .site-content { grid-template-columns:1fr minmax(0, 36em) minmax(0, 36em) 1fr; }
 .site-content.pillars { grid-template-columns:repeat(12, 1fr); margin-top:8rem; padding-top:0; padding-bottom:0; }
 .footer-global .col { max-width:78vw;}
 .mb { margin-bottom:-3rem !important; }
}

/** 1600px **
----------------------------------------------------*/
@media only screen and (min-width:100em) {
.full-bleed.vimeo-wrapper iframe { width:100vw; height:56.25vw; min-height:100vh; min-width:177.77vh; }
.full-bleed.vimeo-wrapper img,
.full-bleed.vimeo-wrapper.footer-img img { height:100vh; }
#faith.float-content { margin-left:3rem; margin-right:7rem; }
#research.float-content,
#global.float-content { margin-left:7rem; margin-right:3rem; }
}

/** 1800px **
----------------------------------------------------*/
@media only screen and (min-width:112.5em) {
 .pull { width:25vw; }
}

/* Icons
<span class="icon" data-icon="nd-monogram"></span>
https://dev.conductor.nd.edu/icons/
----------------------------------------------------*/
 .icon {display:inline-block; width:1em; height:1em; fill:currentColor;}

/* Fonts
https://dev.conductor.nd.edu/fonts/
----------------------------------------------------*/
@font-face {font-family:GPC; font-weight:700; font-style:normal; font-display:swap;
 src:url('https://static.nd.edu/fonts/gp-min/gpc-bold.woff2') format('woff2'),
		 url('https://static.nd.edu/fonts/gp-min/gpc-bold.woff') format('woff');
}
@font-face {font-family:Factoria; font-weight:700; font-style:normal; font-display:swap;
	src:url('fonts/factoria.woff2') format('woff2'),
			url('fonts/factoria.woff') format('woff'),
			url('fonts/factoria.ttf') format('truetype');
}


/*************************************************************************************
 * 4. Themes
 ************************************************************************************/

@media screen {
 /* Brand Bar
 ----------------------------------------------------*/
 .dept-nd a {width:260px; background-image:url('https://www.nd.edu/assets/css/images/marks/white/mark-stories.svg');}
}}

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

 @page {margin:1.5cm;}
 body {font-family:Georgia, "Times New Roman", Times, serif; color:#000;}
 img,
 tr,
 .full-bleed {page-break-inside:avoid; width:100%;}
 p, h2, h3 {orphans:3; widows:3;}
 h2, h3 {page-break-after:avoid;}

 a[href^="javascript:"]:after,
 a[href^="#"]:after {content:"";}
 .ndmark {width:150px;}

 /* HIDDEN
 ----------------------------------------------------*/
	progress,
 .skip-links,
 .video,
 .video-caption,
 .footer-global-links,
 .social,
 .getty,
 .video-container,
 .page-nav {display:none;}

	/* Images
 ----------------------------------------------------*/
 .header-image { height:45vh; }
	.header-image img { transform:scale(1) !important; height:45vh; object-fit:cover; }

 .image-right {float:right; margin:0 0 1em 2em; width:45%;}
 .image-left {float:left; margin:0 2em 1em 0; width:45%;}

 .full-bleed { display:grid; grid-template-columns:1fr minmax(0, 23em) minmax(0, 23em) 1fr; grid-gap:var(--grid-gap); grid-row-gap:0.8em; }
 .full-bleed img,
 .full-bleed video { object-fit:cover; overflow:hidden; width:100%; grid-column:1/5; }
 .full-bleed figcaption { margin:0 0 2rem; grid-column:2/4; }

 .full,
 .figgroup-2,
 .figgroup-3,
 .figgroup-3-combo,
 .figgroup-4 { margin:3rem 0; }
 .full-bleed figcaption { margin:0 var(--offset); }
 .figgroup-2 { grid-template-columns:repeat(2, 1fr); grid-column-gap:var(--grid-gap); }
 .figgroup-3 { grid-template-columns:repeat(3, 1fr); grid-column-gap:var(--grid-gap); }
 .figgroup-3-combo img,
 .figgroup-4 img { margin:0; }
 .figgroup-3-combo figure,
 .figgroup-4 figure { margin:0; }
 .figgroup-3-combo figcaption,
 .figgroup-4 figcaption { margin:-0.65em 0 0; grid-column:1/9; }
 .figgroup-3-combo { display:grid; grid-template-columns:repeat(8, 1fr); grid-gap:1.5rem; }
 .figgroup-3-combo img:nth-child(1) { grid-column:1/5; grid-row:1/9; }
 .figgroup-3-combo img:nth-child(2) { grid-column:5/9; grid-row:1/6; }
 .figgroup-3-combo img:nth-child(3) { grid-column:5/9; grid-row:6/9; }
 .figgroup-4 { display:grid; grid-template-columns:repeat(8, 1fr); grid-gap:var(--grid-gap); }
 .figgroup-4 img:nth-child(1) { grid-column:1/3; grid-row:1/2; }
 .figgroup-4 img:nth-child(2) { grid-column:3/5; grid-row:1/2; }
 .figgroup-4 img:nth-child(3) { grid-column:1/5; grid-row:2/9; }
 .figgroup-4 img:nth-child(4) { grid-column:5/9; grid-row:1/9; }

 /* Structure
 ----------------------------------------------------*/
 .site-header {overflow:hidden; position:relative; margin:0 0 20px; padding:0; }
 .brandbar {margin:2rem 0 1rem; font-size:9px; text-transform:uppercase; font-family:"Adobe Garamond", Garamond, Baskerville, "Baskerville Old Face", "Hoefler Text", "Times New Roman", serif; text-align:center; letter-spacing:1px; border-bottom:1px solid #ccc; }
 .brandbar i {text-transform:none;}
 .site-title,
 .subline {margin:0; display:block; font-family:"Libre Franklin", Helvetica, Arial, Verdana, sans-serif; font-weight:400;}
 .site-header a,
 .site-title a,
 .subline a {color:#000;}

 .lede {font-size:1.2rem;}
 .site-title {margin:4px 0 2px; font-size:1.75em; font-family:var(--font-heading); font-weight:700; font-size:2.25rem;}
 .subtitle { margin-bottom:1rem; font-family:"Libre Franklin", Helvetica, Arial, sans-serif; font-size:1.3rem;}
 .category {margin-top:1rem; font-family:"Libre Franklin", Helvetica, Arial, sans-serif; text-transform:uppercase; letter-spacing:1px; color:var(--gray);}
 .byline h2 { font-size:1.275rem; }
 .byline {font-size:0.9rem;}
	.pubdate { margin:0 0 2rem; color:var(--gray); font-family:var(--font-secondary); font-weight:400; text-transform:capitalize; }

 p {font-size:1rem;}

 .sidebar-heading { margin:0; }

 .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;}

 /* Custom
 ----------------------------------------------------*/
 .full-bleed img { height:30vh; }
 .overlay-text h2 { color:#fff; }

 .photo-quote figure { margin:4rem auto 0; width:22%; }
 .photo-quote blockquote { margin:2rem auto 4rem; width:80%; }

 .slider .cover .subtitle { font-size:0.9rem; letter-spacing:1px; margin-bottom:0.5rem; text-transform:uppercase;	}
 .image-wrapper { margin-bottom:1rem; }
 .js .animate { opacity:1; }
}