/*!
Launched:2022-05-09
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: EB Garamond, 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-primary: Garamond-Pro, Georgia, "Times New Roman", Times, serif;
  --font-secondary: GP, "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;

  --gutter-width: 5vw;
  --offset: calc(var(--gutter-width) * -1));
}
 *, *: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; -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; overflow-x:hidden; }
body { margin:0; color:#383838; font:1em/1.5em var(--font-primary); font-weight: 300; overflow-x:hidden; }
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.5em; font-size:1.3em; line-height:1.8em; }
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; }
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:0.75em 0 0.25em; line-height:1.25; color:var(--brand-blue); font-weight:500; text-rendering:optimizeLegibility; font-family:var(--font-primary); text-wrap: pretty; }
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, .h1 { margin-top:0.5em; font-size:2.5em; }
h2, .h2 { margin:0 0 0.25em; font-size:2.25em; }
h3, .h3 { margin-bottom:1em; font-size:1.5em; }
h4, .h4 { font-size:1.35em; }
h5, .h5 { font-size:1.25em; }
h6, .h6 { font-size:1.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-primary); 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-primary); 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; color:var(--gray); text-align:right; font-weight:normal; font-style:normal; font-family:var(--font-secondary); }
 
 /* Fonts
 ----------------------------------------------------*/
 @font-face {
     font-display: swap;
     font-family: GP;
     font-style: normal;
     font-weight: 300;
     src: url(https://static.nd.edu/fonts/gp-min/gp-book.woff2) format("woff2"),url(https://static.nd.edu/fonts/gp-min/gp-book.woff) format("woff")
 }
 
 @font-face {
     font-display: swap;
     font-family: GP;
     font-style: normal;
     font-weight: 400;
     src: url(https://static.nd.edu/fonts/gp-min/gp-medium.woff2) format("woff2"),url(https://static.nd.edu/fonts/gp-min/gp-medium.woff) format("woff")
 }
 
 @font-face {
     font-display: swap;
     font-family: GP;
     font-style: normal;
     font-weight: 700;
     src: url(https://static.nd.edu/fonts/gp-min/gp-bold.woff2) format("woff2"),url(https://static.nd.edu/fonts/gp-min/gp-bold.woff) format("woff")
 }
 
 @font-face {
     font-display: swap;
     font-family: Garamond-Pro;
     font-style: normal;
     font-weight: 400;
     font-weight: 300;
     src: url(https://static.nd.edu/fonts/garamond/garamond-premier-pro-subhead-regular.woff2) format("woff2"),url(https://static.nd.edu/fonts/garamond/garamond-premier-pro-subhead-regular.woff) format("woff")
 }
 
 @font-face {
     font-display: swap;
     font-family: Garamond-Pro;
     font-style: italic;
     font-weight: 400;
     font-weight: 300;
     src: url(https://static.nd.edu/fonts/garamond/garamond-premier-pro-subhead-italic.woff2) format("woff2"),url(https://static.nd.edu/fonts/garamond/garamond-premier-pro-subhead-italic.woff) format("woff")
 }

/* 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; 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,
  .image-left,
  .figgrouping { 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; }
  
  .figgrouping .full,
  .figgrouping .figgroup-2,
  .figgrouping .figgroup-3,
  .figgrouping .figgroup-3-combo,
  .figgrouping .figgroup-4 { margin: var(--grid-gap) 0; }
 
  .figgroup-2 img,
   .figgroup-3 img,
   .figgroup-3-combo img,
   .figgroup-4 img { object-fit: cover; }
  .figgroup-2.full-caption img:first-child { margin-bottom: 1rem; }

 .cap-throw { display: none; }

 .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("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' x='0px' y='0px' viewBox='0 0 800 550' xml:space='preserve'%3E%3Cg%3E%3Ccircle stroke='white' stroke-width='3' fill='%230C2340' cx='112' cy='438' r='56.5'/%3E%3Cpolygon fill='white' points='130.7,438 100.3,420.4 100.3,455.6'/%3E%3C/g%3E%3C/svg%3E") 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,
 .video:focus-visible .play { background-color:rgba(0, 0, 0, 0); background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' x='0px' y='0px' viewBox='0 0 800 550' xml:space='preserve'%3E%3Cg%3E%3Ccircle stroke='%23ae9142' stroke-width='3' fill='%230C2340' cx='112' cy='438' r='56.5'/%3E%3Cpolygon fill='white' points='130.7,438 100.3,420.4 100.3,455.6'/%3E%3C/g%3E%3C/svg%3E"); -webkit-transform:scale(1.15); transform:scale(1.15); }
 .video-container p { 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; }

.skip-links {position:absolute; left:0; top:0; width:100%; margin-left:0; text-align:center; list-style:outside none;}
.skip-links a {position:absolute; left:-100vw; top:0.5em; transition:0.25s;}
.skip-links a:active,
.skip-links a:focus,
.skip-links a:hover {left:0.5em; width:auto; height:auto; overflow:visible; background:#fff; padding:0.5em 1em; color:var(--brand-blue); font-weight:bold; font-size:14px; box-shadow:0 0 10px 0 #000; z-index:999;}

.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; }
 .wrapper { height:100%; }
 .section { grid-column:2/8; margin-top: 3rem; margin-bottom: 3rem; }
 .section.s-full { grid-column:1/9; }
 .section.s-full.mt { margin-top:6rem !important; }


 .section.s-articles,
 .photo-group-content,
 .intro-copy,
 .grid.secondary .narrow-content { margin:0 2rem; }

 .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; margin:3rem 0; }
 .full-bleed img { object-fit:cover; overflow:hidden; height:30vh; grid-column:1/5; }
 .full-bleed figcaption { margin:0 0 2rem; grid-column:2/4; }

 .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-gold); }
 progress::-moz-progress-bar { background-color:var(--brand-gold); }

/* Header
----------------------------------------------------*/
 .brandbar { position:absolute; top:0; left:0; bottom:0; right:0; height:100%; grid-column:1/15; grid-row:1; z-index: 2; }
 .brandbar li { margin:0; padding:0; }
 .brandbar a { display:block; margin:0.5rem auto; 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-nd a:focus-visible { outline:1px dotted white;}
 .dept a { background-position:right 0; }

 .site-header { position:relative; z-index:1; padding:0 0 2rem; display:grid; grid-template-columns:repeat(10,1fr); grid-gap:0; background:var(--sky-blue-light); }
 .site-header.full-header { background: var(--brand-blue); }
 .header-bg { grid-column:1/11; grid-row:1; height:70vh; min-height:46rem; background: var(--brand-blue) url("images/bg-mosaic.svg") left top / 140% auto no-repeat; }

 .header-bg img { width:100%; height:100%; -o-object-fit: cover; object-fit:cover; object-position:center; }
 .header-image { z-index:2; position:relative; overflow:hidden; width:100%; grid-column:1/11; grid-row:2; margin-top:-10rem; min-height:20rem;}
 .header-image-full { display: none; }
 .full-header .header-image-full { z-index:0; position:relative; overflow:hidden; width:100%; grid-column:1/-1; grid-row:1; min-height:20rem; display: block; height: 100%; }
 .full-header .header-image { display: none; }
 .header-image:before { content:''; z-index:2; display:block; position:absolute; top:0; width:100%; height:100%; }
 .header-image img,
 .header-image-full img { width:100%; height:100%; -o-object-fit: cover; object-fit:cover; object-position: center bottom; }

 .titlebar { grid-column:2/10; grid-row:1; position:relative; top:8rem; }
 .full-header .titlebar { grid-row: 2; top: auto; padding: 2rem; z-index: 2; }

 .category,
 .pubdate { margin:0 0 0.5rem; color:#ccc; font-family:var(--font-primary); font-weight:400; text-transform:uppercase; letter-spacing:0.08em; }
 .full-header .category { font-family: var(--font-secondary); }
 .site-header .category { color: var(--brand-gold); }
 .pubdate { margin:2em 0 0; font-family: var(--font-secondary); text-transform:none; letter-spacing:0; font-size:0.8rem; }
 .site-title { margin:0; font-size:2.85rem; line-height:1.25; font-weight:500; font-family:var(--font-primary); color:#fff; }
 .subtitle { margin:1em 0 0; font-size:1.6rem; line-height:1.45em; font-weight:300; font-family:var(--font-secondary); color:#eee; }

/* Content
----------------------------------------------------*/
 .site-content.intro { padding:0 0 1rem; margin:0 0 3rem; background:var(--sky-blue-light); }
 .style--launchday .site-content.intro { color: white; background: var(--brand-blue); }
 .lede { font-size:1.45rem; }

 .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 { font-size:1.275rem; }
 .byline p { margin:0; font-size:1.25em; font-weight:700; font-family:var(--font-secondary); }
 .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); }

/* Related Content
----------------------------------------------------*/
 .related { margin:4rem 0 3rem; }
 .related h2 { margin-top:0.45rem; font-size:1.75rem; color:var(--brand-blue); font-weight:700; font-family:var(--font-primary); }
 .related .image { margin-right:0.75em; float:left; width:130px; }
 .related .category { display:block; margin:0.75rem 0 0; font-size:0.8rem; line-height:1.25rem; color:var(--gray); }
 .related p.subtitle { margin-top:0; font-size:0.925rem; font-family:var(--font-secondary); font-weight:400; }
 .related .text-right { margin:0; grid-column:2/4; }

/* Cards
----------------------------------------------------*/
 .grid,
 .narrow-content-card { margin:2rem 0; }
 .narrow-content-card.last-visit { margin: 0; }
 .mt-overlap { margin:0 2rem; }
 .mt-overlap .card p,
 .narrow-content p { font-family:var(--font-secondary); font-size:1.3em; line-height:1.8em;}

 .card-label { color:var(--gray); font-family:var(--font-primary); }
 .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 }

  .card {margin-bottom:1em; display:block; vertical-align:top; border-bottom:4px solid transparent; vertical-align:top; color:#1a324e; transition:all 125ms ease-in-out; text-align:left;}
  .card a {text-decoration:none;}
  .card.hover-bg:hover {background:#e1e8f2; border-bottom:4px solid #c1cddd; transform:scale(1.0125);}
  .card h3 { margin:0 0 1em; color:#0c2340; font-weight:500; font-family:var(--font-primary); }
  .card .image { margin-right:0.75em; float:left; width:50%; }

  .card { display: flex; flex-flow: column; width:100%; position: relative; margin:0; transition: all 125ms ease; }
  .card .category { margin:1rem 0 0; font-size:0.8rem; color:var(--gray); }
  .card .pubdate { color:var(--gray); }
  .card .card-image { order: -1; margin: 0; }
  .card .card-title { margin:1rem 0 0.75rem; font-size:1.5rem; }
  .card.horizontal .card-body { align-self:center; }
  .card.horizontal .card-body .pubdate { margin:-0.75rem 0 0.75rem; font-size:0.9rem; color:var(--gray); }
  .card p { margin-bottom:0.5rem; font-family:var(--font-secondary); font-size:1.1rem; line-height:1.6; color:#333; }

  .people .card .card-title { margin:0 0 1rem; }

  .grid h2 { margin-top:2rem; }
  .grid .card-1 h2:after { display:none; }

  .card-label.category {font-size:1rem; margin:0.5rem 0; color:#555; font-family:var(--font-secondary); font-weight:400; letter-spacing:0.08rem; text-transform:uppercase;}

  .card-link {display: block;text-decoration:none;}
  .card-link:hover {text-decoration: none;}
  .card-link::before {content: ""; display: block; position: absolute; top: 0; bottom: 0; right: 0; left: 0; z-index: 2;}

  .grid.photo-group { display:grid; grid-template-columns: repeat(8, 1fr); grid-gap:0; margin:2rem 0; }
  .photo-group img { grid-column:span 4; }

  .grid.photo-group { display:grid; margin:2rem 0; grid-template-columns: repeat(12, 1fr); grid-gap: 0.25rem; }
  .grid.photo-group .video,
  .grid.photo-group .embed-outer { grid-column: 1/-1; }
  .photo-group.grotto img { grid-column:1/13; }

  .grid.rg-0 { row-gap:0; }
  .mt { margin-top:2rem !important; }
  .mb { margin-bottom:2rem !important; }
  .mt-0 { margin-top:0 !important; }

  .pre-commencement-features { margin: 3rem var(--grid-gap); }

  .icon-profile.btn,
  .icon-podcast.btn,
  .icon-news.btn,
  .icon-video.btn { margin-bottom:1rem; padding:0.35rem 0.5rem 0.25rem 2rem; background-position:7% 50%; background-size:1.35rem; background-repeat:no-repeat; }
  .icon-profile.btn { background-image:url('images/icon-profile.svg'); }
  .icon-podcast.btn { background-image:url('images/icon-podcast.svg'); }
  .icon-video.btn { background-image:url('images/icon-video.svg'); }
  .icon-news.btn { padding:0.35rem 0.5rem 0.25rem 2.5rem; background-image:url('images/icon-news.svg'); }

  .narrow-content.links { padding:0.5rem 1.5rem 1rem; background:var(--sky-blue-light); }
  .narrow-content.links li { margin:1rem 0; list-style:none; font-family:var(--font-secondary); }
  .narrow-content.links.links-video { margin:2rem 0 3rem; }


 .photo-group-grads { grid-column:1/13; grid-row:2; display:grid; grid-template-columns:repeat(8, 1fr); margin:2rem 0;  }
  .photo-group-grads .img { grid-column:span 4; position:relative; }
  .photo-group.photo-group-grads .narrow-content { grid-column:1/13; grid-row:1; margin:1rem 2rem 0; }
  .photo-group.photo-group-grads p { margin-bottom:0; }

 .bg,
 .bg img { display:none; }

 .site-content.student-profiles { background: url('images/hdr-campus-800.jpg') center center / cover no-repeat; margin: 5vw 0; }
  .student-profiles .section { padding: 2rem 0; }
 .student-stories.grid { --grid-gap: 0.25rem; margin: 3rem var(--gutter-width); padding: 0; row-gap: var(--grid-gap); }
   .student-stories h2 { margin-top: 0; }
 .student-stories h2:after { display: none; }
 .student-stories li { margin: 0; }
 .student-stories li:first-child { padding: 1.5rem; }
 .student-stories li a { position: relative; display: block; aspect-ratio: 8 / 5.33; }
 .student-stories li img { object-fit: cover; height: 100%; }
 .student-stories li .overlay { position:absolute; top:0; left:0; width:100%; height:100%; background:rgba(0, 0, 0, .125); box-shadow:inset 0 -6rem 5rem rgba(0,0,0,0.5); transition:background 0.5s ease; }
 .student-stories li a:hover .overlay { display:block; background:rgba(0, 0, 0, .35); }
 .title { z-index:1; position:absolute; margin:0; left:1.5rem; bottom:1rem; font-size:1.15rem; color:#fff; }
 .hovercap { position:absolute; width:100%; padding:10px;  bottom:0; color:#fff; }


/* 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 { font-family:var(--font-secondary); font-weight:500; }
 .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:3.75rem; }

 .hover-more {padding-right:2.5rem; background-position: calc(100% - 1.5rem) 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 {padding-right:2rem;}

/* 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:hover { background-color: var(--sky-blue-light); transform: scale(1.03); }
 .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; }

 .links .btn:hover,
 .links .btn:focus { background-color: white; }

 .text-right,
 .text-bottom-right { text-align:right; margin-bottom:0; }
 .title svg { vertical-align:middle; }

/* 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.footer-img { margin-bottom:0; position:relative; }
  .full-bleed.footer-img:after { content: ""; position: absolute; left: 0; top: 0; height: 100%; width: 100%; background-color: var(--brand-blue); opacity: 0.5; z-index: 1; }
 .full-bleed.footer-img img { opacity: 0.8; }
 .full-bleed.footer-img p { position:absolute; display:flex; align-items:center; text-align:center; justify-content:center; padding:0 1rem; width:100%; height:100%; color:#fff; font-size:1.5rem; line-height:1.4; font-family:var(--font-primary); z-index: 2; }

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

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

/* Header
----------------------------------------------------*/
 .lede { font-size:1.8rem; }

/* 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-image-full { aspect-ratio: 8/5; width: 100%; }
 .header-video { padding-top:54.875%; }

 .video-right {width:52%; float:right; margin:0 0 1.2em 3em;}

 .photo-group-content { display: flex; flex-flow: row nowrap; }
  .photo-group-content p { flex-grow: 3; }
}
/** 768px **
----------------------------------------------------*/
@media only screen and (min-width:48em) {

/* Header
----------------------------------------------------*/
 html { background-attachment:fixed; }
 .brandbar li { margin:0 auto; }
 .header-image { height:52vh; min-height:34.75rem; }
.full-header .header-image-full::after { content: ""; height: 60%; width: 100%; background: linear-gradient(0deg,rgba(12, 35, 64, 1) 0%, rgba(12, 35, 64, 0) 100%), url(images/bg-mosaic.svg) -50vw top / 100vw auto repeat-x; position: absolute; bottom: 0; left: 0; z-index: 1; }

 .site-title { font-size:3em; }
 .subtitle { font-size:1.8rem; }

/* Content
----------------------------------------------------*/
 h1, .h1 { font-size:3.25em; }
 h2, .h2 { font-size: 3vw; }
 h3, .h3 { font-size:1.85em; }
 h4, .h4 { font-size:1.5em; }
 h5, .h5 { font-size:1.25em; }
 h6, .h6 { font-size:1.1em; }

 .section.s-articles,
 .photo-group-content,
 .intro-copy { margin: 0 3rem; }
 .titlebar { margin: 3rem 3rem 0; }
    .full-header .titlebar { grid-column: 1/-1; grid-row: 1; align-self: end; margin: 0 0 4vh; text-align: center; top: auto; padding: 0 2rem; }

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

 .related { display:grid; grid-template-columns:repeat(3, 1fr); grid-gap:var(--grid-gap); }
 .related article { width:48%; display:inline-block; margin-right:1%; }
 .related.float-right article { width:48%; margin-right:1%; display:inline-block; }
 .related.main article { width:49%; margin:0 0.115em; display:inline-block; }

 /* Cards - Grid */
  .card.horizontal {flex-flow:row; grid-column:span 12; }
  .horizontal > .card-image {width: 32%; min-width: 32%;}
  .horizontal > .card-image.lg-image { width: 65%; min-width: 65%; }
  .horizontal > .card-body {width: 100%;}
  .horizontal > .card-image + .card-body { padding:0 4rem 0 2rem; }

  .grid,
  .grid.photo-group { display:grid; grid-template-rows: auto; grid-template-columns: repeat(12, 1fr); grid-gap:var(--grid-gap); }
  .grid.photo-group { --grid-gap: 0.25rem; }
  .grid.hentry {margin-bottom:4rem; }
  .grid h2 { grid-column:1/13; }
  .confer-degrees { margin:6rem auto; }
  .hentry.wider { width: calc(100% + 10vw); margin-left: -5vw; }
  .card-1.card-image { grid-column:1/8; }
  .card-1.article-content { grid-column:8/13; }
  .s-full .card-1.article-content { grid-column:8/13; }
  .card-1.article-content.card-body { padding:1rem 4rem 3rem 1rem; align-self:center; }
  .card-2 { grid-column:span 6; }
  .card-3 { grid-column:span 6; }
  .photo-group-grads { margin:0; }
  .photo-group.photo-group-grads { margin:0 0 4rem; grid-template-columns:repeat(8, 1fr); grid-gap:2rem; }
  .photo-group.photo-group-grads .narrow-content { grid-column:1/9; grid-row:1; margin:0 3rem; }
  .bg { display:block; grid-column:1/9; }
  .title { font-size:1.75rem; }
  .photo-group img { grid-column:span 3; }
  .photo-group.photo-group-grads .narrow-content p { margin-bottom:1rem; }
  .photo-group.photo-group-grads h3 { margin-bottom:1rem; font-size:2.25rem; }


  .site-content.student-profiles { background: url('images/hdr-campus-1200.jpg') center center / cover no-repeat; }

  .grid.secondary { display:grid; margin:2rem 0 0; grid-template-rows: auto; grid-template-columns: repeat(16, 1fr); grid-gap:var(--grid-gap); }
  .grid.secondary .narrow-content,
  .grid.secondary .narrow-content-card,
  .grid.secondary .photo-group { margin:0; }
  .secondary .narrow-content-card { grid-column:8/17; }
  .secondary .narrow-content { grid-column:3/7; grid-row:1; }

  .narrow-content { grid-column:1/13; }
  .narrow-content-card { grid-column:1/13; }
  .narrow-content p { margin-bottom:0; }

  .hover-more {background-position-x: calc(100% - 2rem); background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 192 512"%3E%3Cpath fill="transparent" 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');}

  .card:hover .hover-more,
  .hover-more:hover {background-position-x: calc(100% - 1.5rem); 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');}

  .full-bleed.footer-img p { font-size:2.5rem; }


/* 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,
  .figgroup-3,
  .figgroup-3-combo,
  .figgroup-4,
  .figgrouping { margin:3rem 0; clear: both; }
  .figgroup-2.full-caption img:first-child { margin-bottom: 0; }
 .full-bleed img { height:60vh; }
 .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; }

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

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

 /* Header
 ----------------------------------------------------*/
 .cap-throw { display: block; position: fixed; z-index: 10; height: 100vh; width: 100vw; grid-column: 1/15; grid-row: 1/1; pointer-events: none; }
 .category { font-size:1.2rem; margin:0 0 0.5rem; }
 .site-title { font-size:3rem; }

 .card-3 { grid-column:span 4; }

 .titlebar { grid-column:3/9; }

 .confer-degrees .card-body { margin-top: 4rem; }

 .card .card-title { font-size: 2rem; }
 .site-content.intro { padding:0 0 7rem; }
 .mt-overlap { margin:-5.5rem 0 0; }

 .full-header .header-image-full { position:relative; overflow:hidden; width:100%; grid-column:1/15; grid-row:1; min-height:20rem; display: block; height: 100vh; }

/* Images
----------------------------------------------------*/
 .full,
 .figgroup-2,
 .figgroup-3,
 .figgroup-3-combo,
 .figgroup-4,
 .figgrouping { margin:4rem var(--offset); }

  .photo-quote blockquote p { margin:1em 1rem; }
   .photo-quote.pull blockquote { grid-column:2/8; }
   .photo-quote.pull figure { grid-column:2/8; width:60%; }

 .image-right,
 .video-right { margin-right:var(--offset); }
 


 /* Content
 ----------------------------------------------------*/
 blockquote { margin:0; }
 blockquote.pull p { margin-top:0; }
 .pull { width:40vw; margin-right:-8vw; float:right; }

  .card-1 .card-title { margin:0 0 1.5rem; }
  .card-3 .card-title { font-size:2rem; }
  .card-1.article-content .card-title { font-size:2.25rem;}

  .photo-group-content { display:grid; grid-template-columns:repeat(2, 1fr); margin:4rem 2rem 0; align-items:center; }
  .photo-group-content h2,
  .photo-group-content p { grid-column:1/3; }
  .photo-group-content .text-right { grid-column:3/4; margin:0; }

 .narrow-content.links { grid-column:10/13; padding:0.5rem 1.75rem 1rem; margin:1rem 0 0; }
 .narrow-content.links.full-width { grid-column:1/13; }
 .narrow-content.links h3 { margin-bottom: 1rem; }
  .narrow-content.links ul { padding-left:1rem; }
  .narrow-content.links.full-width ul { display: flex; flex-flow: row; }
  .narrow-content.links.full-width li { padding: 0 1rem; }
 .narrow-content-card.left { grid-column:1/10; }
 .narrow-content-card.left-video { grid-column:1/8; }
 .narrow-content.links.links-video { grid-column:9/13; position:relative;  }
 .narrow-content.links.links-video .text-bottom-right { position:absolute; bottom:1rem; right:1rem; }

 .full-bleed.footer-img p { font-size:3.5rem; }

 .card-1.article-content.card-body { padding:4rem 4rem 4rem 1rem; }


 /* 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 { font-size:3.75em; }
 .subtitle { font-size:1.9rem; }

 /* Images
----------------------------------------------------*/

/* Content
----------------------------------------------------*/

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

 .card-1 p { font-size:1.2rem; }
 .narrow-content { grid-column:1/4; }
 .narrow-content-card { grid-column:5/13; }

 .photo-group-grads { grid-column:4/9; grid-row:1; display:grid; grid-template-columns:repeat(8, 1fr); }
 .photo-group.photo-group-grads { margin-top:4rem; }
  .photo-group.photo-group-grads .narrow-content { grid-column:2/4; grid-row:1; margin:1rem 1rem 0 0; }

  .site-content.student-profiles { background: none; }
 .site-content.student-profiles::after { content: ""; top: 0; left: 0; width: 100%; height: 100%; position: absolute; background: url('images/hdr-campus-1600.jpg') center center / cover no-repeat; margin-left: calc(var(--gutter-width) * -3); z-index: -1; }
  .student-profiles .section { padding: 0; }

 .bg { display:block; grid-column:1/7; grid-row:1; margin:-3rem 0 3rem; }
 .bg img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }

 .mt-overlap { margin:-8rem 0 4rem; }

}

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

 /* Header
----------------------------------------------------*/
 .site-header { display:grid; grid-template-columns:repeat(14,1fr); grid-gap:4rem; padding:0 0 4.25rem; }
  .header-bg { grid-row:1; grid-column:1/13; height:92vh; min-height:50rem; z-index:-999; }
  .header-image { grid-row:1; grid-column:7/15; height:94vh; min-height:50rem; margin-top: 10rem; }
   .header-image:before { box-shadow:none; }
  .titlebar { grid-row:1; grid-column:2/7; top:14rem; }
 .category { font-size:1.5rem; margin:0 0 0.5rem; }
 .site-title { font-size:3.85rem; }
  .full-header .site-title,
  .full-header .subtitle,
  .full-header .pubdate { text-align: center; }
 .subtitle { font-size:1.9rem; }

  /* Content + Images
----------------------------------------------------*/
 .site-content { margin:auto; display:grid; grid-template-columns:repeat(8, 1fr); grid-gap:var(--grid-gap); position: relative; }

 .section { grid-column:3/7; }
 .section.s-articles { grid-column:2/8; margin:0; }

 .s-full .card-1.article-content { grid-column:8/12; padding-left:2rem !important; }
 .s-full .card-1.article-content .card-title { font-size:2.5rem; }

 .card-1.article-content.card-body { padding:3rem 4rem 4rem 1rem; }

 .full-bleed img { height:80vh; }

 .photo-group-content { display:grid; grid-template-columns: repeat(8, 1fr); grid-gap:var(--grid-gap); margin:4rem 0 0; }
  .photo-group-content h2,
  .photo-group-content p { grid-column:2/6; }
  .photo-group-content .text-right { grid-column:6/8;}
 .photo-group.photo-group-grads .narrow-content { margin-top:6rem; }
 .narrow-content { margin-top:4rem; }

 .mt-6 { margin-top:6rem !important; }

 /* Footer
----------------------------------------------------*/
 .footer-global .col { max-width:78vw;}

}

/** 1600px **
----------------------------------------------------*/
@media only screen and (min-width:100em) {
 .site-title { font-size: 5vw; }
 .card p { max-width:48rem; }
}

/** 1800px **
----------------------------------------------------*/
@media only screen and (min-width:112.5em) {
 .pull { width:25vw; }
 .card.horizontal .card-body { margin:1rem 0 3rem; }
}

/* 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;}
 .icon[data-icon="external-link"] { margin-left: 0.25em; width: 0.7em; height: 0.7em; }

/* 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')
}


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

@media screen {
 /* Brand Bar
 ----------------------------------------------------*/
 .dept-nd a {width: 220px; margin: 3rem auto; background-image:url('https://www.nd.edu/assets/css/images/marks/white/ndmark.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,
 .icon,
 .skip-links,
 .video,
 .video-caption,
 .related,
 .footer-global-links,
 .social,
 .getty,
 .video-container,
 .grid,
 .full-bleed.footer-img {display:none;}

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

 .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 { margin:1rem 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-header a,
 .site-title a,
 .subline a { color: var(--link-blue); }

 .lede {font-size:1.2rem;}
 .site-title {margin:4px 0 2px; font-size:1.75em; font-family:var(--font-primary); 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: var(--font-primary); 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%; }
}

/*************************************************************************************
 * Grid
 ************************************************************************************/
.row { width:100%; flex-flow:row; }
.row-container { flex-flow:row; padding-left:0; padding-right:0; max-width:90vw; margin:0 auto; }
.grid { display:flex; flex-flow:row wrap; list-style:none; padding:0; clear:both; }
.grid-xs-2 > * { width:50%; }
.grid-xs-3 > * { width:33.33%; }
.grid-xs-4 > * { width:25%; }
.grid-xs-5 > * { width:20%; }
.grid-xs-6 > * { width:16.66%; }
.order-xs--1 { order:-1; }
.order-xs-0  { order:0; }
.order-xs-1  { order:1; }
.order-xs-2  { order:2; }
.order-xs-3  { order:3; }
.order-xs-4  { order:4; }
.order-xs-5  { order:5; }

@media only screen and (min-width:30em), print {
  .grid-sm-2 > * { width:50%; }
  .grid-sm-3 > * { width:33.33%; }
  .grid-sm-4 > * { width:25%; }
  .grid-sm-5 > * { width:20%; }
  .grid-sm-6 > * { width:16.66%; }
  .grid-sm-6 > .span-sm-2 { width:33.3%; }
  .grid-sm-5 > .span-sm-2 { width:40%; }
  .grid-sm-4 > .span-sm-2,
  .grid-sm-6 > .span-sm-3 { width:50%; }
  .grid-sm-5 > .span-sm-3 { width:60%; }
  .grid-sm-3 > .span-sm-2,
  .grid-sm-6 > .span-sm-4 { width:66.7%; }
  .grid-sm-4 > .span-sm-3 { width:75%; }
  .grid-sm-5 > .span-sm-4 { width:80%; }
  .grid-sm-6 > .span-sm-5 { width:83.4%; }
  .order-sm--1 { order:-1; }
  .order-sm-0  { order:0; }
  .order-sm-1  { order:1; }
  .order-sm-2  { order:2; }
  .order-sm-3  { order:3; }
  .order-sm-4  { order:4; }
  .order-sm-5  { order:5; }
}

@media only screen and (min-width:48em), print {
  .grid-md-2 > * { width:50%; }
  .grid-md-3 > * { width:33.33%; }
  .grid-md-4 > * { width:25%; }
  .grid-md-5 > * { width:20%; }
  .grid-md-6 > * { width:16.66%; }
  .grid-md-6 > .span-md-2 { width:33.3%; }
  .grid-md-5 > .span-md-2 { width:40%; }
  .grid-md-4 > .span-md-2,
  .grid-md-6 > .span-md-3 { width:50%; }
  .grid-md-5 > .span-md-3 { width:60%; }
  .grid-md-3 > .span-md-2,
  .grid-md-6 > .span-md-4 { width:66.7%; }
  .grid-md-4 > .span-md-3 { width:75%; }
  .grid-md-5 > .span-md-4 { width:80%; }
  .grid-md-6 > .span-md-5 { width:83.4%; }
  .order-md--1 { order:-1; }
  .order-md-0  { order:0; }
  .order-md-1  { order:1; }
  .order-md-2  { order:2; }
  .order-md-3  { order:3; }
  .order-md-4  { order:4; }
  .order-md-5  { order:5; }
}

@media only screen and (min-width:60em) {
  .grid-lg-2 > * { width:50%; }
  .grid-lg-3 > * { width:33.33%; }
  .grid-lg-4 > * { width:25%; }
  .grid-lg-5 > * { width:20%; }
  .grid-lg-6 > * { width:16.66%; }
  .grid-lg-6 > .span-lg-2 { width:33.3%; }
  .grid-lg-5 > .span-lg-2 { width:40%; }
  .grid-lg-4 > .span-lg-2,
  .grid-lg-6 > .span-lg-3 { width:50%; }
  .grid-lg-5 > .span-lg-3 { width:60%; }
  .grid-lg-3 > .span-lg-2,
  .grid-lg-6 > .span-lg-4 { width:66.7%; }
  .grid-lg-4 > .span-lg-3 { width:75%; }
  .grid-lg-5 > .span-lg-4 { width:80%; }
  .grid-lg-6 > .span-lg-5 { width:83.4%; }
  .order-lg--1 { order:-1; }
  .order-lg-0  { order:0; }
  .order-lg-1  { order:1; }
  .order-lg-2  { order:2; }
  .order-lg-3  { order:3; }
  .order-lg-4  { order:4; }
  .order-lg-5  { order:5; }
}

@media only screen and (min-width:100em) {
  .grid-xl-2 > * { width:50%; }
  .grid-xl-3 > * { width:33.33%; }
  .grid-xl-4 > * { width:25%; }
  .grid-xl-5 > * { width:20%; }
  .grid-xl-6 > * { width:16.66%; }
  .grid-xl-6 > .span-xl-2 { width:33.3%; }
  .grid-xl-5 > .span-xl-2 { width:40%; }
  .grid-xl-4 > .span-xl-2,
  .grid-xl-6 > .span-xl-3 { width:50%; }
  .grid-xl-5 > .span-xl-3 { width:60%; }
  .grid-xl-3 > .span-xl-2,
  .grid-xl-6 > .span-xl-4 { width:66.7%; }
  .grid-xl-4 > .span-xl-3 { width:75%; }
  .grid-xl-5 > .span-xl-4 { width:80%; }
  .grid-xl-6 > .span-xl-5 { width:83.4%; }
  .order-xl--1 { order:-1; }
  .order-xl-0  { order:0; }
  .order-xl-1  { order:1; }
  .order-xl-2  { order:2; }
  .order-xl-3  { order:3; }
  .order-xl-4  { order:4; }
  .order-xl-5  { order:5; }
}

@supports (display:grid) {
  .grid { display:grid; grid-gap:var(--grid-gap); }
  .grid > * { display:block; overflow:auto; width:auto; }
  .grid.no-gap { grid-gap:0; }
  .grid-xs-2 { grid-template-columns:repeat(2, minmax(0,50%)); }
  .grid-xs-3 { grid-template-columns:repeat(3, minmax(0,33.3%)); }
  .grid-xs-4 { grid-template-columns:repeat(4, minmax(0,25%)); }
  .grid-xs-5 { grid-template-columns:repeat(5, minmax(0,20%)); }
  .grid-xs-6 { grid-template-columns:repeat(6, minmax(0,16.6%)); }
  [class*="grid-xs-"] > [class*="span-xs"] { width:auto; }
  .span-xs-1 { grid-column:span 1; }
  .span-xs-2 { grid-column:span 2; }
  .span-xs-3 { grid-column:span 3; }
  .span-xs-4 { grid-column:span 4; }
  .span-xs-5 { grid-column:span 5; }
  .span-xs-6 { grid-column:span 6; }
  .span-full, .full { grid-column:1/-1; }

  /* 480px
  ----------------------------------------------------*/
  @media only screen and (min-width:30em), print {
    .grid-sm-1 { grid-template-columns:100%; }
    .grid-sm-2 { grid-template-columns:repeat(2, minmax(0,50%)); }
    .grid-sm-3 { grid-template-columns:repeat(3, minmax(0,33.3%)); }
    .grid-sm-4 { grid-template-columns:repeat(4, minmax(0,25%)); }
    .grid-sm-5 { grid-template-columns:repeat(5, minmax(0,20%)); }
    .grid-sm-6 { grid-template-columns:repeat(6, minmax(0,16.6%)); }
    [class*="grid-sm-"] > [class*="span-sm"] { width:auto; }
    .span-sm-1 { grid-column:span 1; }
    .span-sm-2 { grid-column:span 2; }
    .span-sm-3 { grid-column:span 3; }
    .span-sm-4 { grid-column:span 4; }
    .span-sm-5 { grid-column:span 5; }
    .span-sm-6 { grid-column:span 6; }
  }

  /* 768px
  ----------------------------------------------------*/
  @media only screen and (min-width:48em), print {
    .grid > * { overflow:inherit; }
    .grid-md-1 { grid-template-columns:100%; }
    .grid-md-2 { grid-template-columns:repeat(2, minmax(0,50%)); }
    .grid-md-3 { grid-template-columns:repeat(3, minmax(0,33.3%)); }
    .grid-md-4 { grid-template-columns:repeat(4, minmax(0,25%)); }
    .grid-md-5 { grid-template-columns:repeat(5, minmax(0,20%)); }
    .grid-md-6 { grid-template-columns:repeat(6, minmax(0,16.6%)); }
    [class*="grid-md-"] > [class*="span-md"] { width:auto; }
    .span-md-1 { grid-column:span 1; }
    .span-md-2 { grid-column:span 2; }
    .span-md-3 { grid-column:span 3; }
    .span-md-4 { grid-column:span 4; }
    .span-md-5 { grid-column:span 5; }
    .span-md-6 { grid-column:span 6; }
  }

  /* 960px
  ----------------------------------------------------*/
  @media only screen and (min-width:60em) {
    .grid-lg-1 { grid-template-columns:100%; }
    .grid-lg-2 { grid-template-columns:repeat(2, minmax(0,50%)); }
    .grid-lg-3 { grid-template-columns:repeat(3, minmax(0,33.3%)); }
    .grid-lg-4 { grid-template-columns:repeat(4, minmax(0,25%)); }
    .grid-lg-5 { grid-template-columns:repeat(5, minmax(0,20%)); }
    .grid-lg-6 { grid-template-columns:repeat(6, minmax(0,16.6%)); }
    [class*="grid-lg-"] > [class*="span-lg"] { width:auto; }
    .span-lg-1 { grid-column:span 1; }
    .span-lg-2 { grid-column:span 2; }
    .span-lg-3 { grid-column:span 3; }
    .span-lg-4 { grid-column:span 4; }
    .span-lg-5 { grid-column:span 5; }
    .span-lg-6 { grid-column:span 6; }
  }

  /* 1600px
  ----------------------------------------------------*/
  @media only screen and (min-width:100em) {
    .grid-xl-1 { grid-template-columns:100%; }
    .grid-xl-2 { grid-template-columns:repeat(2, minmax(0,50%)); }
    .grid-xl-3 { grid-template-columns:repeat(3, minmax(0,33.3%)); }
    .grid-xl-4 { grid-template-columns:repeat(4, minmax(0,25%)); }
    .grid-xl-5 { grid-template-columns:repeat(5, minmax(0,20%)); }
    .grid-xl-6 { grid-template-columns:repeat(6, minmax(0,16.6%)); }
    [class*="grid-xl-"] > [class*="span-xl"] { width:auto; }
    .span-xl-1 { grid-column:span 1; }
    .span-xl-2 { grid-column:span 2; }
    .span-xl-3 { grid-column:span 3; }
    .span-xl-4 { grid-column:span 4; }
    .span-xl-5 { grid-column:span 5; }
    .span-xl-6 { grid-column:span 6; }
  }
}

/* 1920px
----------------------------------------------------*/
@media only screen and (min-width:120em) {
  .row-container { max-width:108rem; }
}

/* Print
----------------------------------------------------*/
@media print {
  .grid-print-1 { grid-template-columns:100%; }
  .grid-print-2 { grid-template-columns:repeat(2, minmax(0,50%)); }
  .grid-print-3 { grid-template-columns:repeat(3, minmax(0,33.3%)); }
  .grid-print-4 { grid-template-columns:repeat(4, minmax(0,25%)); }
  .grid-print-5 { grid-template-columns:repeat(5, minmax(0,20%)); }
  .grid-print-6 { grid-template-columns:repeat(6, minmax(0,16.6%)); }
}
