@import url('https://fonts.googleapis.com/css2?family=Work+Sans:wght@100;200;300;400;500;600;700;800;900&display=swap');

:root {
	--score-colour-1: #72253D;
	--score-colour-2: #90505F;
	--score-colour-3: #72253D;
	--score-colour-4: #8F993E;
	--score-colour-5: #6B732E;

	--radio-border-1: #a3506a;
	--radio-border-2: #d37996;
	--radio-border-3: #c49210;
	--radio-border-4: #959e47;
	--radio-border-5: #747c3a;
	
	--radio-background-1: #dc93a9;
	--radio-background-2: #edc9d4;
	--radio-background-3: #fbedbd;
	--radio-background-4: #d7ddab;
	--radio-background-5: #b1b975;
	
	--header-link-colour: #eeeeee;
	--background-colour: #15395A; /* #1a3a5d; */
	--background-alt-colour: #ffffff;
	--line-colour: #4f728f;
	--line-thickness: 5px;
	--control-border-colour: #6D7339;
	--control-border-colour-hover: #535823;
	--control-background-colour: #A7AC6D;
	--control-border-radius: 1.7rem;

	--meter-arrow-size: 0.9rem;
	--meter-arrow-size-bottom: 1.5rem;  /* So we get more of an equalateral triangle shape */
	
	/* For the four sections (strategy, organisation, execution, talent) */
	--standard-orange-100: #b68400;
	--standard-orange-80: #c79b3f;
	--standard-orange-60: #d9b36f;
	--standard-orange-40: #e6cc9f;
	
	--standard-myrtle-100: #0f524d;
	--standard-myrtle-80: #34726c;
	--standard-myrtle-60: #68948f;
	--standard-myrtle-40: #98b6b3;
	
	--standard-plum-100: #5a5378;
	--standard-plum-80: #777392;
	--standard-plum-60: #9694ab;
	--standard-plum-40:  #b8b5c6;

	--standard-slate-100: #597d95;
	--standard-slate-80: #7996a9;
	--standard-slate-60: #9aafbe;
	--standard-slate-40: #bac8d3;
	
	/* For button background */
	--standard-olive-80:  #a6ac64;


	--questionnaire-row-spacing: 2px;
}





body {
    font-family: Work Sans, Helvetica, Arial, sans-serif;
    font-weight: 300;
    color: white;
    background-color: var(--background-colour);
	margin: 0;
	
	/* Make the page be at least 100% of the viewport height; see also the `flex-grow` attribute in `.content` */
	display: flex;
	flex-direction: column;
	min-height: 100vh;

	-webkit-print-color-adjust: exact !important;
}

h1, h2 {
	font-weight: 300;
	text-align: center;
}

.buttons {
	text-align: center;
}

button, input[type=submit], a.button {
	display: inline-block;
	background-color: var(--standard-olive-80);
	border-radius: var(--control-border-radius);
	border: none;
	color: #eeeeee;
	text-align: center;
	font-size: 1rem;
	padding: 1rem 1.5rem;
	margin: 0.5rem;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
	cursor: pointer;
	box-shadow: 10px 5px 5px rgba(0,0,0,0.1);
	position: relative;  /* so we can place the arrow correctly */
	text-transform: uppercase;
	text-decoration: none;
}

a.button:visited {
	color: #eeeeee;
	text-decoration: none;
}

.right-arrow::after {
	content: "\25BA";
	margin-left: 0.5rem;
	float: right;
}

button.right-arrow[disabled] {
	cursor: unset;
}

button.right-arrow[disabled]::after {
	color: transparent;  /* Keep the same size, but just hide the arrow */
	background-image: url(images/Spin-1s-48px.svg);
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: 200%;
}

a, a:visited {
	color: white;
    text-underline-offset: 0.1rem;
}

select, input[type=text], textarea {
	padding: 0.4rem;
	border-radius: 0.3rem;
	border: 2px solid gray;
	box-shadow: 2px 2px 2px rgba(0,0,0,0.1);
}

emphasis {
	font-weight: 500;
}

.quote {
	font-size: 120%;
	font-weight: 500;
}

.header, .full-report-pdf-header {
	display: flex;
    background-image: url(images/TBC_Web_Banner_Blue.png);  /* was url(header_background.png); */
	background-size: cover;
	border-bottom: var(--line-thickness) solid var(--line-colour);
}

.header .main-nav {
	flex-grow: 1;
	padding: 2rem;
}

.header a, .header a:visited {
	text-decoration: none;
	color: var(--header-link-colour);
	padding-right: 1.5rem;
}

.header a::before {
	content: "|";
	padding-right: 1.5rem;
	text-decoration: none !important;
}

.header a:first-child::before {
	content: "";
	padding: 0;
}

.header .logo, .full-report-pdf-header .logo {
	background-image: url(images/logo.svg);
	background-repeat: no-repeat;
	background-position: 50%;
	flex-basis: 160px;
}

.content {
	padding: 1rem;
	padding-bottom: 2rem;  
	flex-grow: 1;
	background: var(--background-alt-colour);
	color: black;
	text-align: center;
}

.content-2 {
	padding: 1rem;
	flex-grow: 1;
	background: var(--background-colour);
	text-align: center;
}

.footer {
	padding: 1rem;
	background-color: #112a43;
	font-size: 0.9rem;
	border-top: var(--line-thickness) solid var(--line-colour);	
}

.footer a, .footer a:visited {
	text-decoration: none;
}

.footer a:first-child::before {
	content: "";
	padding: 0;
}

.footer a::before {
	content: "|";
	padding: 0 1rem;
}









/*------------------------------------------------------------------------------------------------------------
 *
 *  COMMON GRAPHICAL ELEMENTS
 *
 */

/* A tab-like shape with a logo'd circle on top */
.section-title {
	/* Need both of these for the text to be left-aligned properly */
	justify-self: flex-start;
	text-align: center;
	background: green;
	padding: 0.4rem 2rem 0 2rem;
	border-radius: 1.5rem 1.5rem 0 0;
	text-transform: uppercase;
	width: 16rem;
	font-weight: 400;
	padding-bottom: 1px;  /* Adding even a tiny bit of padding causes quite a lot to be added; maybe a rendering bug? */
	margin-bottom: 2px;
	z-index: 10;
}

.section-title::before {
	content: "";
	background: orange;
	width: 3.5rem;
	height: 3.5rem;
	border-radius: 100%;
	display: block;
	margin: -2.3rem auto -0.7rem auto;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: 75%;
}

.section-title-1{
	background-color: var(--standard-orange-80);
}
.section-title-2{
	background-color: var(--standard-myrtle-80);
}
.section-title-3{
	background-color: var(--standard-plum-80);
}
.section-title-4 {
	background-color: var(--standard-slate-80);
}

.section-title-1::before{
	background-color: var(--standard-orange-100);
	background-image: url(images/Strategy.png);
}
.section-title-2::before{
	background-color: var(--standard-myrtle-100);
	background-image: url(images/Organisation.png);
}
.section-title-3::before{
	background-color: var(--standard-plum-100);
	background-image: url(images/Execution.png);
}
.section-title-4::before{
	background-color: var(--standard-slate-100);
	background-image: url(images/Talent.png);
}

.section-title h2 {
	font-weight: normal;
	font-size: 1.3rem;
	color: white;
}





.big-balls {
	display: flex;
	justify-content: center;
}

.big-balls .big-ball {
	display: flex;
	background:  orange;
	color: white;
	width: 8.5rem;
	height: 6rem;  /* i.e. 8.5 minus the padding */
	padding-top: 2.5rem;
	border-radius: 50%;
	justify-content:  center;
	align-items: center;
	border: 4px solid blue;
	margin: 0 0.25rem;
	text-transform: uppercase;
	background-repeat: no-repeat;
	background-position: 50% 0.9rem;
	background-size: 42%;
	font-weight: 400;
}

.big-balls .big-ball-1 {
	background-color: var(--standard-orange-80);
	border-color: var(--standard-orange-60);
	background-image: url(images/Strategy.png);
}
.big-balls .big-ball-2 {
	background-color: var(--standard-myrtle-80);
	border-color: var(--standard-myrtle-60);
	background-image: url(images/Organisation.png);
}
.big-balls .big-ball-3 {
	background-color: var(--standard-plum-80);
	border-color: var(--standard-plum-60);
	background-image: url(images/Execution.png);
}
.big-balls .big-ball-4 {
	background-color: var(--standard-slate-80);
	border-color: var(--standard-slate-60);
	background-image: url(images/Talent.png);
}




.meter {
	height: 1rem;
	border-radius: 1em;
	background: background: rgb(220,147,169);
	background: linear-gradient(90deg, rgba(220,147,169,1) 0%, rgba(251,237,189,1) 50%, rgba(177,185,117,1) 100%);	
	box-shadow: 2px 3px 3px rgba(0,0,0,0.25);
	padding-bottom: 6px;
	margin-bottom: 1rem;
}

.meter .marker.triangle {
	height: 0;
	width: 0;
	border-left: var(--meter-arrow-size) solid transparent;
	border-right: var(--meter-arrow-size) solid transparent;
	border-top: var(--meter-arrow-size) solid transparent;
	border-bottom: var(--meter-arrow-size-bottom) solid var(--radio-border-2);
	position: relative;
	margin: 0;
	top: -0.5rem;  /* matching the height of the meter */
	left: 30%; /* 100% puts it too far to the right; can use an intermediate div with `margin-right=2rem` if we need to fix this. */
	filter: brightness(0.8);
}

.meter .marker.score-1 {
	left: -0.7rem; /* 0%; */
	border-bottom: var(--meter-arrow-size-bottom) solid var(--radio-border-1);
}
.meter .marker.score-2 {
	left: 10%;
	border-bottom: var(--meter-arrow-size-bottom) solid var(--radio-border-1);
}
.meter .marker.score-3 {
	left: 20%;
	border-bottom: var(--meter-arrow-size-bottom) solid var(--radio-border-2);
}
.meter .marker.score-4 {
	left: 30%;
	border-bottom: var(--meter-arrow-size-bottom) solid var(--radio-border-2);
}
.meter .marker.score-5 {
	left: 40%;
	border-bottom: var(--meter-arrow-size-bottom) solid var(--radio-border-3);
}
.meter .marker.score-6 {
	left: 51%;
	border-bottom: var(--meter-arrow-size-bottom) solid var(--radio-border-3);
}
.meter .marker.score-7 {
	left: 63%;
	border-bottom: var(--meter-arrow-size-bottom) solid var(--radio-border-4);
}
.meter .marker.score-8 {
	left: 75%;
	border-bottom: var(--meter-arrow-size-bottom) solid var(--radio-border-4);
}
.meter .marker.score-9 {
	left: 87%;
	border-bottom: var(--meter-arrow-size-bottom) solid var(--radio-border-5);
}


.score-out-of-five .out-of {
	/* font-size: 70%; */
}






/*------------------------------------------------------------------------------------------------------------
 *
 *  ERROR page
 *
 */

.error-page .content {
	display: flex;
	align-items: center;
	justify-content: center;
}






/*------------------------------------------------------------------------------------------------------------
 *
 *  WELCOME and QUESTIONNAIRE
 *
 */

.questionnaire-intro-graphic {
	text-align: center;
}

.questionnaire-intro-graphic h1 {
	text-transform: uppercase;
}

.questionnaire-blurb {
	font-size: 0.9rem;
	line-height: 1.5rem;
	padding: 1rem;
	text-align: center;
	max-width: 60rem;
	margin: 0 auto;
}

.questionnaire-blurb a {
	color: black;
}

.questionnaire-page .content {
	padding-bottom: 1rem;  /* Reset it so that we're more likely to see a full questionnaire row when the page loads */
}

.questionnaire-page .content-2 {
	padding-top: 0;  /* Reset it so that we're more likely to see a full questionnaire row when the page loads */
}

.questionnaire-page h1 {
	font-weight: 500;
}

.instructions {
	max-width: 50rem;
	margin: 3rem auto 0 auto;
}

.instructions p {
	text-align: center;
	margin: 1rem 0;
}

.question-form {
	margin: 0 2rem;
}

.question-form .legend, .question-form .question {
	display: grid;
	grid-template-columns: auto 6rem 6rem 6rem 6rem 6rem;
	text-align: center;
	padding: 0.7rem;
	justify-items: center;
}

.question-form .section-title {
	margin-bottom: 0;
}

.question-form .legend {
	padding-left: 0rem;
}

.question-form .legend {
	margin-top: 4rem;   /* Make up for the negative margin on the section title */
	padding-bottom: 0;
	margin-bottom: var(--questionnaire-row-spacing);
}

.legend-item {
	padding: 0 0.4rem;
}

.legend-item-title {
	font-size: 0.7rem;
	text-transform: uppercase;
	padding-bottom: 0.4rem;
	min-height: 1.7rem;  /* Make sure that the description labels below line up with each other */
}

.legend-item-description {
	font-size: 0.6rem;
	font-weight: 400;
}

.question {
	background-color: white;
	font-size: 0.9rem;
	color: black;
	margin-bottom: var(--questionnaire-row-spacing);
	align-items: center;
	border: 3px solid white;  /* Use a white border so that the size doesn't change when we switch to red */
}

.question:nth-child(odd) {
	background-color: #f2f2f2;
	border-color: #f2f2f2;
}

.question.invalid {
	border-color: red;
	border-style: ridge;
}

.question-wording {
	/* Need both of these for the text to be left-aligned properly */
	justify-self: flex-start;
	text-align: left;
	font-size: 0.9rem;
}

.question-answer input {
	display: block;
	-webkit-appearance: none;
	appearance: none;
	background-color: transparent; /* remove gradient background for pre-iOS-15 */
	margin: 0;
	
	/* Custom style for radio button outline */
	width: 2rem;
	height: 2rem;
	border: 0.15em solid;
	border-radius: 50%;
	
	display: grid;
	place-content: center;
}

.question-answer input[disabled=disabled]:not([checked]) {
	opacity: 30%;
}

.question-answer input::before {
	/* Radio buttons' central marker spot */
	content: "";
	width: 1rem;
	height: 1rem;
	border-radius: 50%;
	transition: 100ms opacity ease-in-out;
	opacity: 0;
}

.question-answer:nth-child(2) input::before {
	background-color: var(--radio-border-1);
}
.question-answer:nth-child(3) input::before {
	background-color: var(--radio-border-2);
}
.question-answer:nth-child(4) input::before {
	background-color: var(--radio-border-3);
}
.question-answer:nth-child(5) input::before {
	background-color: var(--radio-border-4);
}
.question-answer:nth-child(6) input::before {
	background-color: var(--radio-border-5);
}

.question-answer:nth-child(2) input {
	border-color: var(--radio-border-1) !important;
	background-color: var(--radio-background-1);
}
.question-answer:nth-child(3) input {
	border-color: var(--radio-border-2) !important;
	background-color: var(--radio-background-2);
}
.question-answer:nth-child(4) input {
	border-color: var(--radio-border-3) !important;
	background-color: var(--radio-background-3);
}
.question-answer:nth-child(5) input {
	border-color: var(--radio-border-4) !important;
	background-color: var(--radio-background-4);
}
.question-answer:nth-child(6) input {
	border-color: var(--radio-border-5) !important;
	background-color: var(--radio-background-5);
}

.question-answer input:checked::before {
	opacity: 1.0 !important;  /* important to make sure that 'hover+checked' is still full opacity */
}
.question-answer input:hover::before {
	opacity: 0.2;	
}

.question-answer label {
	display: none;
}

.question-form .buttons {
	margin-top: 2rem;
	text-align: center;
}









/*------------------------------------------------------------------------------------------------------------
 *
 *  RESULTS
 *
 */


.full-report-pdf-header {
	display: none;  /* Print only */
	padding: 2rem;
	border: none;
	color: white;
}

.full-report-pdf-header .logo {
	flex-basis: 200px;
	margin-left: 2rem;
}

.full-report-pdf-header h1 {
	flex-grow: 1;
	padding: 2rem;
	text-align: left;
	font-size: 2.5rem !important;
}

.full-report-pdf-header emphasis {
	font-weight: 500;
	text-transform: uppercase;
}

.survey-success, .full-report-pdf-intro {
	max-width: 40rem;
	margin: 4rem auto;	
}

.survey-success a, .full-report-pdf-intro a {
	color: var(--line-colour);
	text-decoration: none;
}

.full-report-pdf-intro {
	max-width: 70rem;
	margin: 4rem auto;	
	display: none;
}

.full-report-pdf-intro::after {
	content: "";
	display: block;
	border-bottom: 1px solid grey;
	max-width: 30rem;
	margin: 2rem auto;
}


.survey-success::after {
	content: "";
	border-bottom: 1px solid grey;
	display: block;
	margin: 4rem auto;
	width: 10rem;
}

/* For the 'Questions for us?' paragraph in the results intro and at the very end */
.questions-for-us {
    font-size: 1.4rem;
}

.at-a-glance.results-container {
	display: grid;
	grid-gap: 1rem;
	grid-template-columns: repeat(4, 1fr);
	margin: 0 auto;
	padding: 1rem;
	margin-top: 4rem;
	max-width: 83rem;
}

.at-a-glance .results-section-content {
	background-color: #e9e9e9;
	padding: 0.6rem;
}

.at-a-glance .section-title {
	width: auto !important;  /* Don't use a fixed width for the tabs */
}

.at-a-glance .result:first-child {
	margin-top: 0;
}

.at-a-glance .result {
	border-radius: 0.2rem;
	color: black;
	background: white;
	padding: 0.25rem 0.7rem;
	margin-top: 0.2rem;
	font-size: 0.8rem;
	text-align: left;
}

.at-a-glance .result h3 {
	text-transform: uppercase;
	font-weight: 400;
	margin-bottom: 0.5rem;
}

.at-a-glance .result .score-out-of-five {
	font-weight: 300;
}

.at-a-glance .result p {
	margin-top: 0.5rem;
	font-weight: 300;
	min-height: 2rem;  /* There's probably a better way to make sure that these all show up as a proper grid, regardless of how much text is in here.  Probably 'overflow' */
}




.just-n-things {
	margin: 2rem;
}

.just-n-things > p {
	margin: 0 4rem;
	text-align: center;
	line-height: 1.6rem;
}

.just-n-things > h1 {
	text-align: center;
	font-size: 1.6rem;
}

.emphasis {
	font-size: 130%;
	font-weight: 500;
	text-transform: uppercase;
}

.just-n-things .tabs {
	display: flex;
}

.just-n-things .section-title {
	margin-top: 4rem;
}

.just-n-things-content {
	background: #e9e9e9;
	padding: 1rem;
	display: grid;
	grid-template-areas: 
		'meter your-results your-results'
		'important important important'
		'good good good';
	grid-template-columns: 30% 1fr;  /* Fixed width for the 'meter' box */
	grid-gap: 0.2rem;
	text-align: left;
}

.just-n-things-content > div {
	padding: 1rem;
	border-radius: 0.3rem;
	line-height: 1.2rem;
}

.just-n-things-content h3 {
	font-weight: 600;
	text-transform: uppercase;
	font-size: 1rem;
	margin: 0;
}

.just-n-things-content .score-out-of-five {
	font-weight: 300;
}

.just-n-things-content p {
	margin: 0;
	margin-top: 0.5rem;
}

.just-n-things .result {
	grid-area: meter;
	background:  white;
	color: black;
}

.just-n-things .result .meter {
	margin-top: 1rem;
}

.just-n-things .your-results {
	grid-area: your-results;
	background:  #904F5F;
}

.just-n-things .why-is-this-important {
	grid-area: important;
	background:  #445F70;
}

.just-n-things .what-does-good-look-like {
	grid-area: good;
	background:  #8F993E;
}

.just-n-things .section-title.priority {
	z-index: 1;
	margin-left: -1rem;
	text-transform: none;
	background-color: transparent;
	width: 50rem;
}

.just-n-things .section-title.priority h2 {
	font-size: 2rem;
	text-align: left;
	margin: 0.6rem 0 0 1.4rem;
}

.summary-report .just-n-things .section-title.priority {
	display: none;
}

.just-n-things .section-title.priority::before {
	visibility: hidden;  /* Don't get rid of it altogether, otherwise it messes up vertical alignment */
}


.original-questionnaire {
	margin-top: 6rem;
	padding-top: 3rem;
}

.original-questionnaire::before {
	content: "";
	display: block;
	max-width: 40rem;
	margin: 0 auto 5rem auto;
	border-top: 1px solid white;
}

.full-report-final-remarks {
	margin-top: 4rem;
	margin-bottom: 4rem;
}

.website-linkback {
	display: none;   /* Print only */
}









/*-------------------------------------------------------------------------------------------------------------
 *
 *  SIGN-UP FORM
 *
 */

.signup-form {
	display: grid;
	grid-template-areas:  
		'fields buttons';
	margin: 6rem auto;
	position: relative;  /* Enable us to place the button */
	max-width: 50rem;
}

.close {
	position: absolute;
	right: 5px;
}

.signup-form .buttons {
	grid-area: buttons;
	background: #264663;
	padding: 2rem;
	color: white;
	text-align: center;
	background-image: url(images/Report_Gate_Image_424018250.png);
	background-size: cover;
	background-repeat: no-repeat;
}

.signup-form .buttons .introduction {
	text-align: left;
	font-weight: 100;
	font-size: 1.2rem;
}

.signup-form .buttons .introduction h2 {
	font-size: 3.4rem;
	margin: 0;
	font-weight: 200;
	text-align: left;
	text-transform: uppercase;
	position: relative;
}

.signup-form .buttons .introduction h2 .last-letter {
	display: block;
	position: absolute;
	left: 15rem;
	top: -3rem;
	font-size: 14.5rem;
	font-weight: 100;  
}

.signup-form .buttons .introduction p {
	margin: 1.3rem 0 0.5rem 0;
	line-height: 130%;
}

.signup-form .buttons .introduction p:nth-child(2) {
	margin-top: 1rem;
}

.signup-form .buttons button {
	position: absolute;
	bottom: 2rem;
	right: 2rem;
}
	
.signup-form .validation-general-message {
	color: white;
	display: none;
	position: fixed;
	background-color: var(--score-colour-1);
	top: 0;
	left: 0;
	width: 40%;
	margin: 0 30%;
	padding: 2rem;
	text-align:center;
	border-radius: 0 0 1rem 1rem;
	font-weight: 500;
}

.signup-form.invalid-form .validation-general-message {
	display: block !important;
}

.signup-form .form-fields {
	grid-area: fields;
	background:  #627D94;
	padding: 2rem;
}

.signup-form label {
	display: block;
	padding-top: 0.2rem;
	font-size: 0.9rem;
	font-weight: 300;
	color: white;
	text-align: left;
}

.signup-form label::after {
	content: " *";
}

.signup-form input[type=text], .signup-form select, .signup-form textarea {
	width: 100%;
	margin-top: 0.2rem;
	margin-bottom: 0.5rem;
	padding: 0.7rem;
	font-size: 0.8rem;
	color: #666666;
}

.signup-form textarea {
	height: 5rem;
}

.validation-error {
	border-color: red !important;
}

.signup-form input[type=text] {
	width: 20rem;
}












/*------------------------------------------------------------------------------------------------------------
 *
 *  APPROACH
 *
 */
.approach-page .content > p {
	text-align: center;
	max-width: 65rem;
	margin: 2rem auto;
}

.approach-page .content > p:nth-child(2) {
	font-size: 1.2rem;
}

.approach-steps {
	max-width: 65rem;
	margin: 1rem auto;
}

.approach-steps .step {
	background: #e9e9e9;
	margin: 0 -1rem;   /* Line up with the section boxes */
	color: black;
	padding: 2rem;
	margin-bottom: 2px;
	text-align: left;
}

.approach-steps .step-summary {
	text-align: center;
	font-size: 1.4rem;
	font-weight: 500;
	margin: 2rem;
}

.approach-balls {
	margin: 1rem;
}

.approach-balls .big-ball {
	margin: -4.5rem auto 1rem auto;
}

.approach-balls .approach-section {
	background: #e9e9e9;
	padding: 0.3rem;
	margin-right: 0.3rem;
	margin-top: 5rem;
	position: relative;
}

.approach-balls .area {
	background: white;
	border-radius: 0.8rem;
	padding: 1rem;
	width: 14rem;
	margin-bottom: 0.2rem;
	text-align: left;
}

.approach-balls .area.toggled {
	z-index: 99;
	position: relative;
}

.approach-balls .area.toggled p {
	display: block;
	margin: top;
}

.approach-balls .area.toggled h3 a.right-arrow::after {
	content: "\25BC";
}

.approach-balls .area h3 {
	text-transform: uppercase;
	font-weight: 400;
	font-size: 1rem;
	margin: 0;
}

.approach-balls .area a {
	text-decoration: none;
	display: block;
}

.approach-balls .approach-section-1 .area h3 a {
	color: var(--standard-orange-100);
}
.approach-balls .approach-section-2 .area h3 a {
	color: var(--standard-myrtle-100);
}
.approach-balls .approach-section-3 .area h3 a {
	color: var(--standard-plum-100);
}
.approach-balls .approach-section-4 .area h3 a {
	color: var(--standard-slate-100);
}

.approach-balls .area p {
	display: none;
	font-size: 0.8rem;
}








/*------------------------------------------------------------------------------------------------------------
 *
 *  PDF PRINTING
 *
 */
@media print {
	
	html {
		/* Reduce the overall size of the page, so it fits nicely in a PDF; all other font sizes should be 'rem's based on this. */
		font-size: 10px;
	}


	/* PAGE BREAKS */

	.just-n-things {
		page-break-before: always;
	}

	.just-n-things-section:nth-child(5) {
		page-break-before: always;
	}

	.question-form-section:nth-child(odd) {
		page-break-after: always; 
	}


	/* HIDDEN / SHOWN ELEMENTS FOR PRINTING */

	.full-report-pdf-header {
		display: flex;
	}

	.header {
		display: none;
	}

	.full-report-pdf-intro {
		display: block;
	}
	
	.survey-success {
		display: none;
	}

	.website-linkback {
		display: block;
	}
	
	.footer {
		display: none;
	}


	/* STYLE CHANGES FOR PRINTING */

	body {
		min-height: auto !important;
		color: black;
		background: white;
	}

	a, a:visited {
		color: black;
	}

	.content, .content-2 {
		background: white;
	}

	.your-results, .why-is-this-important, .what-does-good-look-like {
		color: white;
	}

	.original-questionnaire::before {
		border-color: grey;
	}

	.question {
		background-color: #f2f2f2;
		border-color: #f2f2f2;
	}

	.just-n-things .section-title.priority h2 {
		color: black;
	}

}


