/* prettier-ignore */
/* prettier-ignore */
/* prettier-ignore */
:root { --color-gray-dark: #383838; --color-gray-medium: #707070; --color-gray-light: #a8a8a8; --color-gray-lightest: #e0e0e0; --color-gold: #be8303; --color-gold-tint: #f7f0e1; --color-copper: #be4e0e; --color-teal: #0085ad; }

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document ========================================================================== */
/** 1. Correct the line height in all browsers. 2. Prevent adjustments of font size after orientation changes in iOS. */
html { line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ }

/* Sections ========================================================================== */
/** Remove the margin in all browsers. */
body { margin: 0; }

/** Render the `main` element consistently in IE. */
main { display: block; }

/** Correct the font size and margin on `h1` elements within `section` and `article` contexts in Chrome, Firefox, and Safari. */
h1 { font-size: 2em; margin: 0.67em 0; }

/* Grouping content ========================================================================== */
/** 1. Add the correct box sizing in Firefox. 2. Show the overflow in Edge and IE. */
hr { -webkit-box-sizing: content-box; box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ }

/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
pre { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }

/* Text-level semantics ========================================================================== */
/** Remove the gray background on active links in IE 10. */
a { background-color: transparent; }

/** 1. Remove the bottom border in Chrome 57- 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */
abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ -webkit-text-decoration: underline dotted; text-decoration: underline dotted; /* 2 */ }

/** Add the correct font weight in Chrome, Edge, and Safari. */
b, strong { font-weight: bolder; }

/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }

/** Add the correct font size in all browsers. */
small { font-size: 80%; }

/** Prevent `sub` and `sup` elements from affecting the line height in all browsers. */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sub { bottom: -0.25em; }

sup { top: -0.5em; }

/* Embedded content ========================================================================== */
/** Remove the border on images inside links in IE 10. */
img { border-style: none; }

/* Forms ========================================================================== */
/** 1. Change the font styles in all browsers. 2. Remove the margin in Firefox and Safari. */
button, input, optgroup, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 1 */ line-height: 1.15; /* 1 */ margin: 0; /* 2 */ }

/** Show the overflow in IE. 1. Show the overflow in Edge. */
button, input { /* 1 */ overflow: visible; }

/** Remove the inheritance of text transform in Edge, Firefox, and IE. 1. Remove the inheritance of text transform in Firefox. */
button, select { /* 1 */ text-transform: none; }

/** Correct the inability to style clickable types in iOS and Safari. */
button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; }

/** Remove the inner border and padding in Firefox. */
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }

/** Restore the focus styles unset by the previous rule. */
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }

/** Correct the padding in Firefox. */
fieldset { padding: 0.35em 0.75em 0.625em; }

/** 1. Correct the text wrapping in Edge and IE. 2. Correct the color inheritance from `fieldset` elements in IE. 3. Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers. */
legend { -webkit-box-sizing: border-box; box-sizing: border-box; /* 1 */ color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ }

/** Add the correct vertical alignment in Chrome, Firefox, and Opera. */
progress { vertical-align: baseline; }

/** Remove the default vertical scrollbar in IE 10+. */
textarea { overflow: auto; }

/** 1. Add the correct box sizing in IE 10. 2. Remove the padding in IE 10. */
[type="checkbox"], [type="radio"] { -webkit-box-sizing: border-box; box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ }

/** Correct the cursor style of increment and decrement buttons in Chrome. */
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }

/** 1. Correct the odd appearance in Chrome and Safari. 2. Correct the outline style in Safari. */
[type="search"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ }

/** Remove the inner padding in Chrome and Safari on macOS. */
[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

/** 1. Correct the inability to style clickable types in iOS and Safari. 2. Change font properties to `inherit` in Safari. */
::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ }

/* Interactive ========================================================================== */
/* Add the correct display in Edge, IE 10+, and Firefox. */
details { display: block; }

/* Add the correct display in all browsers. */
summary { display: list-item; }

/* Misc ========================================================================== */
/** Add the correct display in IE 10+. */
template { display: none; }

/** Add the correct display in IE 10. */
[hidden] { display: none; }

h1 .octicon, h2 .octicon, h3 .octicon, h4 .octicon, h5 .octicon, h6 .octicon { visibility: hidden; }

h1:hover .octicon, h2:hover .octicon, h3:hover .octicon, h4:hover .octicon, h5:hover .octicon, h6:hover .octicon { visibility: visible; }

.octicon { padding-left: 0.5rem; }

/** Set up a decent box model on the root element */
html { -webkit-box-sizing: border-box; box-sizing: border-box; }

/* Make body a flex element so short pages can fill vertical screen space */
body { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; height: 100vh; }

/** Make all elements from the DOM inherit from the parent box-sizing Since `*` has a specificity of 0, it does not override the `html` value making all elements inheriting from the root box-sizing value See: https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*, *::before, *::after { -webkit-box-sizing: inherit; box-sizing: inherit; }

/** Remove styles for links as a base */
a, a:visited { color: inherit; text-decoration: none; }

/** Styles for text links */
a { text-decoration: underline; word-break: break-word; -webkit-transition: color 150ms ease 50ms; transition: color 150ms ease 50ms; }

a:hover, a:active, a:focus { color: #be8303; }

hr { margin: 1.5rem 0; }

.button--outline, a.button--outline, .button, a.button, button, input[type="submit"] { font-weight: 400; letter-spacing: -0.005em; -webkit-font-kerning: normal; font-kerning: normal; font-size: 1rem; line-height: 1rem; display: inline-block; padding: 1rem; vertical-align: top; white-space: nowrap; padding-left: 1.5rem; padding-right: 1.5rem; text-decoration: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; border-radius: 4px; cursor: pointer; border: 1px solid #000000; background-color: #000000; color: #ffffff; -webkit-transition: border-color 150ms ease 50ms, background-color 150ms ease 50ms, color 150ms ease 50ms, -webkit-box-shadow 150ms ease 50ms; transition: border-color 150ms ease 50ms, background-color 150ms ease 50ms, color 150ms ease 50ms, -webkit-box-shadow 150ms ease 50ms; transition: border-color 150ms ease 50ms, background-color 150ms ease 50ms, color 150ms ease 50ms, box-shadow 150ms ease 50ms; transition: border-color 150ms ease 50ms, background-color 150ms ease 50ms, color 150ms ease 50ms, box-shadow 150ms ease 50ms, -webkit-box-shadow 150ms ease 50ms; }

.button--outline:hover, .button:hover, button:hover, input[type="submit"]:hover, .button--outline:active, .button:active, button:active, input[type="submit"]:active, .button--outline:focus, .button:focus, button:focus, input[type="submit"]:focus { border-color: #be8303; background-color: #be8303; color: #000000; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.12); box-shadow: 0 0 8px rgba(0, 0, 0, 0.12); }

.button, a.button, button, input[type="submit"] { /* Apply default black button styles to all button-like elements */ }

.button--outline, a.button--outline { /* Override button properties for outline button */ border-color: #000000; background-color: transparent; color: #000000; }

form input[type="search"], .form input[type="search"], form input[type="text"], form input[type="email"], form select:not([multiple]), .form input[type="text"], .form input[type="email"], .form select:not([multiple]) { font-weight: 400; letter-spacing: -0.005em; -webkit-font-kerning: normal; font-kerning: normal; font-size: 1rem; line-height: 1rem; display: inline-block; padding: 1rem; vertical-align: top; white-space: nowrap; -webkit-appearance: none; -moz-appearance: none; appearance: none; padding: 0.75rem; display: block; height: 3rem; min-height: 3rem; width: 100%; max-width: 100%; border-radius: 4px; border: 1px solid #a8a8a8; background-color: transparent; -webkit-transition: border-color 150ms ease 50ms, background-color 150ms ease 50ms; transition: border-color 150ms ease 50ms, background-color 150ms ease 50ms; }

form input[type="search"]:disabled, .form input[type="search"]:disabled, form input[type="text"]:disabled, form input[type="email"]:disabled, form select:disabled:not([multiple]), .form input[type="text"]:disabled, .form input[type="email"]:disabled, .form select:disabled:not([multiple]) { background-color: #e0e0e0; color: #707070; cursor: not-allowed; }

form input[type="search"]:not(:disabled):hover, .form input[type="search"]:not(:disabled):hover, form input[type="text"]:not(:disabled):hover, form input[type="email"]:not(:disabled):hover, form select:not(:disabled):hover:not([multiple]), .form input[type="text"]:not(:disabled):hover, .form input[type="email"]:not(:disabled):hover, .form select:not(:disabled):hover:not([multiple]), form input[type="search"]:not(:disabled):active, .form input[type="search"]:not(:disabled):active, form input[type="text"]:not(:disabled):active, form input[type="email"]:not(:disabled):active, form select:not(:disabled):active:not([multiple]), .form input[type="text"]:not(:disabled):active, .form input[type="email"]:not(:disabled):active, .form select:not(:disabled):active:not([multiple]), form input[type="search"]:not(:disabled):focus, .form input[type="search"]:not(:disabled):focus, form input[type="text"]:not(:disabled):focus, form input[type="email"]:not(:disabled):focus, form select:not(:disabled):focus:not([multiple]), .form input[type="text"]:not(:disabled):focus, .form input[type="email"]:not(:disabled):focus, .form select:not(:disabled):focus:not([multiple]) { border-color: #be8303; background-color: #f7f0e1; }

form input[type="search"]:not(:focus):invalid, .form input[type="search"]:not(:focus):invalid, form input[type="text"]:not(:focus):invalid, form input[type="email"]:not(:focus):invalid, form select:not(:focus):invalid:not([multiple]), .form input[type="text"]:not(:focus):invalid, .form input[type="email"]:not(:focus):invalid, .form select:not(:focus):invalid:not([multiple]) { border-color: #be4e0e; background-color: rgba(190, 78, 14, 0.12); color: #be4e0e; }

form, .form { border-top: 1px solid #be8303; padding: 1.5rem 0; }

form .form-control, .form .form-control { margin: 0.75rem 0; position: relative; }

form input[type="text"], form input[type="email"], form select:not([multiple]), .form input[type="text"], .form input[type="email"], .form select:not([multiple]) { /* Offset the top and bottom padding so there's space for the label */ padding-top: 1.25rem; padding-bottom: 0.25rem; /* If there is no label then vertically center the text */ /* Assumes label is placed underneath the input */ /* Initially show the label on top of the input like placeholder text */ /* Make label smaller and move up to make space for text */ }

form input[type="text"]:last-child, form input.no-label[type="text"], form input[type="email"]:last-child, form input.no-label[type="email"], form select:not([multiple]):last-child, form select.no-label:not([multiple]), .form input[type="text"]:last-child, .form input.no-label[type="text"], .form input[type="email"]:last-child, .form input.no-label[type="email"], .form select:not([multiple]):last-child, .form select.no-label:not([multiple]) { padding: 0.75rem; }

form input[type="text"] ~ label, form input[type="email"] ~ label, form select:not([multiple]) ~ label, .form input[type="text"] ~ label, .form input[type="email"] ~ label, .form select:not([multiple]) ~ label { position: absolute; top: 0.75rem; left: 0.75rem; color: #383838; pointer-events: none; -webkit-transition: -webkit-transform ease 50ms; transition: -webkit-transform ease 50ms; transition: transform ease 50ms; transition: transform ease 50ms, -webkit-transform ease 50ms; }

form input[type="text"]:not(:-moz-placeholder-shown) ~ label, form input[type="email"]:not(:-moz-placeholder-shown) ~ label, form select:not([multiple]):not(:-moz-placeholder-shown) ~ label, .form input[type="text"]:not(:-moz-placeholder-shown) ~ label, .form input[type="email"]:not(:-moz-placeholder-shown) ~ label, .form select:not([multiple]):not(:-moz-placeholder-shown) ~ label { transform: scale(0.8125) translateY(-0.75rem); transform-origin: center left; }

form input[type="text"]:not(:-ms-input-placeholder) ~ label, form input[type="email"]:not(:-ms-input-placeholder) ~ label, form select:not([multiple]):not(:-ms-input-placeholder) ~ label, .form input[type="text"]:not(:-ms-input-placeholder) ~ label, .form input[type="email"]:not(:-ms-input-placeholder) ~ label, .form select:not([multiple]):not(:-ms-input-placeholder) ~ label { transform: scale(0.8125) translateY(-0.75rem); transform-origin: center left; }

form input[type="text"]:focus ~ label, form input[type="text"]:not(:placeholder-shown) ~ label, form input[type="email"]:focus ~ label, form input[type="email"]:not(:placeholder-shown) ~ label, form select:not([multiple]):focus ~ label, form select:not([multiple]):not(:placeholder-shown) ~ label, .form input[type="text"]:focus ~ label, .form input[type="text"]:not(:placeholder-shown) ~ label, .form input[type="email"]:focus ~ label, .form input[type="email"]:not(:placeholder-shown) ~ label, .form select:not([multiple]):focus ~ label, .form select:not([multiple]):not(:placeholder-shown) ~ label { -webkit-transform: scale(0.8125) translateY(-0.75rem); transform: scale(0.8125) translateY(-0.75rem); -webkit-transform-origin: center left; transform-origin: center left; }

form input[type="search"], .form input[type="search"] { /* Override the style in normalize.css */ outline-offset: 0; }

.grid { display: grid; grid-column-gap: 2rem; -webkit-box-align: start; -ms-flex-align: start; align-items: start; grid-auto-flow: dense; /* Two equal columns - collapses to single column on mobile */ /* Three equal columns - collapses to single column on mobile */ /* Four equal columns - collapses to two on tablet and single on mobile */ /* Six equal columns - collapses to four on tablet and two on mobile */ /* Twelve equal columns - collapses to eight on tablet and four on mobile */ /* Creates an uneven 2 column layout (narrow / wide) */ }

@media (min-width: 768px) { .grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

@media (min-width: 768px) { .grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

@media (min-width: 768px) { .grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

@media (min-width: 992px) { .grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

@media (min-width: 544px) { .grid--6 { grid-template-columns: repeat(2, 1fr); } }

@media (min-width: 768px) { .grid--6 { grid-template-columns: repeat(4, 1fr); } }

@media (min-width: 992px) { .grid--6 { grid-template-columns: repeat(6, 1fr); } }

@media (min-width: 544px) { .grid--12 { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

@media (min-width: 768px) { .grid--12 { grid-template-columns: repeat(8, minmax(0, 1fr)); } }

@media (min-width: 992px) { .grid--12 { grid-template-columns: repeat(12, minmax(0, 1fr)); } }

.grid--uneven { grid-template-columns: 100%; }

@media (min-width: 768px) { .grid--uneven { grid-template-columns: 25% calc(75% - 3rem); -webkit-column-gap: 3rem; -moz-column-gap: 3rem; column-gap: 3rem; } }

/** Clear inner floats */
.clearfix::after { clear: both; content: ""; display: table; }

/** Content container with gold rule down the side */
.container { /* Center it in the viewport */ margin: 0 auto; /* 1 */ /* Leave 24px on either side */ width: calc(100% - 4rem); /* Set a max width for the container */ max-width: calc(1170px - 4rem); /* Add top and bottom padding, and left side so it sits away from gold rule */ padding: 3rem; /* Shrink right padding for more horizontal space, as there's no rule on right side */ padding-right: 1rem; /* No gold rule on small screens so we leave only the 24px margin on the sides */ /* Add ANU vertical gold rule down the left side on medium & large screens */ position: relative; /* Use after so rule sits above any elements inside the container */ }

@media (max-width: 767px) { .container { width: calc(100% - 3rem); padding: 3rem 0; } }

.container:after { content: ""; width: 1px; background-color: #be8303; position: absolute; top: 0; bottom: 0; left: 0; /* Hide rule on small screens */ }

@media (max-width: 767px) { .container:after { width: 0; } }

/** Hide text while making it readable for screen readers 1. Needed in WebKit-based browsers because of an implementation bug; See: https://code.google.com/p/chromium/issues/detail?id=457146 */
.hide-text { overflow: hidden; padding: 0; /* 1 */ text-indent: 101%; white-space: nowrap; }

/** Hide element while making it readable for screen readers Element will become visible when focussed or active Source: https://www.a11yproject.com/posts/2013-01-11-how-to-hide-content/ */
.visually-hidden:not(:focus):not(:active) { clip: rect(0 0 0 0); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; }

/** Hide underline text decoration. Useful for links that have inherited the underline style. */
.hide-underline { text-decoration: none; }

/* likely that the ANU icons will be used as "images", so width: 100% seems like a sensible default */
svg.anu-icon { width: 100%; }

/* some fontawesome hacks */
svg.icon { width: 1em; height: 1em; vertical-align: -0.125em; fill: currentColor; }

/** For icons that act as standalone links / buttons 1. Makes the icon a standard 16 x 16px size 2. Centers it in a 48 x 48px clickable area 3. Make the icon turn gold when hover / focus / active */
.icon-link, .select-typeahead__clear { font-size: 1rem; display: inline-block; width: 3rem; height: 3rem; padding: 1rem; -webkit-transition: color 150ms ease 50ms; transition: color 150ms ease 50ms; }

.icon-link svg.icon, .select-typeahead__clear svg.icon { vertical-align: top; }

.icon-link:hover, .select-typeahead__clear:hover, .icon-link:active, .select-typeahead__clear:active, .icon-link:focus, .select-typeahead__clear:focus { color: #be8303; }

img { max-width: 100%; }

figure { margin: 1.5rem 0; position: relative; }

figure:first-child { margin-top: 0; }

figure:last-child { margin-bottom: 0; }

figure img { display: block; width: 100%; }

figure img.actual-size { width: auto; margin: auto; }

figure figcaption { font-size: 0.875rem; line-height: 1rem; text-align: center; margin-top: 0.75rem; }

/** Show images in markdown page content full width by default - page content gets put into main element, and everything in markdown gets wrapped by a parapgraph */
main p > img { display: block; width: 100%; /* Inline class style for the img to make it show actual size and centered */ }

main p > img.actual-size { width: auto; margin: auto; }

/** Allows styling paragraph text like a caption in markdown. */
p.caption { font-size: 0.875rem; line-height: 1rem; text-align: center; margin-top: 0.75rem; }

body { font-weight: 300; font-size: 1rem; line-height: 1.5rem; color: #000000; font-family: "Public Sans", "Helvetica Neue Light", "Helvetica Neue", "Helvetica", "Arial", sans-serif; }

h1 { font-weight: 400; letter-spacing: -0.005em; -webkit-font-kerning: normal; font-kerning: normal; font-size: 2.3125rem; line-height: 2.5rem; }

h1.impact { font-weight: 400; letter-spacing: -0.005em; -webkit-font-kerning: normal; font-kerning: normal; text-transform: uppercase; line-height: 1; }

h2, h3, h4, h5, h6 { font-weight: 600; }

h2 { font-size: 1.75rem; line-height: 2rem; }

h3 { font-size: 1.3125rem; line-height: 1.5rem; }

h4 { font-size: 1rem; line-height: 1rem; }

h5 { font-size: 0.8125rem; line-height: 1rem; }

h6 { font-size: 0.6875rem; line-height: 1rem; }

p.lead { font-size: 1.3125rem; line-height: 2rem; }

b, strong { font-weight: 600; }

code, kbd, samp { font-family: "Roboto Mono", "Courier New", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Monaco", monospace; display: inline-block; padding: 0 0.25rem; border-radius: 2px; text-decoration: inherit; }

code { background-color: #f7f0e1; color: #383838; }

kbd { background-color: #e0e0e0; -webkit-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.12), inset 0 0 0 1px #a8a8a8; box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.12), inset 0 0 0 1px #a8a8a8; white-space: nowrap; }

blockquote { /* Not specifying the border color makes it inherit from the text color, which is good for theming */ border-left: 1px solid; padding: 0.75rem 1.5rem; }

blockquote > p { font-weight: 400; letter-spacing: -0.005em; -webkit-font-kerning: normal; font-kerning: normal; font-size: 1.3125rem; line-height: 2rem; color: #be8303; margin: 0; }

blockquote em:last-child { font-weight: 600; font-size: 0.875rem; line-height: 1rem; color: #000000; display: block; margin-top: 1.5rem; }

/** Text spacing */
h1, h2, h3, h4, h5, h6 { margin-top: 1.5rem; margin-bottom: 1rem; }

h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child { margin-top: 0; }

h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child, h6:last-child { margin-bottom: 0; }

p, ol, ul { margin-top: 1rem; margin-bottom: 1rem; }

p:first-child, ol:first-child, ul:first-child { margin-top: 0; }

p:last-child, ol:last-child, ul:last-child { margin-bottom: 0; }

ol ol, ol ul, ul ol, ul ul { margin-top: 0; margin-bottom: 0; }

table { border-collapse: collapse; width: 100%; margin-top: 1.5rem; margin-bottom: 1.5rem; }

table.striped th:nth-child(even), table.striped td:nth-child(even) { background-color: #e0e0e0; }

thead { /* Not specifying border color makes it inherit from text colour, which is good for theming */ border-bottom: 2px solid; }

tr { /* Not specifying border color makes it inherit from text colour, which is good for theming */ border-bottom: 1px solid; }

tr.highlight td, tr.highlight th { /* important used to override .striped style specificity from :nth-child */ background-color: #be8303 !important; /* if background is gold then text should be black */ color: #000000; }

th { font-weight: 600; }

td, th { padding: 0.25rem; vertical-align: top; text-align: left; }

.banner { color: #ffffff; text-decoration: none; position: relative; background-image: var(--background); background-size: cover; background-position: center; background-repeat: no-repeat; /* Place a light transparent black overlay over the image so white text has enough contrast */ /* Image caption for banner background image */ }

.banner:before { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; /* Default banner image overlay color */ background-color: rgba(0, 0, 0, 0.34); }

.banner--none:before { background-color: transparent; }

.banner--lightest:before { background-color: rgba(0, 0, 0, 0.12); }

.banner--light:before { background-color: rgba(0, 0, 0, 0.34); }

.banner--medium:before { background-color: rgba(0, 0, 0, 0.56); }

.banner__content { /* Take up the whole row on small screens */ grid-column: 1 / -1; }

.banner__caption { font-size: 0.875rem; line-height: 1rem; position: absolute; right: 0.75rem; bottom: 0.75rem; color: rgba(255, 255, 255, 0.78); }

@media (min-width: 992px) { .banner .container { padding-top: 6rem; padding-bottom: 6rem; } .banner__content { /* Use 2 of 3 grid columns on large screens */ grid-column: 1 / 3; } }

.breadcrumb { /* Remove link styling from the last breadcrumb which is the current page */ }

.breadcrumb a:last-child { text-decoration: none; }

.collection-nav { font-size: 0.875rem; line-height: 1rem; }

.collection-nav__heading { font-weight: 600; font-size: 1.3125rem; line-height: 1.5rem; margin-bottom: 1rem; }

.collection-nav__heading a { text-decoration: none; }

.collection-nav__heading a svg.icon { -webkit-transition: -webkit-transform 150ms ease 50ms; transition: -webkit-transform 150ms ease 50ms; transition: transform 150ms ease 50ms; transition: transform 150ms ease 50ms, -webkit-transform 150ms ease 50ms; }

.collection-nav__heading a:hover svg.icon, .collection-nav__heading a:active svg.icon, .collection-nav__heading a:focus svg.icon { -webkit-transform: translateX(-0.25rem); transform: translateX(-0.25rem); }

.collection-nav > a { display: block; margin: 0.5rem 0; }

.collection-nav > a.current-page { text-decoration: none; color: #be8303; }

/* Uses figure selector because styles assume cover image is a figure with figcaption */
figure.cover-image { /* Make figure full width on small screens */ margin-left: -1.5rem; margin-right: -1.5rem; }

figure.cover-image img { max-height: 32rem; -o-object-fit: cover; object-fit: cover; }

figure.cover-image figcaption { /* Give caption its normal margins back */ margin-left: 1.5rem; margin-right: 1.5rem; }

@media (min-width: 768px) { figure.cover-image { /* Pull the figure right so it sits under gold rule */ margin-left: -6rem; margin-right: 0; } figure.cover-image figcaption { /* Give caption its normal margins back */ margin-left: 6rem; margin-right: 0; /* Right align the caption */ text-align: right; } }

.footer { background: #000000; color: #ffffff; position: relative; /* Unset top margin of heading so it doesn't mess with whitespace */ /** Add negative margins to the links and logos containers to make their contents sit at the edge of the container because the links inside have extra padding the clickable area. */ }

.footer__back-to-top-button { position: absolute; right: 0; top: 0; -webkit-transform: translateY(-50%); transform: translateY(-50%); background-color: #be8303; color: #000000 !important; -webkit-transition: -webkit-box-shadow 150ms ease 50ms; transition: -webkit-box-shadow 150ms ease 50ms; transition: box-shadow 150ms ease 50ms; transition: box-shadow 150ms ease 50ms, -webkit-box-shadow 150ms ease 50ms; }

.footer__back-to-top-button:hover, .footer__back-to-top-button:active, .footer__back-to-top-button:focus { -webkit-box-shadow: 0 0px 8px rgba(0, 0, 0, 0.12); box-shadow: 0 0px 8px rgba(0, 0, 0, 0.12); }

@media (max-width: 767px) { .footer { /* Custom top padding to fit gold rule */ padding-top: 2.5rem; /* Gold rule across the top on small screens only */ /* Position back to top button on top of the horizontal gold rule and add black border to create break in the gold rule */ } .footer:before { content: ""; height: 1px; background-color: #be8303; position: absolute; left: 0; right: 0; } .footer__back-to-top-button { border-left: 0.5rem solid #000000; border-right: 0.5rem solid #000000; width: 4rem; right: -0.5rem; } }

.footer__aoc-heading { margin-top: 0; }

.footer__socials { /* Socials take up whole width on small screens */ grid-column-start: span 4; margin-bottom: 0.75rem; /* Socials take up only one column on medium & large screens */ }

@media (min-width: 768px) { .footer__socials { grid-column-start: 1; grid-column-end: 2; margin-bottom: 0; /* Make icons vertically evenly spaced */ display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; height: 100%; } }

.footer__socials > a { display: inline-block; /* Add padding for a total clickable area of 48px * 48px */ padding: 0.5rem; /* Don't let the link be taller than its contents */ line-height: 1; }

.footer__socials > a svg { width: 2rem; height: 2rem; fill: #ffffff; }

.footer__body { /* Footer info takes up whole width on small screens */ grid-column-start: span 4; /* The last 7 of 8 columns on medium screens */ /* The last 11 of 12 columns on large screens */ }

@media (min-width: 768px) { .footer__body { grid-column: 2 / span 7; } }

@media (min-width: 992px) { .footer__body { grid-column: 2 / span 11; } }

.footer__links > a { font-weight: 400; letter-spacing: -0.005em; -webkit-font-kerning: normal; font-kerning: normal; font-size: 1rem; line-height: 1rem; display: inline-block; padding: 1rem; vertical-align: top; white-space: nowrap; text-decoration: underline; /* Links are stacked on small screens */ display: block; /* Links are inline on medium & large screens */ }

@media (min-width: 768px) { .footer__links > a { display: inline-block; } }

.footer__anu-info { padding: 1.5rem 0; }

.footer__logos > a { line-height: 0; padding: 0.75rem; display: inline-block; vertical-align: top; }

.footer__links, .footer__logos { margin-left: -0.75rem; margin-right: -0.75rem; }

.footer__site-info { margin: 0; padding-top: 1.5rem; padding-bottom: 0.75rem; /* Show info stacks and without dividers on small screens */ }

.footer__site-info span:not(:last-child) { margin-right: 0.25rem; }

.footer__site-info span a { /* Try to keep links on one line */ white-space: nowrap; }

@media (max-width: 767px) { .footer__site-info span { display: block; } .footer__site-info span:not(:last-child) { margin-bottom: 0.75rem; } .footer__site-info .divider { display: none; } }

/** Mobile first - small screen styling */
.header { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; /* Override the default .container padding for nav height of 64px on small screens */ padding: 0.5rem; }

.header__skip-to-main { position: absolute; /* Visually line the skip button up with where the header nav starts */ left: -1rem; z-index: 150; }

.header__brand { /* Make brand area fit square favicon logo */ width: 3rem; height: 3rem; text-decoration: none; /* Remove inline space between logo & lockup */ font-size: 0; /* Hide secondary logo on small screens */ /* Hide secondary logo lockup on small screens */ }

.header__brand:hover, .header__brand:active, .header__brand:focus { /* Override default a styles */ color: #000000; }

.header__brand .logo-secondary { display: none; }

.header__brand .logo-lockup { display: none; }

.header__filler { display: none; }

.header__nav-toggle { margin-left: -1.5rem; /* Show the hamburger menu on the left side using flex ordering */ -webkit-box-ordinal-group: 0; -ms-flex-order: -1; order: -1; }

.header__search-toggle { margin-right: -1.5rem; }

/** Medium screen styling */
@media (min-width: 768px) { .header { /* Override the default .container padding for nav height of 80px on large screens */ padding: 1rem 0; height: 5rem; /* For filling flex space to make logo sit on left and icons on right */ } .header__brand { /* Make brand area fit secondary master brand logo + subbrand lockup */ width: 16rem; height: 3rem; /* Needed to make logo show above gold rule */ z-index: 10; /* Move logo so it lines up with gold rule */ margin-left: -1rem; /* Hide favicon logo on larger screens */ /* Show secondary logo on larger screens */ /* Show secondary logo lockup on larger screens */ } .header__brand .logo-favicon { display: none; } .header__brand .logo-secondary { display: inline-block; /* Add white background behind logo to hide gold rule */ } .header__brand .logo-secondary:before { content: ""; background-color: #ffffff; position: absolute; top: -0.5rem; bottom: -0.5rem; width: 100%; z-index: -1; } .header__brand .logo-lockup { display: inline-block; } .header__filler { display: initial; -webkit-box-flex: 1; -ms-flex: 1 1 auto; flex: 1 1 auto; } .header__nav-toggle { /* Show nav toggle and search on left */ -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; } .header__search-toggle { -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; /* Override negative margin */ margin-right: 0; } }

/** Largee screen styling */
@media (min-width: 992px) { /* We're showing horizontal nav menu so hide nav-toggle */ .header__nav-toggle { display: none; } }

.logo-favicon { display: inline-block; /* Hard-coded favicon logo display size */ width: 40px; height: 40px; margin: 0.25rem; background-image: url("/assets/images/logos/anu/favicon/outline/gold.svg"); background-size: contain; background-repeat: no-repeat; background-position: center center; }

.logo-lockup { display: inline-block; margin-left: 1rem; width: 7rem; /* Make lockup font size visually match logo-secondary font size & line height */ font-size: 15px; line-height: 15px; /* Make lockup vertically align to top of logo-secondary */ vertical-align: top; margin-top: 1px; }

.logo-secondary { display: inline-block; /* Hard-coded secondary logo display size */ width: 125px; height: 44px; /* Make size up to 128px by 48px and position using margins */ margin: 2px 4px 2px -1px; background-image: url("/assets/images/logos/anu/secondary/horizontal/gold-black.svg"); background-size: contain; background-repeat: no-repeat; background-position: center center; position: relative; }

/** Mobile first - small screen hamburger menu styling */
.nav-menu { position: absolute; position: fixed; top: 0; width: 320px; height: 100%; overflow-y: auto; overflow-x: visible; background: #ffffff; left: -320px; -webkit-box-shadow: -8px 0 8px rgba(0, 0, 0, 0.12); box-shadow: -8px 0 8px rgba(0, 0, 0, 0.12); visibility: hidden; z-index: 110; -webkit-transition: left 450ms ease 50ms, visibility 450ms ease 50ms, -webkit-box-shadow 450ms ease 50ms; transition: left 450ms ease 50ms, visibility 450ms ease 50ms, -webkit-box-shadow 450ms ease 50ms; transition: left 450ms ease 50ms, box-shadow 450ms ease 50ms, visibility 450ms ease 50ms; transition: left 450ms ease 50ms, box-shadow 450ms ease 50ms, visibility 450ms ease 50ms, -webkit-box-shadow 450ms ease 50ms; /** Main nav menu toggle behaviour :target for non-JavaScript [aria-expanded] will be used if/when JavaScript is added to improve interaction, though it's completely optional. */ }

.nav-menu__nav { width: 100%; }

.nav-menu__brand { display: block; /* Use margins to position brand area in menu header */ margin: 0.5rem 0.75rem; /* Make brand area fit secondary master brand logo + subbrand lockup */ width: 16rem; height: 3rem; text-decoration: none; /* Remove inline space between logo & lockup */ font-size: 0; }

.nav-menu__brand:hover, .nav-menu__brand:active, .nav-menu__brand:focus { /* Override default a styles */ color: #000000; }

.nav-menu__close { position: absolute; top: 0.5rem; right: 0; }

.nav-menu__menu.container { list-style: none; border-bottom: 1px solid #be8303; /* Override .container values */ padding: 0; width: 100%; }

.nav-menu__menu-item { border-top: 1px solid #be8303; position: relative; }

.nav-menu__menu-item.current-page .nav-menu__menu-link { background-color: #f7f0e1; -webkit-box-shadow: inset 4px 0 0 0 #be8303; box-shadow: inset 4px 0 0 0 #be8303; }

.nav-menu__menu-item.current-page-inside .nav-menu__menu-link { -webkit-box-shadow: inset 4px 0 0 0 #be8303; box-shadow: inset 4px 0 0 0 #be8303; }

.nav-menu__menu-link { font-weight: 400; letter-spacing: -0.005em; -webkit-font-kerning: normal; font-kerning: normal; font-size: 1rem; line-height: 1rem; display: inline-block; padding: 1rem; vertical-align: top; white-space: nowrap; width: 100%; background-color: transparent; text-decoration: underline; -webkit-text-decoration-color: transparent; text-decoration-color: transparent; -webkit-transition: background-color ease 50ms, color ease 50ms, -webkit-text-decoration-color ease 50ms; transition: background-color ease 50ms, color ease 50ms, -webkit-text-decoration-color ease 50ms; transition: background-color ease 50ms, color ease 50ms, text-decoration-color ease 50ms; transition: background-color ease 50ms, color ease 50ms, text-decoration-color ease 50ms, -webkit-text-decoration-color ease 50ms; }

.nav-menu__menu-link:hover, .nav-menu__menu-link:active, .nav-menu__menu-link:focus { /* override base a style */ color: #000000; background-color: #f7f0e1; -webkit-text-decoration-color: #000000; text-decoration-color: #000000; }

.nav-menu__menu-link-caret { display: none; }

.nav-menu:target, .nav-menu[aria-expanded="true"] { display: block; left: 0; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.12); box-shadow: 0 0 8px rgba(0, 0, 0, 0.12); visibility: visible; outline: none; }

.nav-menu:target .nav-menu__close, .nav-menu[aria-expanded="true"] .nav-menu__close { z-index: 1001; }

.nav-menu:target + .nav-menu-overlay, .nav-menu[aria-expanded="true"] + .nav-menu-overlay { opacity: 1; visibility: visible; }

.nav-menu + .nav-menu-overlay { position: absolute; position: fixed; display: block; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.78); cursor: default; z-index: 100; opacity: 0; visibility: hidden; -webkit-transition: opacity 450ms ease 50ms, visibility 450ms ease 50ms; transition: opacity 450ms ease 50ms, visibility 450ms ease 50ms; }

/** Larger screen styling - horizontal nav menu */
@media (min-width: 992px) { .nav-menu { /* Reset off canvas menu properties */ background: none; -webkit-box-shadow: none; box-shadow: none; position: relative; /* Needed so nav submenu can show */ overflow: initial; left: auto; right: auto; top: auto; width: auto; height: auto; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; visibility: visible; /* Show as secondary header bar with gold tint bg */ background-color: #f7f0e1; /* Don't show nav menu logo there's already one in the primary header */ /* Hide focus traps on large screens because nav is visible and part of page rather than a dialog ` */ } .nav-menu__brand { display: none; } .nav-menu__close { display: none; } .nav-menu__menu.container { border: none; display: -webkit-box; display: -ms-flexbox; display: flex; /* Custom left amount to make .container contents line up with logo text */ padding-left: 2rem; /* Reset regular large screen .container right padding */ padding-right: 1rem; /* Reset width to large screen .container width */ width: calc(100% - 4rem); } .nav-menu__menu-item { border: none; display: inline-block; /* Needs to be static in order to position the submenu inside it relative to the page */ position: static; /* Current page styles should come before hover/focus styles so background color has correct inheritance */ /* Make main menu link look hovered / open when: */ /* any part of the menu-item is hovered, which includes the submenu */ } .nav-menu__menu-item.current-page .nav-menu__menu-link, .nav-menu__menu-item.current-page-inside .nav-menu__menu-link { /* Give the link a gold bar on top if it's the current page or the parent of the current page */ -webkit-box-shadow: inset 0 4px 0 0 #be8303; box-shadow: inset 0 4px 0 0 #be8303; /* Reserve the background colour shading to indicate hover / submenu open Overwrites small screen style which also shades the current page */ background-color: transparent; } .nav-menu__menu-item:hover .nav-menu__menu-link, .nav-menu__menu-item:focus-within .nav-menu__menu-link { background-color: #ffffff; } .nav-menu__menu-link { width: auto; /* Different on-event colors because of gold menu bg / white menu link highlight on large screens */ } .nav-menu__menu-link:hover, .nav-menu__menu-link:active, .nav-menu__menu-link:focus { color: #be8303; -webkit-text-decoration-color: #be8303; text-decoration-color: #be8303; } .nav-menu__menu-link-caret { display: inline-block; width: 0.75rem; height: 1rem; margin-left: 0.25rem; vertical-align: top; } .nav-menu .trap-focus { display: none; } }

/** Mobile first - small screen hamburger menu styling */
.nav-submenu-toggle { /* Checkbox is used to control submenu visibility but we visibly hide the checkbox */ }

.nav-submenu-toggle__checkbox { width: 48px; height: 48px; position: absolute; top: 0; right: 0; /* Hide the visual appearance of the checkbox but keep positioning so we can use the visible focus */ -webkit-appearance: none; -moz-appearance: none; appearance: none; background: none; border: none; pointer-events: none; }

.nav-submenu-toggle__label { display: block; /* Position the open/close icons in the same place as the checkbox so the visible focus for the checkbox */ position: absolute; width: 48px; height: 48px; right: 0; top: 0; cursor: pointer; }

.nav-submenu-toggle__close { display: none; }

.nav-submenu { /* Hide & remove from tab focus sequence, but don't use display: none because we can't transition it */ visibility: hidden; /* Hide contents while submenu is hidden */ overflow: hidden; /* Used for nice transition effect */ max-height: 0; -webkit-transition: max-height 450ms ease 50ms, visibility 450ms ease 50ms; transition: max-height 450ms ease 50ms, visibility 450ms ease 50ms; /* Show the normal link and not the card */ }

.nav-submenu__heading { display: none; }

.nav-submenu__menu { list-style: none; padding: 0; margin: 0; }

.nav-submenu__menu-item.current-page .nav-submenu__menu-link { background-color: #f7f0e1; -webkit-box-shadow: inset 4px 0 0 0 #be8303; box-shadow: inset 4px 0 0 0 #be8303; }

.nav-submenu__menu-card { display: none; }

.nav-submenu__menu-link { font-weight: 400; letter-spacing: -0.005em; -webkit-font-kerning: normal; font-kerning: normal; font-size: 1rem; line-height: 1rem; display: inline-block; padding: 1rem; vertical-align: top; white-space: nowrap; width: 100%; padding-left: 1.5rem; text-decoration: underline; -webkit-text-decoration-color: transparent; text-decoration-color: transparent; -webkit-transition: background-color 150ms ease 50ms, -webkit-text-decoration-color 150ms ease 50ms; transition: background-color 150ms ease 50ms, -webkit-text-decoration-color 150ms ease 50ms; transition: background-color 150ms ease 50ms, text-decoration-color 150ms ease 50ms; transition: background-color 150ms ease 50ms, text-decoration-color 150ms ease 50ms, -webkit-text-decoration-color 150ms ease 50ms; }

.nav-submenu__menu-link:hover, .nav-submenu__menu-link:active, .nav-submenu__menu-link:focus { /* override base a style */ color: #000000; background-color: #f7f0e1; -webkit-text-decoration-color: #000000; text-decoration-color: #000000; }

/* Submenu toggle behaviour */
.nav-submenu-toggle__checkbox:checked { /* Show the submenu */ /* Toggle whether the label says open / close */ }

.nav-submenu-toggle__checkbox:checked ~ .nav-submenu { visibility: visible; max-height: 360px; }

.nav-submenu-toggle__checkbox:checked ~ .nav-submenu-toggle__label .nav-submenu-toggle__open { display: none; }

.nav-submenu-toggle__checkbox:checked ~ .nav-submenu-toggle__label .nav-submenu-toggle__close { display: inline-block; }

/** Large screen styling - horizontal menu */
@media (min-width: 992px) { .nav-submenu-toggle__checkbox { position: relative; float: right; /* Make target area take up the caret space but not overlap the menu text */ width: 2rem; left: -2rem; margin-right: -2rem; /* Allow checkbox to be checked on large screens so submenu can be toggled on touch devices */ pointer-events: auto; } .nav-submenu-toggle__label { max-height: 0; } .nav-submenu-toggle__open, .nav-submenu-toggle__close { /* Visually hide because we have the caret in the link to show that there's a flyout menu but still want to let screen readers use it as a label for toggle checkbox */ clip: rect(0 0 0 0); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; } .nav-submenu { /* Use flex for submenu layout on large screens */ display: -webkit-box; display: -ms-flexbox; display: flex; background: #ffffff; -webkit-box-shadow: 0 8px 8px rgba(0, 0, 0, 0.12); box-shadow: 0 8px 8px rgba(0, 0, 0, 0.12); /* Position submenu so it's the same width as the nav - slightly inset from the container */ position: absolute; left: 2rem; right: 0; /* Show the fancy card menu link in the large screen submenu flyout instead of the regular link */ } .nav-submenu__heading { font-weight: 400; letter-spacing: -0.005em; -webkit-font-kerning: normal; font-kerning: normal; font-size: 1.75rem; line-height: 2rem; display: block; padding: 3rem; -webkit-box-flex: 0; -ms-flex: 0 0 auto; flex: 0 0 auto; width: 12.5rem; } .nav-submenu__menu { -webkit-box-flex: 1; -ms-flex: 1 1 auto; flex: 1 1 auto; padding: 3rem; } .nav-submenu__menu.grid { grid-template-columns: repeat(3, 1fr); } .nav-submenu__menu-item { /* Styling for the card submenu item if it's the current page */ } .nav-submenu__menu-item.current-page .card__text { margin-bottom: 0; } .nav-submenu__menu-item.current-page .card__arrow { display: none; } .nav-submenu__menu-card { display: block; } .nav-submenu__menu-link { display: none; } /* Large submenu toggle behaviour. Hide the subemnu when: */ /* checkbox is checked because it works as a flyout on large screens and we're handling when it should show below */ .nav-submenu-toggle__checkbox:checked ~ .nav-submenu, .nav-submenu-toggle__checkbox:not(:checked):focus ~ .nav-submenu { /* We only hide it using max-height (and not visibility) so that submenu:focus-within selector below works. */ /* Submenus that are toggled open but visually hidden here are still accessible to screen readers. */ max-height: 0; } /* Large submenu toggle behaviour. Show the submenu (even if the submenu-toggle checkbox isn't checked) when: */ /* the toggle checkbox has been checked by keyboard navigation or on a touch device */ .nav-submenu-toggle__checkbox:checked:focus ~ .nav-submenu, .nav-submenu:focus-within { /* Show the submenu even if the submenu-toggle checkbox isn't checked */ visibility: visible; /* !important is needed to override sibling specificity that hides the submenu above */ max-height: 360px !important; } /* Large submenu flyout behaviour applied on hover-enabled devices only. */ }

@media (min-width: 992px) and (hover: hover) { /* Show submenu when any part of the parent menu-item is hovered, which includes the submenu */ .nav-menu__menu-item:hover .nav-submenu { /* Show the submenu even if the submenu-toggle checkbox isn't checked */ visibility: visible; /* !important is needed to override sibling specificity that hides the submenu above */ max-height: 360px !important; } }

.pagination { margin-top: 3rem; }

.pagination__right { float: right; }

.person-summary { grid-column-gap: 3rem; grid-row-gap: 1.5rem; }

.person-summary__image { grid-column: 1 / 2; }

.person-summary__info { grid-column: 2 / -1; grid-row-gap: 1rem; }

.person-summary .warn-box { margin: 0; }

@media (min-width: 768px) { .person-summary { grid-template-columns: repeat(4, 1fr); } }

@media (min-width: 992px) { .person-summary { grid-template-columns: repeat(5, 1fr); } }

.post-summary { display: -webkit-inline-box; display: -ms-inline-flexbox; display: inline-flex; }

.post-summary__image { width: 3rem; height: 3rem; -o-object-fit: cover; object-fit: cover; border-radius: 1.5rem; margin-right: 0.75rem; }

.related-pages { background: #f7f0e1; color: #000000; }

.related-pages .card__link:hover, .related-pages .card__link:active, .related-pages .card__link:focus { background-color: #ffffff; }

.search-menu { position: absolute; position: fixed; top: 0; width: 320px; height: 100%; overflow-y: auto; overflow-x: visible; background: #ffffff; right: -320px; -webkit-box-shadow: 8px 0 8px rgba(0, 0, 0, 0.12); box-shadow: 8px 0 8px rgba(0, 0, 0, 0.12); visibility: hidden; -webkit-transition: right 450ms ease 50ms, visibility 450ms ease 50ms, -webkit-box-shadow 450ms ease 50ms; transition: right 450ms ease 50ms, visibility 450ms ease 50ms, -webkit-box-shadow 450ms ease 50ms; transition: right 450ms ease 50ms, box-shadow 450ms ease 50ms, visibility 450ms ease 50ms; transition: right 450ms ease 50ms, box-shadow 450ms ease 50ms, visibility 450ms ease 50ms, -webkit-box-shadow 450ms ease 50ms; z-index: 210; padding: 1.5rem 0.75rem; /** Search toggle behaviour :target for non-JavaScript [aria-expanded] will be used if/when JavaScript is added to improve interaction, though it's completely optional. */ }

.search-menu__title { margin-top: 0; margin-right: 3rem; }

.search-menu__close { position: absolute; /* Make icon vertically align with title */ top: 0.5rem; right: 0; }

.search-menu form { padding-top: 0; border-top: none; }

.search-menu .search-button { width: 100%; }

.search-menu:target, .search-menu[aria-expanded="true"] { display: block; right: 0; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.12); box-shadow: 0 0 8px rgba(0, 0, 0, 0.12); visibility: visible; outline: none; }

.search-menu:target + .search-menu-overlay, .search-menu[aria-expanded="true"] + .search-menu-overlay { opacity: 1; visibility: visible; }

.search-menu + .search-menu-overlay { position: absolute; position: fixed; display: block; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.78); cursor: default; z-index: 200; opacity: 0; visibility: hidden; -webkit-transition: opacity 450ms ease 50ms, visibility 450ms ease 50ms; transition: opacity 450ms ease 50ms, visibility 450ms ease 50ms; }

.tags-nav__heading { font-weight: 600; font-size: 1.3125rem; line-height: 1.5rem; margin-bottom: 1rem; }

.tags-nav__tags { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: -0.25rem; }

.tags-nav__tags > * { margin: 0.25rem; }

.toc-section { font-size: 0.875rem; line-height: 1rem; /* Make ToC sticky when used in layouts on medium and large screens */ }

.toc-section__heading { font-weight: 600; font-size: 1rem; line-height: 1rem; margin-bottom: 1rem; }

.toc-section ul { list-style-type: none; padding-left: 1rem; margin: 0; }

.toc-section > ul { padding-left: 0; }

.toc-section li { margin: 0.5rem 0; }

@media (min-width: 768px) { .toc-section { position: sticky; top: 3rem; } }

.trap-focus { /* Visually hide (even when focussed) but allow it to be tabbed to */ clip: rect(0 0 0 0); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; padding: 0; /* Override button styling */ padding: 0; border: 0; /* Remove size set by width and height so element doesn't take up space */ margin: -1px; }

.info-box, .warn-box, .error-box, .callout-box { padding: 1.5rem; /* Include solid stripe down left size of box */ border-left: 4px solid #a8a8a8; background-color: #e0e0e0; margin: 1.5rem 0; }

.info-box *:first-child, .warn-box *:first-child, .error-box *:first-child, .callout-box *:first-child { margin-top: 0; }

.info-box *:last-child, .warn-box *:last-child, .error-box *:last-child, .callout-box *:last-child { margin-bottom: 0; }

.error-box { border-color: #be4e0e; background-color: rgba(190, 78, 14, 0.12); }

.warn-box { border-color: #be8303; background: rgba(190, 131, 3, 0.12); }

.info-box { border-color: #0085ad; background: rgba(0, 133, 173, 0.12); }

.card { border-top: solid 1px #be8303; position: relative; color: inherit; /* Remove top margin if title if there's no image or tag above it */ }

.card__container { padding: 1.5rem 0; height: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }

.card__link { /* Override default link styles */ text-decoration: none; color: inherit; background-color: transparent; -webkit-transition: background-color 300ms ease 50ms; transition: background-color 300ms ease 50ms; /* Hover, active, and focus state styles */ }

.card__link:hover, .card__link:active, .card__link:focus { /* Override default link style */ color: inherit; background-color: #f7f0e1; }

.card__link:hover .card__image img, .card__link:active .card__image img, .card__link:focus .card__image img { -webkit-transform: scale(1.05); transform: scale(1.05); }

.card__link:hover .card__arrow, .card__link:active .card__arrow, .card__link:focus .card__arrow { -webkit-transform: translateX(0.25rem); transform: translateX(0.25rem); }

.card__tags { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: -0.25rem; /* Make card tags smaller so they don't cover up image when card is small */ /* If card has an image, position the tags in top left corner over the image */ }

.card__tags > * { margin: 0.25rem; }

.card__tags .tag { font-size: 0.875rem; line-height: 1rem; padding: 0.75rem; }

.card__image + .card__tags { position: absolute; top: 1.5rem; }

.card__image { overflow: hidden; position: relative; /* Reponsively fix the image aspect ratio to 16:10 with dummy before element */ }

.card__image:before { content: ""; display: block; margin-top: 62.5%; }

.card__image img { position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; -webkit-transition: -webkit-transform 300ms ease 50ms; transition: -webkit-transform 300ms ease 50ms; transition: transform 300ms ease 50ms; transition: transform 300ms ease 50ms, -webkit-transform 300ms ease 50ms; }

.card__title { font-weight: 600; font-size: 1.3125rem; line-height: 1.5rem; }

.card__subtitle { font-weight: 400; letter-spacing: -0.005em; -webkit-font-kerning: normal; font-kerning: normal; text-transform: uppercase; line-height: 1; font-size: 0.875rem; line-height: 1rem; }

.card__title:first-child, .card__subtitle, .card__text { margin-top: 0; }

.card__arrow { color: #be8303; -webkit-transition: -webkit-transform 300ms ease 50ms; transition: -webkit-transform 300ms ease 50ms; transition: transform 300ms ease 50ms; transition: transform 300ms ease 50ms, -webkit-transform 300ms ease 50ms; /* Add right margin so arrow doesn't overflow when transformed on hover */ margin-right: 0.25rem; }

.collection-listing__search-label { font-weight: 600; font-size: 1.3125rem; line-height: 1.5rem; }

.filter-buttons { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: -0.25rem; border: none; padding: 0; /* Hide the default browser-rendered radio input */ }

.filter-buttons > * { -webkit-box-flex: 1; -ms-flex: 1 0 auto; flex: 1 0 auto; margin: 0.25rem; }

.filter-buttons__radio { left: -9999px; opacity: 0; position: absolute; /* Make button look active if filter is active except the clear button */ /* If the option has keyboard focus */ }

.filter-buttons__radio:not(.filter-buttons__clear):checked + label { background-color: #be8303; border-color: #be8303; color: #000000; }

.filter-buttons__radio:focus + label { /* Show fake focus around label/button */ outline-width: 2px; outline-style: solid; outline-color: Highlight; /* WebKit gets its native focus styles. */ /* Make the button look active */ background-color: #be8303; border-color: #be8303; color: #000000; }

@media (-webkit-min-device-pixel-ratio: 0) { .filter-buttons__radio:focus + label { outline-color: -webkit-focus-ring-color; outline-style: auto; } }

.filter-buttons__radio-label { text-align: center; }

.segmented-control { font-size: inherit; display: -webkit-box; display: -ms-flexbox; display: flex; padding: 0; border: none; /* Hide the default browser-rendered radio button */ /* If the current object is clicked/tapped */ /* If the control has keyboard focus */ }

.segmented-control__legend { font-weight: 300; font-size: 1rem; line-height: 1.5rem; margin-bottom: 0.25rem; -webkit-box-flex: 0; -ms-flex: 0 0 auto; flex: 0 0 auto; width: 100%; }

.segmented-control__input-label { font-weight: 400; letter-spacing: -0.005em; -webkit-font-kerning: normal; font-kerning: normal; font-size: 1rem; line-height: 1rem; display: inline-block; padding: 1rem; vertical-align: top; white-space: nowrap; text-align: center; -webkit-box-flex: 1; -ms-flex: 1 1 auto; flex: 1 1 auto; background-color: transparent; color: #000000; border: 1px solid #a8a8a8; border-right: none; cursor: pointer; -webkit-transition: background-color 150ms ease 50ms, color 150ms ease 50ms; transition: background-color 150ms ease 50ms, color 150ms ease 50ms; }

.segmented-control__input-label:first-of-type { border-bottom-left-radius: 5px; border-bottom-right-radius: 0; border-top-left-radius: 5px; border-top-right-radius: 0; }

.segmented-control__input-label:last-of-type { border-bottom-left-radius: 0; border-bottom-right-radius: 5px; border-top-left-radius: 0; border-top-right-radius: 5px; border-right: 1px solid #a8a8a8; }

.segmented-control__input { left: -9999px; opacity: 0; position: absolute; visibility: none; }

.segmented-control input[type="radio"] { /* Make active/hover styles sit above checked/focus otherwise focus style won't apply when you click */ }

.segmented-control input[type="radio"]:active + label, .segmented-control input[type="radio"]:hover + label { background-color: #f7f0e1; }

.segmented-control input[type="radio"]:checked + label, .segmented-control input[type="radio"]:focus + label { background-color: #be8303; }

.segmented-control input[type="radio"]:focus + label { outline-width: 2px; outline-style: solid; outline-color: Highlight; /* WebKit gets its native focus styles. */ }

@media (-webkit-min-device-pixel-ratio: 0) { .segmented-control input[type="radio"]:focus + label { outline-color: -webkit-focus-ring-color; outline-style: auto; } }

.select-control { /* Hide default caret in IE, appearance none  */ /* Show custom dropdown caret for single selects */ position: relative; }

.select-control select { /* The select element inherits styles from shared form styles in _form.scss */ cursor: pointer; /* Larger right padding to make space for dropdown caret for single selects */ padding-right: 1.5rem; }

@-moz-document url-prefix() { .select-control select { text-indent: -2px; line-height: inherit; } }

.select-control::-ms-expand { display: none; }

.select-control:after { content: ""; width: 0.8em; height: 0.5em; background-color: rgba(0, 0, 0, 0.56); -webkit-clip-path: polygon(100% 0%, 0 0%, 50% 100%); clip-path: polygon(100% 0%, 0 0%, 50% 100%); position: absolute; right: 0; top: 50%; -webkit-transform: translate(-100%, -50%); transform: translate(-100%, -50%); }

.select-typeahead { /* Clear input button styling */ position: relative; /* Only show clear input button when it has text */ }

.select-typeahead input { /* The input element inherits styles from shared form styles in _form.scss */ }

.select-typeahead input[list] { /* Overwrite default right padding to make space for dropdown caret */ padding-right: 3rem; /* Don't show the default caret in Chrome, it's got annoying behaviour */ }

.select-typeahead input[list]::-webkit-calendar-picker-indicator { /* Doesn't work on Chrome 91+ without !important */ display: none !important; }

.select-typeahead__clear { position: absolute; right: 0; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); cursor: pointer; background: none; border: none; color: rgba(0, 0, 0, 0.56); visibility: hidden; -webkit-transition: color 150ms ease 50ms, visibility 150ms ease 50ms; transition: color 150ms ease 50ms, visibility 150ms ease 50ms; }

.select-typeahead__clear:hover, .select-typeahead__clear:active, .select-typeahead__clear:focus { background: none; border: none; -webkit-box-shadow: none; box-shadow: none; color: #383838; }

input:not(:-moz-placeholder-shown) ~ .select-typeahead__clear { visibility: visible; }

input:not(:-ms-input-placeholder) ~ .select-typeahead__clear { visibility: visible; }

input:not(:placeholder-shown) ~ .select-typeahead__clear { visibility: visible; }

.tag { font-weight: 400; letter-spacing: -0.005em; -webkit-font-kerning: normal; font-kerning: normal; font-size: 1rem; line-height: 1rem; display: inline-block; padding: 1rem; vertical-align: top; white-space: nowrap; font-size: 0.875rem; line-height: 1rem; background-color: #000000; color: #ffffff; text-decoration: none; -webkit-transition: background-color 150ms ease 50ms, color 150ms ease 50ms; transition: background-color 150ms ease 50ms, color 150ms ease 50ms; }

a.tag { color: #ffffff; }

a.tag:hover, a.tag:active, a.tag:focus { background-color: #be8303; color: #000000; }

a.tag.current-page { background-color: #be8303; color: #000000; }

.default { /* Make page container grow to fill vertical height on short pages */ -webkit-box-flex: 1; -ms-flex: 1 1 auto; flex: 1 1 auto; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; /* Use filler container to continue gold rule while filling vertical height */ }

.default .filler.container { padding-top: 0; padding-bottom: 0; -webkit-box-flex: 1; -ms-flex: 1 1 auto; flex: 1 1 auto; }

.default > .grid { /* Mobile-first grid - all elements take up full-width */ grid-template-columns: 100%; grid-template-rows: auto; grid-row-gap: 3rem; /* Remove any top margin on top of any grid children or the first element inside them */ /* Grid-based default page layout on large screens */ }

.default > .grid > * { margin-top: 0; }

.default > .grid > * > *:first-child { margin-top: 0; }

@media (min-width: 992px) { .default > .grid { grid-template-columns: repeat(12, minmax(0, 1fr)); grid-template-areas: "pa pa pc pc pc pc pc pc pc pc ca ca"; } .default > .grid > .default__page-aside { grid-area: pa; /* Fill available height so sticky toc inside has bounded container to scroll down */ height: 100%; } .default > .grid > .default__page-content { grid-area: pc; } .default > .grid > .default__collection-aside { grid-area: ca; } }

.detail { /* Make page container grow to fill vertical height on short pages */ -webkit-box-flex: 1; -ms-flex: 1 1 auto; flex: 1 1 auto; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; /* Use filler container to continue gold rule while filling vertical height */ }

.detail .filler.container { padding-top: 0; padding-bottom: 0; -webkit-box-flex: 1; -ms-flex: 1 1 auto; flex: 1 1 auto; }

.detail > .grid { /* Mobile-first grid - all elements take up full-width */ grid-template-columns: 100%; grid-row-gap: 3rem; /* Remove any top margin on top of any grid children or the first element inside them */ /* Grid-based default page layout on medium screens */ /* Grid-based default page layout on large screens */ }

.detail > .grid > * { margin-top: 0; }

.detail > .grid > * > *:first-child { margin-top: 0; }

@media (min-width: 768px) { .detail > .grid { grid-template-columns: repeat(8, minmax(0, 1fr)); grid-template-areas: "hd hd hd hd hd hd hd hd" "pa pa pc pc pc pc pc pc" "ca ca ca ca ca ca ca ca"; } .detail > .grid > .detail__header { grid-area: hd; } .detail > .grid > .detail__page-aside { grid-area: pa; /* Fill available height so sticky toc inside has bounded container to scroll down */ height: 100%; } .detail > .grid > .detail__page-content { grid-area: pc; } .detail > .grid > .detail__collection-aside { grid-area: ca; } }

@media (min-width: 992px) { .detail > .grid { grid-template-columns: repeat(12, minmax(0, 1fr)); /* set min-content for the second row to get desired behaviour when collection aside is taller than page content */ grid-template-rows: auto -webkit-min-content; grid-template-rows: auto min-content; grid-template-areas: "hd hd hd hd hd hd hd hd hd hd ca ca" "pa pa pc pc pc pc pc pc pc pc ca ca"; } .detail > .grid > .detail__header { grid-area: hd; } .detail > .grid > .detail__page-aside { grid-area: pa; } .detail > .grid > .detail__page-content { grid-area: pc; } .detail > .grid > .detail__collection-aside { grid-area: ca; /* Needed to set an implicit height on this element so grid height can manage itself when the collection aside is taller than page content*/ overflow-y: auto; } }

.feature { /* Mobile-first: small screen & default styles */ /* Make banner padding larger for feature pages */ /* Large screen styles */ }

.feature section { /* Make alternating sections "contrast sections" with a different bg colour */ }

.feature section .container { /* Set up full-width i.e. one column grid layout for small screens */ display: grid; grid-template-columns: 1fr; grid-row-gap: 1.5rem; /* Remove margin on children because grid-row-gap provides vertical space */ }

.feature section .container > * { margin: 0; }

.feature section:nth-of-type(even) { background: #f7f0e1; color: #000000; }

.feature section:nth-of-type(even) .card__link:hover, .feature section:nth-of-type(even) .card__link:active, .feature section:nth-of-type(even) .card__link:focus { background-color: #ffffff; }

.feature .banner .container { padding-top: 6rem; padding-bottom: 6rem; }

@media (min-width: 992px) { .feature { /* Make banner padding even larger for feature pages on large screens */ /* Make container padding larger for feature pages on large screens */ /* Setup default uneven two-column grid layout unless .full class is applied */ } .feature .banner .container { padding-top: 10rem; padding-bottom: 10rem; } .feature .banner .container h1 { font-size: 4rem; line-height: 4.5rem; margin-bottom: 1.5rem; } .feature .banner .container p.lead { font-size: 1.75rem; line-height: 2rem; } .feature section .container { padding-top: 6rem; padding-bottom: 6rem; } .feature section:not(.full) .container { grid-template-columns: 25% calc(75% - 6rem); grid-column-gap: 6rem; grid-template-areas: "header  article" "footer  article" "spacer  article"; } .feature section:not(.full) .container > header { grid-area: header; } .feature section:not(.full) .container > article { grid-area: article; } .feature section:not(.full) .container > footer { grid-area: footer; } }