/**
 * Employment Equity Toolkit Styles
 * Consolidated styles for all toolkit page templates
 * Scoped to wrapper classes to avoid conflicts with parent theme
 *
 * @package NatureCanadaChild
 */

/* ==========================================================================
   CSS Custom Properties (Design Tokens)
   ========================================================================== */

.toolkit-landing-page,
.toolkit-content-page,
.toolkit-hub-page,
.toolkit-appendix-page {
	/* Colors */
	--color-teal: #03bf8c;
	--color-green-dark: #176662;
	--color-yellow: #fcb464;
	--color-brown: #674639;
	--color-beige: #cbbc9b;
	--color-black: #212428;
	--color-bg: #f3f0e7;
	--color-white: #ffffff;

	/* Typography */
	--font-heading: "Bebas Neue", sans-serif;
	--font-body: "Roboto", sans-serif;

	/* Spacing */
	--spacing-xs: 8px;
	--spacing-sm: 16px;
	--spacing-md: 24px;
	--spacing-lg: 40px;
	--spacing-xl: 80px;

	/* Layout */
	--max-width: 1200px;
	--content-width: 800px;
	--sidebar-width: 300px;
}

/* ==========================================================================
   Base Styles (Scoped to toolkit pages)
   ========================================================================== */

.toolkit-landing-page,
.toolkit-content-page,
.toolkit-hub-page,
.toolkit-appendix-page {
	margin-top: 45px;
	font-family: var(--font-body);
	font-size: 18px;
	font-weight: 400;
	line-height: 1.6;
	color: var(--color-black);
	background: var(--color-white);
}

.toolkit-landing-page *,
.toolkit-content-page *,
.toolkit-hub-page *,
.toolkit-appendix-page * {
	box-sizing: border-box;
}

/* Bebas Neue utility class */
.bebas {
	font-family: "Bebas Neue", sans-serif;
	font-weight: 400;
	line-height: 1;
}

/* ==========================================================================
   Typography
   ========================================================================== */

.toolkit-content-page h1,
.toolkit-hub-page h1,
.toolkit-appendix-page h1,
.toolkit-content-page .page-title,
.toolkit-hub-page .page-title,
.toolkit-appendix-page .page-title {
	font-family: var(--font-heading);
	font-size: 40px;
	font-weight: 400;
	line-height: 1;
	color: var(--color-brown);
	margin-bottom: var(--spacing-lg);
}

.toolkit-content-page h2,
.toolkit-hub-page h2,
.toolkit-appendix-page h2,
.toolkit-content-page .section-title,
.toolkit-hub-page .section-title,
.toolkit-appendix-page .section-title {
	font-family: var(--font-heading);
	font-size: 32px;
	font-weight: 400;
	line-height: 1;
	color: var(--color-black);
	margin-top: var(--spacing-lg);
	margin-bottom: var(--spacing-md);
}

.toolkit-content-page h3,
.toolkit-hub-page h3,
.toolkit-appendix-page h3 {
	font-family: var(--font-heading);
	font-size: 24px;
	font-weight: 400;
	line-height: 1;
	color: var(--color-black);
	margin-top: var(--spacing-md);
	margin-bottom: var(--spacing-sm);
}

.toolkit-content-page h4,
.toolkit-hub-page h4,
.toolkit-appendix-page h4 {
	font-family: var(--font-body);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.6;
	color: var(--color-black);
	margin-top: var(--spacing-md);
	margin-bottom: var(--spacing-xs);
}

.toolkit-content-page p,
.toolkit-hub-page p,
.toolkit-appendix-page p {
	font-family: var(--font-body);
	font-size: 18px;
	font-weight: 400;
	line-height: 1.6;
	color: var(--color-black);
	margin-bottom: var(--spacing-sm);
}

.toolkit-content-page p:last-child,
.toolkit-hub-page p:last-child,
.toolkit-appendix-page p:last-child {
	margin-bottom: 0;
}

/* Label styling */
.label {
	font-family: var(--font-body);
	font-size: 16px;
	font-weight: 600;
	line-height: 1.6;
	text-transform: uppercase;
	color: var(--color-brown);
}

.label-uppercase {
	font-weight: 600;
	font-size: 16px;
	text-transform: uppercase;
}

/* Links */
.toolkit-content-page a,
.toolkit-hub-page a,
.toolkit-appendix-page a {
	color: var(--color-green-dark);
	text-decoration: underline;
	transition: color 0.2s ease;
}

.toolkit-content-page a:hover,
.toolkit-hub-page a:hover,
.toolkit-appendix-page a:hover {
	color: var(--color-teal);
}

/* ==========================================================================
   LANDING PAGE STYLES
   ========================================================================== */

/* Header/Hero Section */
.toolkit-landing-page .header {
	background: #BAB875;
	height: 757px;
	position: relative;
	overflow: hidden;
	width: 100%;
}

.toolkit-landing-page .header-title-container {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, calc(-50% - 209.5px));
	width: 738px;
	text-align: center;
	color: white;
}

.toolkit-landing-page .header-subtitle {
	font-size: 40px;
	margin-bottom: 24px;
	color: white;
}

.toolkit-landing-page .header-title {
	font-size: 80px;
	color: white;
}

.toolkit-landing-page .hero-image {
	position: absolute;
	left: 50%;
	top: 700px;
	bottom: -200px;
	transform: translate(-50%, -50%);
	width: 800px;
	height: 800px;
	z-index: 1;
}

.toolkit-landing-page .hero-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}


.toolkit-landing-page .trees-left {
	position: absolute;
	bottom: -2px;
	left: 20px;
	width: auto;
	height: auto;
}

.toolkit-landing-page .trees-left img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.toolkit-landing-page .trees-right {
	position: absolute;
	bottom: -2px;
	right: 20px;
	height: 130px;
}

.toolkit-landing-page .trees-right img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/* Letter Section */
.toolkit-landing-page .letter-section {
	background: white;
	padding: 50px 0 0 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 79px;
	position: relative;
	overflow: hidden;
}

.toolkit-landing-page .letter-section .trees-left {
	position: absolute;
	bottom: 75px;
	left: 20px;
	width: auto;
	height: 130px;
}

@media (max-width: 799px) {
	.toolkit-landing-page .letter-section .trees-left {
		bottom: 65px;
	}
}
@media (max-width: 592px) {
	.toolkit-landing-page .letter-section .trees-left {
		bottom: 58px;
	}
}

@media (max-width: 445px) {
	.toolkit-landing-page .letter-section .trees-left {
        height: 80px;
        bottom: 67px;
	}
}

.toolkit-landing-page .letter-section .trees-right {
	position: absolute;
	bottom: -5px;
	right: 20px;
	height: 130px;
}



@media (max-width: 445px) {
	.toolkit-landing-page .letter-section .trees-right {
        height: 80px;
		bottom: 7px;
	}
}

.toolkit-landing-page .page-title {
	display: flex;
	align-items: center;
	position: relative;
}

.toolkit-landing-page .page-title-circle {
	width: 95px;
	height: 95px;
	position: absolute;
	left: -52px;
	top: -28px;
	z-index: 0;
}

.toolkit-landing-page .page-title-text {
	font-size: 40px;
	color: var(--color-brown);
	padding-left: 0px;
	position: relative;
	z-index: 1;
}

.toolkit-landing-page .letter-content {
	max-width: 750px;
	text-align: justify;
	font-size: 16px;
	line-height: 1.6;
	position: relative;
	z-index: 9;
}

.toolkit-landing-page .letter-content p {
	margin-bottom: 16px;
}

.toolkit-landing-page .signature-container {
	display: flex;
	gap: 80px;
	align-items: center;
	margin-top: 24px;
}

.toolkit-landing-page .signature-image {
	width: 351px;
	height: 120px;
}

.toolkit-landing-page .signature-name {
	font-weight: 700;
}

.toolkit-landing-page .headshot {
	width: 200px;
	height: 200px;
	border-radius: 50%;
	overflow: hidden;
}

.toolkit-landing-page .headshot img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.toolkit-landing-page .letter-footer-bg {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 94px;
}

/* Executive Summary Section */
.toolkit-landing-page .executive-summary {
	background: var(--color-bg);
	padding: 30px 50px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 30px;
	position: relative;
}

.toolkit-landing-page .summary-container {
	max-width: 1200px;
	display: flex;
	gap: 69px;
	align-items: flex-start;
	margin-top: 30px;
	padding-bottom: 100px;
}

.toolkit-landing-page .summary-text {
	flex: 1;
	font-size: 16px;
	text-align: left;
	line-height: 1.6;
}

.toolkit-landing-page .summary-text p {
	margin-bottom: 16px;
}

.toolkit-landing-page .summary-illustration {
	flex: 1;
	aspect-ratio: 415.5 / 459;
}

.toolkit-landing-page .summary-illustration img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.toolkit-landing-page .section-divider {
	width: 100%;
	height: 82.5px;
	position: relative;
	top: -40px;
}

/* Toolkit Section */
.toolkit-landing-page .toolkit-section {
	background: white;
	padding: 27px 0 0 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
}

.toolkit-landing-page .toolkit-title-container {
	position: relative;
	display: flex;
	align-items: center;
}

.toolkit-landing-page .toolkit-subtitle {
	font-size: 16px;
	font-weight: 600;
	text-transform: uppercase;
	color: var(--color-brown);
	position: relative;
	z-index: 1;
	margin: 0;
}

.toolkit-landing-page .toolkit-title {
	font-size: 40px;
	color: var(--color-brown);
	position: relative;
	z-index: 1;
	margin: 0;
}

.toolkit-landing-page .toolkit-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 37px;
	max-width: 1400px;
	padding: 80px 32px;
	width: 100%;
}

.toolkit-landing-page .toolkit-card-link {
	display: block;
	text-decoration: none;
	color: inherit;
	border-radius: 28px;
}

.toolkit-landing-page .toolkit-card-link:focus-visible .toolkit-card {
	outline: 3px solid var(--color-teal);
	outline-offset: 2px;
	transform: translateY(2px) scale(0.99);
	box-shadow: 4px 4px 10px 4px rgba(0, 0, 0, 0.02);
}

.toolkit-landing-page .toolkit-card {
	background: white;
	border-radius: 28px;
	padding: 50px;
	box-shadow: 10px 10px 20px 10px rgba(0, 0, 0, 0.04);
	position: relative;
	height: 100%;
	display: flex;
	flex-direction: column;
	cursor: pointer;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

@media (hover: hover) {
	.toolkit-landing-page .toolkit-card:hover {
		transform: translateY(2px) scale(0.99);
		box-shadow: 4px 4px 10px 4px rgba(0, 0, 0, 0.02);
	}

	.toolkit-landing-page .toolkit-card:hover .toolkit-card-button {
		background: var(--color-teal);
		color: var(--color-white);
	}
}

.toolkit-landing-page .toolkit-card:active {
	transform: scale(0.97);
	transition: transform 0.1s ease;
}

.toolkit-landing-page .toolkit-card-header {
	margin-bottom: 30px;
}

.toolkit-landing-page .toolkit-card-label {
	font-size: 16px;
	font-weight: 600;
	text-transform: uppercase;
	color: var(--color-black);
	margin-bottom: 8px;
}

.toolkit-landing-page .toolkit-card-title {
	font-size: 32px;
	color: var(--color-black);
	margin-bottom: 8px;
}

.toolkit-landing-page .toolkit-card-description {
	font-size: 18px;
	line-height: 1.6;
	color: var(--color-black);
	flex: 1;
}

.toolkit-landing-page .toolkit-card-button {
	background: rgba(234, 228, 215, 0.36);
	border-radius: 24px;
	padding: 16px 24px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--color-teal);
	font-size: 24px;
	text-decoration: none;
	position: absolute;
	bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	white-space: nowrap;
	pointer-events: none;
	transition: background-color 0.3s ease, color 0.3s ease;
}

/* Appendices Section */
.toolkit-landing-page .appendices-section {
	padding: 46px 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 30px;
}

.toolkit-landing-page .appendices-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 27px;
	padding: 36px 18px;
	width: 100%;
	max-width: 1500px;
}

.toolkit-landing-page .appendix-card-link {
	display: block;
	text-decoration: none;
	color: inherit;
	border-radius: 28px;
}

.toolkit-landing-page .appendix-card-link:focus-visible .appendix-card {
	outline: 3px solid var(--color-teal);
	outline-offset: 2px;
	transform: translateY(-4px) scale(1.01);
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
}

.toolkit-landing-page .appendix-card {
	background: rgba(234, 228, 215, 0.36);
	border-radius: 28px;
	padding: 50px;
	max-width: 500px;
	height: 100%;
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 16px;
	cursor: pointer;
	transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
}

@media (hover: hover) {
	.toolkit-landing-page .appendix-card:hover {
		transform: translateY(-4px) scale(1.01);
		box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
		background: rgba(234, 228, 215, 0.5);
	}

	.toolkit-landing-page .appendix-card:hover .toolkit-card-button {
		background: var(--color-teal);
		color: var(--color-white);
	}
}

.toolkit-landing-page .appendix-card:active {
	transform: scale(0.98);
	transition: transform 0.1s ease;
}

.toolkit-landing-page .appendix-card-title {
	font-size: 32px;
	color: var(--color-black);
	margin-bottom: 40px;
}

.toolkit-landing-page .appendix-card-description {
	font-size: 18px;
	line-height: 1.6;
	color: var(--color-black);
	margin-bottom: 12px;
	height: fit-content;
}

.toolkit-landing-page .appendix-card .toolkit-card-button {
	bottom: 12px;
	pointer-events: none;
	transition: background-color 0.3s ease, color 0.3s ease;
}

/* Photo Block */
.toolkit-landing-page .photo-block {
	padding: 50px 40px;
	display: flex;
	justify-content: center;
	overflow: hidden;
}

.toolkit-landing-page .photo-block img {
	max-width: 920px;
	width: 100%;
	height: auto;
	border-radius: 20px;
}

/* Footer */
.toolkit-landing-page .footer {
	position: relative;
	height: 256px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.toolkit-landing-page .footer-trees {
	position: absolute;
	top: 41.5px;
	right: 0;
	width: 331.909px;
	height: 91px;
}

.toolkit-landing-page .footer-bg {
	position: absolute;
	bottom: -28px;
	right: 0;
	width: 100%;
	height: 255px;
}

.toolkit-landing-page .donate-button {
	/*position: absolute;
	top: 50%;
	left: 50%;
	*/
	position: static;
	transform: translate(-50%, calc(-50% + 46px));
	background-color: var(--color-teal);
	transform: none;
	border-radius: 24px;
	padding: 16px 26px;
	box-shadow: 4px 8px 8px 0px rgba(0, 0, 0, 0.04);
	box-shadow: none;
	text-decoration: none;
	z-index: 10;
	cursor: pointer;
	transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
	text-align: center;
}

@media (hover: hover) {
	.toolkit-landing-page .donate-button:hover {
		transform: translate(0%, calc(-50% + 46px)) translateY(2px) scale(0.99);
		box-shadow: 2px 4px 6px 0px rgba(0, 0, 0, 0.02);
		background-color: rgba(234, 228, 215, 0.36);
	}

	.toolkit-landing-page .donate-button:hover .donate-button-text {
		color: var(--color-teal);
	}
}

.toolkit-landing-page .donate-button:active {
	/*transform: translate(-50%, calc(-50% + 46px)) scale(0.97);*/
	transform: scale(0.97);
	transition: transform 0.1s ease;
}

.toolkit-landing-page .donate-button-text {
	font-size: 40px;
	color: var(--color-white);
	transition: color 0.3s ease;
}

/* Decorative Elements */
.toolkit-landing-page .decorative-circle-left {
	position: absolute;
	left: 67px;
	top: 1316px;
	width: 143px;
	height: 143px;
}

.toolkit-landing-page .decorative-circle-right {
	position: absolute;
	left: 1228px;
	top:176px;
	width: 243px;
	height: 243px;
}

.toolkit-landing-page .decorative-pattern-left {
	position: absolute;
	left: auto;
	top: -130px;
	width: 490px;
	height: auto;
	transform: none;
	z-index: 5;
	right: 0px;
}

.toolkit-landing-page .decorative-pattern-right {
	position: absolute;
	width: 490px;
	right: 0px;
	left: 0px;
	z-index: 5;
	top: -60px;
	height: auto;
}

/* ==========================================================================
   CONTENT, HUB, & APPENDIX PAGE STYLES
   ========================================================================== */

/* Page Title Container */
.toolkit-content-page .page-title-container,
.toolkit-hub-page .page-title-container,
.toolkit-appendix-page .page-title-container {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 5px 0;
	margin-bottom: var(--spacing-lg);
}

.toolkit-content-page .page-title-circle,
.toolkit-hub-page .page-title-circle,
.toolkit-appendix-page .page-title-circle {
	width: 95px;
	height: 95px;
	position: absolute;
	left: -53px;
	top: -15px;
	z-index: 0;
}

.toolkit-content-page .page-title-container .label,
.toolkit-hub-page .page-title-container .label,
.toolkit-appendix-page .page-title-container .label {
	position: relative;
	z-index: 1;
}

.toolkit-content-page .page-title-container .page-title,
.toolkit-hub-page .page-title-container .page-title,
.toolkit-appendix-page .page-title-container .page-title {
	position: relative;
	z-index: 1;
	margin-bottom: 0;
}

.toolkit-content-page .page-title-container p,
.toolkit-hub-page .page-title-container p,
.toolkit-appendix-page .page-title-container p {
	margin-bottom: -8px;
}

/* Page Layout */
.toolkit-content-page .page-wrapper,
.toolkit-hub-page .page-wrapper,
.toolkit-appendix-page .page-wrapper {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
}

.toolkit-content-page .page-header,
.toolkit-hub-page .page-header,
.toolkit-appendix-page .page-header {
	padding: var(--spacing-md) var(--spacing-lg);
	max-width: var(--max-width);
	margin: 0 auto;
	width: 100%;
}

.toolkit-content-page .page-content,
.toolkit-hub-page .page-content,
.toolkit-appendix-page .page-content {
	flex: 1;
	padding: var(--spacing-lg);
	max-width: var(--max-width);
	margin: 0 auto;
	width: 100%;
}

.toolkit-content-page .content-narrow,
.toolkit-hub-page .content-narrow,
.toolkit-appendix-page .content-narrow {
	max-width: var(--content-width);
	margin: 0 auto;
}

.toolkit-content-page .page-footer,
.toolkit-hub-page .page-footer,
.toolkit-appendix-page .page-footer {
	padding: var(--spacing-lg);
	max-width: var(--max-width);
	margin: 0 auto;
	width: 100%;
}

/* Lists */
.toolkit-content-page ul,
.toolkit-content-page ol,
.toolkit-hub-page ul,
.toolkit-hub-page ol,
.toolkit-appendix-page ul,
.toolkit-appendix-page ol {
	margin-bottom: var(--spacing-sm);
	padding-left: var(--spacing-md);
}

.toolkit-content-page li,
.toolkit-hub-page li,
.toolkit-appendix-page li {
	margin-bottom: var(--spacing-xs);
	line-height: 1.6;
}

/* Blockquote / Quote Block */
.toolkit-content-page blockquote,
.toolkit-appendix-page blockquote {
	border-left: 4px solid var(--color-teal);
	padding-left: 32px;
	margin: var(--spacing-lg) 0;
	font-style: italic;
}

.toolkit-content-page blockquote p,
.toolkit-appendix-page blockquote p {
	margin-bottom: var(--spacing-sm);
}

.toolkit-content-page blockquote cite,
.toolkit-appendix-page blockquote cite {
	display: block;
	font-style: normal;
	font-weight: 700;
}

/* Callout Box */
.toolkit-content-page .callout,
.toolkit-appendix-page .callout {
	border: 1px solid var(--color-black);
	border-radius: 16px;
	padding: var(--spacing-md);
	margin: var(--spacing-lg) 0;
}

.toolkit-content-page .callout p:last-child,
.toolkit-appendix-page .callout p:last-child {
	margin-bottom: 0;
}

.toolkit-content-page .callout--highlight,
.toolkit-appendix-page .callout--highlight {
	background: var(--color-bg);
	border-color: var(--color-beige);
}

/* Image Block */
.toolkit-content-page figure,
.toolkit-appendix-page figure {
	margin: var(--spacing-lg) 0;
}

.toolkit-content-page figure img,
.toolkit-appendix-page figure img {
	max-width: 100%;
	height: auto;
	border-radius: 8px;
}

.toolkit-content-page figcaption,
.toolkit-appendix-page figcaption {
	font-size: 14px;
	color: black;
	margin-top: var(--spacing-xs);
	font-style: italic;
}

/* Tables (in .content-narrow) */
.toolkit-content-page .content-narrow table,
.toolkit-hub-page .content-narrow table,
.toolkit-appendix-page .content-narrow table {
	width: 100%;
	border-collapse: collapse;
	margin: var(--spacing-lg) 0;
	vertical-align: top;
}

.toolkit-content-page .content-narrow th,
.toolkit-content-page .content-narrow td,
.toolkit-hub-page .content-narrow th,
.toolkit-hub-page .content-narrow td,
.toolkit-appendix-page .content-narrow th,
.toolkit-appendix-page .content-narrow td {
	padding: var(--spacing-sm) var(--spacing-md);
	border: 1px solid var(--color-beige);
	text-align: left;
}

.toolkit-content-page .content-narrow thead th,
.toolkit-hub-page .content-narrow thead th,
.toolkit-appendix-page .content-narrow thead th {
	font-weight: 600;
	background: var(--color-bg);
	color: var(--color-black);
	border-bottom-width: 2px;
}

.toolkit-content-page .content-narrow tbody tr:nth-of-type(even),
.toolkit-hub-page .content-narrow tbody tr:nth-of-type(even),
.toolkit-appendix-page .content-narrow tbody tr:nth-of-type(even) {
	background: rgba(203, 188, 155, 0.12);
}

/* ==========================================================================
   Breadcrumb Navigation
   ========================================================================== */

.toolkit-content-page .breadcrumb,
.toolkit-hub-page .breadcrumb,
.toolkit-appendix-page .breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: var(--color-beige);
	margin-bottom: var(--spacing-lg);
	background: white;
}

.toolkit-content-page .breadcrumb a,
.toolkit-hub-page .breadcrumb a,
.toolkit-appendix-page .breadcrumb a {
	color: var(--color-beige);
	text-decoration: none;
	transition: color 0.2s ease;
}

.toolkit-content-page .breadcrumb a:hover,
.toolkit-hub-page .breadcrumb a:hover,
.toolkit-appendix-page .breadcrumb a:hover {
	color: var(--color-teal);
}

.toolkit-content-page .breadcrumb-separator,
.toolkit-hub-page .breadcrumb-separator,
.toolkit-appendix-page .breadcrumb-separator {
	color: var(--color-beige);
}

.toolkit-content-page .breadcrumb-current,
.toolkit-hub-page .breadcrumb-current,
.toolkit-appendix-page .breadcrumb-current {
	color: var(--color-brown);
	font-weight: 600;
}

/* ==========================================================================
   Prev/Next Navigation
   ========================================================================== */

.toolkit-content-page .page-nav,
.toolkit-hub-page .page-nav,
.toolkit-appendix-page .page-nav {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: var(--spacing-md);
	margin-top: 0;
	padding-top: var(--spacing-lg);
	border-top: 1px solid var(--color-bg);
}
@media (max-width: 600px) {
	.toolkit-content-page .page-nav,
	.toolkit-hub-page .page-nav,
	.toolkit-appendix-page .page-nav {
		margin-bottom: var(--spacing-xl);
	}
}

.toolkit-content-page .page-nav-link,
.toolkit-hub-page .page-nav-link,
.toolkit-appendix-page .page-nav-link {
	display: flex;
	flex-direction: column;
	gap: 4px;
	text-decoration: none;
	max-width: 45%;
}

.toolkit-content-page .page-nav-link--prev,
.toolkit-hub-page .page-nav-link--prev,
.toolkit-appendix-page .page-nav-link--prev {
	align-items: flex-start;
}

.toolkit-content-page .page-nav-link--next,
.toolkit-hub-page .page-nav-link--next,
.toolkit-appendix-page .page-nav-link--next {
	align-items: flex-end;
	text-align: right;
	margin-left: auto;
}

.toolkit-content-page .page-nav-label,
.toolkit-hub-page .page-nav-label,
.toolkit-appendix-page .page-nav-label {
	font-size: 14px;
	color: var(--color-beige);
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.toolkit-content-page .page-nav-title,
.toolkit-hub-page .page-nav-title,
.toolkit-appendix-page .page-nav-title {
	font-family: var(--font-heading);
	font-size: 20px;
	color: var(--color-brown);
	transition: color 0.2s ease;
}

.toolkit-content-page .page-nav-link:hover .page-nav-title,
.toolkit-hub-page .page-nav-link:hover .page-nav-title,
.toolkit-appendix-page .page-nav-link:hover .page-nav-title {
	color: var(--color-teal);
}

/* ==========================================================================
   Card Grid (for hub pages)
   ========================================================================== */

.toolkit-hub-page .card-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 37px;
	margin: var(--spacing-lg) 0;
}

.toolkit-hub-page .card-grid--2-col {
	grid-template-columns: repeat(2, 1fr);
}

.toolkit-hub-page .card-link {
	display: block;
	text-decoration: none;
	color: inherit;
	border-radius: 28px;
}

.toolkit-hub-page .card {
	background: var(--color-white);
	border-radius: 28px;
	padding: var(--spacing-md);
	box-shadow: 10px 10px 20px 10px rgba(0, 0, 0, 0.04);
	display: flex;
	flex-direction: column;
	min-height: 400px;
	position: relative;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.toolkit-hub-page .card:hover {
	transform: translateY(2px) scale(0.99);
	box-shadow: 4px 4px 10px 4px rgba(0, 0, 0, 0.02);
}

.toolkit-hub-page .card--appendix {
	background: rgba(234, 228, 215, 0.36);
	box-shadow: none;
}

.toolkit-hub-page .card-label {
	font-family: var(--font-body);
	font-size: 16px;
	font-weight: 600;
	text-transform: uppercase;
	color: var(--color-black);
	margin-bottom: var(--spacing-xs);
}

.toolkit-hub-page .card-title {
	font-family: var(--font-heading);
	font-size: 32px;
	font-weight: 400;
	line-height: 1;
	color: var(--color-black);
	margin-bottom: var(--spacing-xs);
}

.toolkit-hub-page .card-description {
	font-size: 18px;
	line-height: 1.6;
	color: var(--color-black);
	flex: 1;
}

.toolkit-hub-page .card .btn {
	position: absolute;
	bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
}

/* Hub Page Appendix Cards (matches homepage appendices section) */
.toolkit-hub-page .appendices-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 27px;
	padding: 36px 18px;
	width: 100%;
	max-width: 1500px;
	margin: 0 auto;
}

.toolkit-hub-page .appendix-card-link {
	display: block;
	text-decoration: none;
	color: inherit;
	border-radius: 28px;
}

.toolkit-hub-page .appendix-card-link:focus-visible .appendix-card {
	outline: 3px solid var(--color-teal);
	outline-offset: 2px;
	transform: translateY(-4px) scale(1.01);
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
}

.toolkit-hub-page .appendix-card {
	background: rgba(234, 228, 215, 0.36);
	border-radius: 28px;
	padding: 50px;
	max-width: 500px;
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 16px;
	cursor: pointer;
	transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
}

@media (hover: hover) {
	.toolkit-hub-page .appendix-card:hover {
		transform: translateY(-4px) scale(1.01);
		box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
		background: rgba(234, 228, 215, 0.5);
	}

	.toolkit-hub-page .appendix-card:hover .toolkit-card-button {
		background: var(--color-teal);
		color: var(--color-white);
	}
}

.toolkit-hub-page .appendix-card:active {
	transform: scale(0.98);
	transition: transform 0.1s ease;
}

.toolkit-hub-page .appendix-card-title {
	font-size: 32px;
	color: var(--color-black);
}

.toolkit-hub-page .appendix-card-description {
	font-size: 18px;
	line-height: 1.6;
	color: var(--color-black);
	margin-bottom: 12px;
	height: fit-content;
}

.toolkit-hub-page .appendix-card .toolkit-card-button {
	bottom: 12px;
	pointer-events: none;
	transition: background-color 0.3s ease, color 0.3s ease;
}

/* ==========================================================================
   Button Component
   ========================================================================== */

.toolkit-content-page .btn,
.toolkit-hub-page .btn,
.toolkit-appendix-page .btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: var(--font-heading);
	font-size: 24px;
	font-weight: 400;
	line-height: 1;
	color: var(--color-teal);
	background: rgba(234, 228, 215, 0.36);
	border: none;
	border-radius: 24px;
	padding: 16px 24px;
	text-decoration: none;
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease;
	white-space: nowrap;
}

.toolkit-content-page .btn:hover,
.toolkit-hub-page .btn:hover,
.toolkit-appendix-page .btn:hover {
	background: var(--color-teal);
	color: var(--color-white);
}

/* ==========================================================================
   Resources Section (Appendix pages)
   ========================================================================== */

.toolkit-appendix-page .resources-section {
	margin-top: var(--spacing-xl);
	padding-top: var(--spacing-lg);
	border-top: 1px solid var(--color-bg);
}

.toolkit-appendix-page .resources-list {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-md);
}

.toolkit-appendix-page .resource-item {
	padding: var(--spacing-md);
	background: var(--color-bg);
	border-radius: 16px;
}

.toolkit-appendix-page .resource-title {
	font-size: 20px;
	font-weight: 700;
	margin-bottom: var(--spacing-xs);
}

.toolkit-appendix-page .resource-description {
	margin-bottom: var(--spacing-sm);
}

@media (max-width: 1200px) {
	.toolkit-landing-page .letter-section {
		padding: 50px 0 100px 0;
	}
}

/* ==========================================================================
   Responsive Styles - Tablet (601px - 1024px)
   ========================================================================== */

@media (min-width: 601px) and (max-width: 1024px) {
	.toolkit-landing-page,
	.toolkit-content-page,
	.toolkit-hub-page,
	.toolkit-appendix-page {
		--spacing-lg: 30px;
		--spacing-xl: 60px;
	}

	/* Landing page tablet */
	.toolkit-landing-page .header {
		height: 680px;
	}

	.toolkit-landing-page .header-title-container {
		width: 85%;
		max-width: 600px;
	}

	.toolkit-landing-page .header-subtitle {
		font-size: 36px;
	}

	.toolkit-landing-page .header-title {
		font-size: 70px;
	}

	.toolkit-landing-page .hero-image {
		width: 600px;
		height: 600px;
		top: 600px;
	}

	.toolkit-landing-page .trees-left {
		width: auto;
		height: auto;
	}

	.toolkit-landing-page .trees-right {
		height: 110px;
	}

	.toolkit-landing-page .letter-section {
		padding: 40px 30px 100px 30px;
		gap: 60px;
	}

	.toolkit-landing-page .page-title-circle {
		width: 80px;
		height: 80px;
		left: -45px;
		top: -24px;
	}

	.toolkit-landing-page .page-title-text {
		font-size: 36px;
	}

	.toolkit-landing-page .letter-content {
		max-width: 100%;
		padding: 0 20px;
	}

	.toolkit-landing-page .signature-container {
		gap: 50px;
	}

	.toolkit-landing-page .signature-image {
		width: 300px;
		height: 102px;
	}

	.toolkit-landing-page .headshot {
		width: 170px;
		height: 170px;
	}

	.toolkit-landing-page .decorative-pattern-left {
		width: 245px;
	}

	.toolkit-landing-page .decorative-pattern-right {
		width: 245px;
	}

	.toolkit-landing-page .executive-summary {
		padding: 30px 40px;
	}

	.toolkit-landing-page .summary-container {
		gap: 50px;
		max-width: 95%;
	}

	.toolkit-landing-page .toolkit-section {
		padding: 25px 20px 0 20px;
	}

	.toolkit-landing-page .toolkit-title {
		font-size: 36px;
	}

	.toolkit-landing-page .toolkit-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 30px;
		padding: 30px 20px;
	}

	.toolkit-landing-page .toolkit-card {
		
		padding: 25px;
		padding-bottom: 80px;
	}

	.toolkit-landing-page .toolkit-card-title {
		font-size: 30px;
	}

	.toolkit-landing-page .appendices-section {
		padding: 40px 20px;
	}

	.toolkit-landing-page .appendices-grid {
		grid-template-columns: repeat(3, 1fr);
		gap: 24px;
		padding: 30px 20px;
	}

	.toolkit-landing-page .appendix-card {
		min-height: auto;
		max-width: 100%;
		padding: 25px;
		padding-bottom: 80px;
	}

	.toolkit-landing-page .appendix-card-title {
		font-size: 30px;
	}

	.toolkit-landing-page .photo-block {
		padding: 40px 30px;
	}

	.toolkit-landing-page .photo-block img {
		max-width: 85%;
		border-radius: 16px;
	}

	.toolkit-landing-page .footer {
		height: 220px;
	}

	.toolkit-landing-page .footer-trees {
		width: 280px;
		height: 77px;
		top: 35px;
	}

	.toolkit-landing-page .footer-bg {
		height: 220px;
		bottom: -24px;
	}

	.toolkit-landing-page .donate-button-text {
		font-size: 36px;
	}

	/* Content/Hub/Appendix pages tablet */
	.toolkit-content-page .page-title,
	.toolkit-hub-page .page-title,
	.toolkit-appendix-page .page-title,
	.toolkit-content-page h1,
	.toolkit-hub-page h1,
	.toolkit-appendix-page h1 {
		font-size: 36px;
	}

	.toolkit-content-page h2,
	.toolkit-hub-page h2,
	.toolkit-appendix-page h2 {
		font-size: 28px;
	}

	.toolkit-content-page h3,
	.toolkit-hub-page h3,
	.toolkit-appendix-page h3 {
		font-size: 22px;
	}

	.toolkit-hub-page .card-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 30px;
	}

	.toolkit-hub-page .card {
		min-height: 350px;
		padding-bottom: 80px;
	}

	.toolkit-hub-page .card-title {
		font-size: 28px;
	}

	/* Hub page appendix cards - tablet */
	.toolkit-hub-page .appendices-grid {
		grid-template-columns: repeat(3, 1fr);
		gap: 24px;
		padding: 30px 20px;
	}

	.toolkit-hub-page .appendix-card {
		min-height: auto;
		max-width: 100%;
		padding: 25px;
		padding-bottom: 80px;
	}

	.toolkit-hub-page .appendix-card-title {
		font-size: 30px;
	}

	.toolkit-content-page .page-title-circle,
	.toolkit-hub-page .page-title-circle,
	.toolkit-appendix-page .page-title-circle {
		width: 80px;
		height: 80px;
		left: -40px;
	}
}
@media (max-width: 781px) {
	.toolkit-landing-page .trees-left {
		display: none !important;
	}

	.toolkit-landing-page .trees-right {
		display: none !important;
	}
}
/* ==========================================================================
   Responsive Styles - Mobile (≤600px)
   ========================================================================== */

@media (max-width: 600px) {
	.toolkit-landing-page,
	.toolkit-content-page,
	.toolkit-hub-page,
	.toolkit-appendix-page {
		--spacing-lg: 24px;
		--spacing-xl: 40px;
		font-size: 16px;
	}

	/* Landing page mobile */
	.toolkit-landing-page .header {
		height: 630px;
	}

	.toolkit-landing-page .header-title-container {
		width: 90%;
		max-width: 350px;
		transform: translate(-50%, calc(-50% - 150px));
		bottom: 0px;
	}

	.toolkit-landing-page .header-subtitle {
		font-size: 40px;
	}

	.toolkit-landing-page .header-title {
		font-size: 67px;
	}

	.toolkit-landing-page .hero-image {
		width: 450px;
		height: 450px;
		top: 600px;
		bottom: 0px;
	}

	.toolkit-landing-page .letter-section {
		padding: 30px 20px 0 20px;
		gap: 30px;
	}

	.toolkit-landing-page .page-title-circle {
		width: 70px;
		height: 70px;
		left: -40px;
		top: -20px;
	}

	.toolkit-landing-page .page-title-text {
		font-size: 32px;
	}

	.toolkit-landing-page .letter-content {
		max-width: 100%;
		padding: 0 10px;
		text-align: left;
	}

	.toolkit-landing-page .signature-container {
		flex-direction: column;
		gap: 24px;
		align-items: flex-start;
		margin-bottom: 100px;
	}

	.toolkit-landing-page .signature-image {
		width: 280px;
		height: 96px;
	}

	.toolkit-landing-page .headshot {
		width: 150px;
		height: 150px;
	}

	.toolkit-landing-page .decorative-pattern-left {
		width: 245px;
	}

	.toolkit-landing-page .decorative-pattern-right {
		width: 245px;
	}

	.toolkit-landing-page .decorative-circle-left {
		width: 90px;
		height: 90px;
		left: 20px;
	}

	.toolkit-landing-page .decorative-circle-right {
		width: 150px;
		height: 150px;
		right: 20px;
	}

	.toolkit-landing-page .executive-summary {
		padding: 20px 20px;
		gap: 20px;
	}

	.toolkit-landing-page .summary-container {
		flex-direction: column;
		gap: 30px;
		margin-top: 20px;
	}

	.toolkit-landing-page .summary-text {
		font-size: 16px;
		padding-left: 30px;
		padding-right: 30px;
	}

	.toolkit-landing-page .summary-illustration {
		max-width: 100%;
	}

	.toolkit-landing-page .toolkit-section {
		padding: 20px 15px 0 15px;
		gap: 15px;
	}

	.toolkit-landing-page .toolkit-subtitle {
		font-size: 14px;
	}

	.toolkit-landing-page .toolkit-title {
		font-size: 32px;
	}

	.toolkit-landing-page .toolkit-grid {
		grid-template-columns: 1fr;
		gap: 24px;
		padding: 24px 15px;
	}

	.toolkit-landing-page .toolkit-card {
		min-height: auto;
		padding: 50px;
		border-radius: 20px;
	}

	.toolkit-landing-page .toolkit-card-link {
		border-radius: 20px;
	}

	.toolkit-landing-page .toolkit-card-title {
		font-size: 28px;
	}

	.toolkit-landing-page .toolkit-card-description {
		font-size: 16px;
		margin-bottom: 0px;
	}

	.toolkit-landing-page .toolkit-card-button {
		font-size: 20px;
		padding: 12px 20px;
		bottom: 20px;
	}

	.toolkit-landing-page .appendices-section {
		padding: 30px 15px;
		gap: 20px;
	}

	.toolkit-landing-page .appendices-grid {
		grid-template-columns: 1fr;
		gap: 20px;
		padding: 20px 15px;
	}

	.toolkit-landing-page .appendix-card-link {
		border-radius: 20px;
	}

	.toolkit-landing-page .appendix-card {
		min-height: auto;
		max-width: 100%;
		padding: 50px;
		border-radius: 20px;
	}

	.toolkit-landing-page .appendix-card-title {
		font-size: 26px;
	}

	.toolkit-landing-page .appendix-card-description {
		font-size: 16px;
		margin-bottom: 16px;
	}

	.toolkit-landing-page .photo-block {
		padding: 30px 30px;
	}

	.toolkit-landing-page .photo-block img {
		max-width: 100%;
		border-radius: 12px;
	}

	.toolkit-landing-page .footer {
		display: none;
	}

	.toolkit-landing-page .footer-trees {
		width: 200px;
		height: 55px;
		top: 43px;
		right: 0;
	}

	.toolkit-landing-page .footer-bg {
		height: 200px;
		bottom: -20px;
	}

	.toolkit-landing-page .donate-button {
		padding: 12px 20px;
		border-radius: 16px;
		/*transform: translate(-50%, calc(-50% + 35px));*/
	}

	.toolkit-landing-page .donate-button-text {
		font-size: 32px;
	}

	/* Content/Hub/Appendix pages mobile */
	.toolkit-content-page .page-title,
	.toolkit-hub-page .page-title,
	.toolkit-appendix-page .page-title,
	.toolkit-content-page h1,
	.toolkit-hub-page h1,
	.toolkit-appendix-page h1 {
		font-size: 32px;
	}

	.toolkit-content-page h2,
	.toolkit-hub-page h2,
	.toolkit-appendix-page h2 {
		font-size: 26px;
	}

	.toolkit-content-page h3,
	.toolkit-hub-page h3,
	.toolkit-appendix-page h3 {
		font-size: 20px;
	}

	.toolkit-content-page p,
	.toolkit-hub-page p,
	.toolkit-appendix-page p {
		font-size: 16px;
	}

	.toolkit-content-page .page-header,
	.toolkit-content-page .page-content,
	.toolkit-content-page .page-footer,
	.toolkit-hub-page .page-header,
	.toolkit-hub-page .page-content,
	.toolkit-hub-page .page-footer,
	.toolkit-appendix-page .page-header,
	.toolkit-appendix-page .page-content,
	.toolkit-appendix-page .page-footer {
		padding-left: var(--spacing-sm);
		padding-right: var(--spacing-sm);
	}

	.toolkit-content-page .page-title-container,
	.toolkit-hub-page .page-title-container,
	.toolkit-appendix-page .page-title-container {
		padding-left: 40px;
	}

	.toolkit-content-page .page-title-circle,
	.toolkit-hub-page .page-title-circle,
	.toolkit-appendix-page .page-title-circle {
		width: 70px;
		height: 70px;
		left: -30px;
	}

	.toolkit-hub-page .card-grid {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.toolkit-hub-page .card {
		min-height: auto;
		padding-bottom: 80px;
	}

	.toolkit-hub-page .card-title {
		font-size: 26px;
	}

	.toolkit-hub-page .card-description {
		font-size: 16px;
	}

	/* Hub page appendix cards - mobile */
	.toolkit-hub-page .appendices-grid {
		grid-template-columns: 1fr;
		gap: 20px;
		padding: 20px 15px;
	}

	.toolkit-hub-page .appendix-card-link {
		border-radius: 20px;
	}

	.toolkit-hub-page .appendix-card {
		min-height: auto;
		max-width: 100%;
		padding: 50px;
		border-radius: 20px;
	}

	.toolkit-hub-page .appendix-card-title {
		font-size: 26px;
	}

	.toolkit-hub-page .appendix-card-description {
		font-size: 16px;
		margin-bottom: 16px;
	}

	.toolkit-content-page .page-nav,
	.toolkit-hub-page .page-nav,
	.toolkit-appendix-page .page-nav {
		flex-direction: column;
		gap: var(--spacing-md);
	}

	.toolkit-content-page .page-nav-link,
	.toolkit-hub-page .page-nav-link,
	.toolkit-appendix-page .page-nav-link {
		max-width: 100%;
		width: 100%;
	}

	.toolkit-content-page .page-nav-link--next,
	.toolkit-hub-page .page-nav-link--next,
	.toolkit-appendix-page .page-nav-link--next {
		align-items: flex-start;
		text-align: left;
	}

	.toolkit-content-page .btn,
	.toolkit-hub-page .btn,
	.toolkit-appendix-page .btn {
		font-size: 20px;
		padding: 12px 20px;
	}

	.toolkit-content-page .breadcrumb,
	.toolkit-hub-page .breadcrumb,
	.toolkit-appendix-page .breadcrumb {
		font-size: 12px;
	}

	.toolkit-content-page blockquote,
	.toolkit-appendix-page blockquote {
		padding-left: 16px;
	}
}

/* ==========================================================================
   Sub-Menu Navigation
   ========================================================================== */

/* Sticky works only if no ancestor has overflow (hidden/auto/scroll) or transform.
   Keep these visible so the submenu can stick to the viewport. */
.toolkit-landing-page {
	overflow: visible;
}
.toolkit-submenu-wrapper {
	overflow: visible;
}

.toolkit-submenu {
	padding: 24px 40px;
	background: white;
	position: sticky;
	top: 59px;
	z-index: 100;
}

@media (max-width: 991px) {
	.toolkit-submenu {
		top: 45px;
	}
}

.toolkit-submenu-container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 1200px;
	margin: 0 auto;
	flex-wrap: wrap;
	gap: 16px;
}

.toolkit-submenu-container-mobile {
	display: none;
}

/* Burger button (mobile) */
.toolkit-submenu-burger {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 6px;
	width: 44px;
	height: 44px;
	padding: 10px;
	background: none;
	border: none;
	cursor: pointer;
	color: var(--color-brown);
	transition: color 0.2s ease;
}
.toolkit-submenu-burger:hover,
.toolkit-submenu-burger:focus-visible {
	color: var(--color-teal);
}
.toolkit-submenu-burger:focus-visible {
	outline: 2px solid var(--color-teal);
	outline-offset: 2px;
}
.toolkit-submenu-burger-line {
	display: block;
	width: 24px;
	height: 3px;
	background: currentColor;
	border-radius: 2px;
	transition: transform 0.2s ease, opacity 0.2s ease;
}
.toolkit-submenu.is-offcanvas-open .toolkit-submenu-burger-line:nth-child(1) {
	transform: translateY(9px) rotate(45deg);
}
.toolkit-submenu.is-offcanvas-open .toolkit-submenu-burger-line:nth-child(2) {
	opacity: 0;
}
.toolkit-submenu.is-offcanvas-open .toolkit-submenu-burger-line:nth-child(3) {
	transform: translateY(-9px) rotate(-45deg);
}

/* Off-canvas overlay */
.toolkit-submenu-overlay {
	display: none;
	position: fixed;
	inset: 0;
	background: rgba(33, 36, 40, 0.5);
	z-index: 98;
	opacity: 0;
	transition: opacity 0.25s ease;
}
.toolkit-submenu.is-offcanvas-open .toolkit-submenu-overlay {
	display: block;
	opacity: 1;
}

/* Off-canvas panel (left side) */
.toolkit-submenu-offcanvas {
	position: fixed;
	top: 0;
	left: 0;
	width: min(320px, 85vw);
	height: 100vh;
	background: var(--color-bg);
	z-index: 99;
	overflow-y: auto;
	transform: translateX(-100%);
	transition: transform 0.25s ease;
	box-shadow: 4px 0 24px rgba(0, 0, 0, 0.1);
}
.toolkit-submenu.is-offcanvas-open .toolkit-submenu-offcanvas {
	transform: translateX(0);
}

.toolkit-submenu-offcanvas-close {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: none;
	border: none;
	font-size: 28px;
	line-height: 1;
	color: var(--color-brown);
	cursor: pointer;
	transition: color 0.2s ease;
}
.toolkit-submenu-offcanvas-close:hover,
.toolkit-submenu-offcanvas-close:focus-visible {
	color: var(--color-teal);
}
.toolkit-submenu-offcanvas-close:focus-visible {
	outline: 2px solid var(--color-teal);
	outline-offset: 2px;
}

.toolkit-submenu-offcanvas-links {
	display: flex;
	flex-direction: column;
	padding: 70px 24px 24px;
	gap: 8px;
}
.toolkit-submenu-offcanvas-link {
	font-family: var(--font-heading);
	font-size: 22px;
	color: var(--color-brown);
	text-decoration: none;
	padding: 12px 0;
	border-bottom: 1px solid rgba(203, 188, 155, 0.4);
	transition: color 0.2s ease;
}
.toolkit-submenu-offcanvas-link:hover,
.toolkit-submenu-offcanvas-link.is-active {
	color: var(--color-teal);
}

@media (max-width: 991px) {
	.toolkit-submenu {
		position: static;
		padding: 0;
		background: transparent;
	}
	.toolkit-submenu-container {
		display: none;
	}
	.toolkit-submenu-container-mobile {
		display: block;
		position: fixed;
		bottom: 24px;
		left: 24px;
		z-index: 99;
		background: var(--color-bg);
		border: 2px solid var(--color-beige);
		border-radius: 12px;
		padding: 8px;
		box-shadow: 0 4px 20px rgba(33, 36, 40, 0.15);
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: opacity 0.25s ease, visibility 0.25s ease;
	}
	.toolkit-submenu-mobile-visible .toolkit-submenu-container-mobile {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}
}

.toolkit-submenu-link {
	font-family: var(--font-heading);
	font-size: 24px;
	color: #cbbc9b;
	text-decoration: none;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	transition: color 0.2s ease;
}

.toolkit-submenu-link:hover,
.toolkit-submenu-link.is-active {
	color: #674639;
}

@media (max-width: 1200px) {
	.toolkit-submenu-link  {
		font-size: 20px;
	}
}

.toolkit-submenu-indicator {
	width: 13px;
	height: 13px;
	background: #674639;
	border-radius: 50%;
}

/* Sub-menu responsive - tablet */
@media (min-width: 601px) and (max-width: 1024px) {
	.toolkit-submenu {
		padding: 20px 30px;
	}

	.toolkit-submenu-link {
		font-size: 20px;
	}
}

/* Sub-menu responsive - mobile */
@media (max-width: 600px) {
	.toolkit-submenu {
		padding: 16px 20px;
	}

	.toolkit-submenu-container {
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
	}

	.toolkit-submenu-link {
		font-size: 18px;
		flex-direction: row;
		gap: 8px;
	}

	.toolkit-submenu-indicator {
		width: 10px;
		height: 10px;
	}
}

/* ==========================================================================
   Read More Feature
   ========================================================================== */

.read-more-hidden {
	display: none;
}

.read-more-hidden.is-expanded {
	display: block;
	animation: fadeInReadMore 0.3s ease-in;
}

.read-more-toggle {
	display: block;
	margin-top: 1em;
	margin-left: 0;
	color: var(--color-teal);
	cursor: pointer;
	font-weight: 600;
	text-decoration: underline;
	background: none;
	border: none;
	font-size: inherit;
	font-family: inherit;
}

.read-more-toggle:hover {
	color: var(--color-green-dark);
}

.read-more-toggle:focus {
	outline: 2px solid var(--color-teal);
	outline-offset: 2px;
}

@keyframes fadeInReadMore {
	from { opacity: 0; }
	to { opacity: 1; }
}

/* ==========================================================================
   Logos Section
   ========================================================================== */

.toolkit-logos-section {
	padding: 40px;
	background: var(--color-white);
}

.toolkit-logos-container {
	display: flex;
	justify-content: center;
	align-items: center;
	/*gap: 80px;*/
	gap:0 !important;
	max-width: 1200px;
	margin: 0 auto;
	flex-wrap: wrap;
}

.toolkit-logo {
	object-fit: contain;
	width: 200px;
}

/* Logos responsive - tablet */
@media (min-width: 601px) and (max-width: 1024px) {
	/*
	.toolkit-logos-container {
		gap: 40px;
	}

	
	.toolkit-logo {
		height: 35px;
	}
		*/
}

/* Logos responsive - mobile */
@media (max-width: 600px) {
	.toolkit-logos-section {
		padding: 24px 30px;
	}

	.toolkit-logos-container {
		gap: 24px;
		justify-content: center;
	}

	/*
	.toolkit-logo {
		height: 30px;
	}
	*/
}

/* ==========================================================================
   Print Styles
   ========================================================================== */

@media print {
	.toolkit-content-page .breadcrumb,
	.toolkit-hub-page .breadcrumb,
	.toolkit-appendix-page .breadcrumb,
	.toolkit-content-page .page-nav,
	.toolkit-hub-page .page-nav,
	.toolkit-appendix-page .page-nav,
	.toolkit-content-page .btn,
	.toolkit-hub-page .btn,
	.toolkit-appendix-page .btn {
		display: none;
	}

	.toolkit-content-page,
	.toolkit-hub-page,
	.toolkit-appendix-page {
		font-size: 12pt;
		line-height: 1.5;
	}

	.toolkit-content-page .page-content,
	.toolkit-hub-page .page-content,
	.toolkit-appendix-page .page-content {
		max-width: 100%;
	}

	.toolkit-content-page a,
	.toolkit-hub-page a,
	.toolkit-appendix-page a {
		color: var(--color-black);
		text-decoration: underline;
	}

	.toolkit-content-page .callout,
	.toolkit-appendix-page .callout {
		border: 1px solid #000;
		page-break-inside: avoid;
	}
}


* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

:root {
	--color-teal: #03bf8c;
	--color-yellow: #fcb464;
	--color-brown: #674639;
	--color-black: #212428;
	--color-bg: #f3f0e7;
	--color-white: #ffffff;
}

body {
	font-family: "Roboto", sans-serif;
	background: white;
	color: var(--color-black);
	line-height: 1.6;
}

.bebas {
	font-family: "Bebas Neue", sans-serif;
	font-weight: 400;
	line-height: 1;
}

/* Header Section */
.header {
	background: var(--color-teal);
	height: 757px;
	position: relative;
	overflow: hidden;
	width: 100%;
}

.header-title-container {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, calc(-50% - 209.5px));
	width: 738px;
	text-align: center;
	color: white;
}

.header-subtitle {
	font-size: 40px;
	margin-bottom: 24px;
}

.header-title {
	font-size: 80px;
}

.hero-image {
	position: absolute;
	left: 50%;
	top: 700px;
	bottom: -200px;
	transform: translate(-50%, -50%);
	width: 800px;
	height: 800px;
}

.hero-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.trees-left {
	position: absolute;
	bottom: -2px;
	left: 20px;
	width: auto;
	height: auto;
}

.trees-left img {
	width: auto;
	height: auto;
}

.trees-right {
	position: absolute;
	bottom: -2px;
	right: 20px;
	height: 130px;
}

.trees-right img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/* Letter Section */
.letter-section {
	background: white;
	padding: 50px 0 0 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 79px;
	position: relative;
	overflow: hidden;
}

.letter-section .trees-left {
	position: absolute;
	bottom: 75px;
	left: 20px;
	width: auto;
	height: auto;
}

.letter-section .trees-left img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.letter-section .trees-right {
	position: absolute;
	bottom: -5px;
	right: 20px;
	height: 130px;
}

.letter-section .trees-right img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.page-title {
	display: flex;
	align-items: center;
	position: relative;
}

.page-title-circle {
	width: 95px;
	height: 95px;
	position: absolute;
	left: -52px;
	top: -28px;
	z-index: 0;
}

.page-title-text {
	font-size: 40px;
	color: var(--color-brown);
	padding-left: 0px;
	position: relative;
	z-index: 1;
}

.letter-content {
	max-width: 750px;
	text-align: justify;
	font-size: 16px;
	line-height: 1.6;
	position: relative;
	z-index: 100;
}

.letter-content p {
	margin-bottom: 16px;
}

.signature-container {
	display: flex;
	gap: 80px;
	align-items: center;
	margin-top: 24px;
}

.signature-image {
	width: 351px;
	height: 120px;
}

.signature-name {
	font-weight: 700;
}

.headshot {
	width: 200px;
	height: 200px;
	border-radius: 50%;
	overflow: hidden;
}

.headshot img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Executive Summary Section */
.executive-summary {
	background: var(--color-bg);
	padding: 30px 50px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 30px;
	position: relative;
}

.summary-container {
	max-width: 1200px;
	display: flex;
	gap: 69px;
	align-items: flex-start;
	margin-top: 30px;
	padding-bottom: 100px;
}

.summary-text {
	flex: 1;
	font-size: 16px;
}

.summary-illustration {
	flex: 1;
	aspect-ratio: 415.5 / 459;
}

.summary-illustration img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/* Toolkit Section */
.toolkit-section {
	background: white;
	padding: 27px 0 0 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
}

.toolkit-title-container {
	position: relative;
	display: flex;
	align-items: center;
}

.toolkit-subtitle {
	font-size: 16px;
	font-weight: 600;
	text-transform: uppercase;
	color: var(--color-brown);
	position: relative;
	z-index: 1;
	margin: 0;
}

.toolkit-title {
	font-size: 40px;
	color: var(--color-brown);
	position: relative;
	z-index: 1;
	margin: 0;
}

.toolkit-section .toolkit-title-container .toolkit-subtitle {
	text-align: left;
}

.toolkit-section .toolkit-title-container .bebas.toolkit-title {
	text-align: left;
}

.toolkit-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 37px;
	max-width: 1400px;
	padding: 80px 32px;
	width: 100%;
}

/* Toolkit card link wrapper */
.toolkit-card-link {
	display: block;
	text-decoration: none;
	color: inherit;
	border-radius: 28px;
}

/* Focus styles for keyboard navigation */
.toolkit-card-link:focus-visible .toolkit-card {
	outline: 3px solid var(--color-teal);
	outline-offset: 2px;
	transform: translateY(2px) scale(0.99);
	box-shadow: 4px 4px 10px 4px rgba(0, 0, 0, 0.02);
}

.toolkit-card {
	background: white;
	border-radius: 28px;
	padding: 50px;
	box-shadow: 10px 10px 20px 10px rgba(0, 0, 0, 0.04);
	position: relative;
	display: flex;
	flex-direction: column;
	cursor: pointer;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* Hover effects - inverted animation (press down) */
@media (hover: hover) {
	.toolkit-card:hover {
		transform: translateY(2px) scale(0.99);
		box-shadow: 4px 4px 10px 4px rgba(0, 0, 0, 0.02);
	}

	.toolkit-card:hover .toolkit-card-button {
		background: var(--color-teal);
		color: var(--color-white);
	}
}

/* Active/touch feedback - works on all devices */
.toolkit-card:active {
	transform: scale(0.97);
	transition: transform 0.1s ease;
}

.toolkit-card-header {
	margin-bottom: 16px;
}

.toolkit-card-label {
	font-size: 16px;
	font-weight: 600;
	text-transform: uppercase;
	color: var(--color-black);
	margin-bottom: 8px;
}

.toolkit-card-title {
	font-size: 32px;
	color: var(--color-black);
	margin-bottom: 8px;
}

.toolkit-card-description {
	font-size: 18px;
	line-height: 1.6;
	color: var(--color-black);
	flex: 1;
}

.toolkit-card-button {
	background: rgba(234, 228, 215, 0.36);
	border-radius: 24px;
	padding: 16px 24px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--color-teal);
	font-size: 24px;
	text-decoration: none;
	position: absolute;
	bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	white-space: nowrap;
	pointer-events: none;
	transition: background-color 0.3s ease, color 0.3s ease;
}

/* Appendices Section */
.appendices-section {
	padding: 46px 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 30px;
}

.appendices-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 27px;
	padding: 36px 18px;
	width: 100%;
	max-width: 1500px;
}

/* Appendix card link wrapper */
.appendix-card-link {
	display: block;
	text-decoration: none;
	color: inherit;
	border-radius: 28px;
}

/* Focus styles for keyboard navigation */
.appendix-card-link:focus-visible .appendix-card {
	outline: 3px solid var(--color-teal);
	outline-offset: 2px;
	transform: translateY(-4px) scale(1.01);
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
}

.appendix-card {
	background: rgba(234, 228, 215, 0.36);
	border-radius: 28px;
	padding: 50px;
	max-width: 500px;
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 16px;
	cursor: pointer;
	transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
}

/* Hover effects - only on devices that support hover */
@media (hover: hover) {
	.appendix-card:hover {
		transform: translateY(-4px) scale(1.01);
		box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
		background: rgba(234, 228, 215, 0.5);
	}

	.appendix-card:hover .toolkit-card-button {
		background: var(--color-teal);
		color: var(--color-white);
	}
}

/* Active/touch feedback - works on all devices */
.appendix-card:active {
	transform: scale(0.98);
	transition: transform 0.1s ease;
}

.appendix-card-title {
	font-size: 32px;
	color: var(--color-black);
}

.appendix-card-description {
	font-size: 18px;
	line-height: 1.6;
	color: var(--color-black);
	margin-bottom: 12px;
	height: fit-content;
}

.appendix-card .toolkit-card-button {
	bottom: 12px;
	pointer-events: none;
	transition: background-color 0.3s ease, color 0.3s ease;
}

/* Photo Block */
.photo-block {
	padding: 50px 40px;
	display: flex;
	justify-content: center;
	overflow: hidden;
}

.photo-block img {
	max-width: 920px;
	width: 100%;
	height: auto;
	border-radius: 20px;
}

/* Footer */
.footer {
	position: relative;
	height: 256px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.footer-trees {
	position: absolute;
	top: 41.5px;
	right: 0;
	width: 331.909px;
	height: 91px;
}

.footer-bg {
	position: absolute;
	bottom: -28px;
	right: 0;
	width: 100%;
	height: 255px;
}

.donate-button {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, calc(-50% + 46px));
	background: white;
	border-radius: 24px;
	padding: 16px 26px;
	box-shadow: 4px 8px 8px 0px rgba(0, 0, 0, 0.04);
	text-decoration: none;
	z-index: 10;
	cursor: pointer;
	transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
}

/* Hover effects - similar to cards (press down) */
@media (hover: hover) {
	.donate-button:hover {
		transform: translate(-50%, calc(-50% + 46px)) translateY(2px) scale(0.99);
		box-shadow: 2px 4px 6px 0px rgba(0, 0, 0, 0.02);
		background: var(--color-teal);
	}

	.donate-button:hover .donate-button-text {
		color: var(--color-white);
	}
}

/* Active/touch feedback - works on all devices */
.donate-button:active {
	transform: translate(-50%, calc(-50% + 46px)) scale(0.97);
	transition: transform 0.1s ease;
}

.donate-button-text {
	font-size: 40px;
	color: var(--color-teal);
	transition: color 0.3s ease;
}

/* Decorative Elements */
.decorative-circle-left {
	position: absolute;
	left: 67px;
	top: 1316px;
	width: 143px;
	height: 143px;
}

.decorative-circle-right {
	position: absolute;
	left: 1228px;
	top: 376px;
	width: 243px;
	height: 243px;
}

.decorative-pattern-left {
	position: absolute;
	left: auto;
	top: 410px;
	width: 490px;
	height: auto;
	transform: none;
	z-index: 5;
	right: 0px;
}

.decorative-pattern-right {
	position: absolute;
	width: 490px;
	right: 0px;
	left: 0px;
	z-index: 5;
	top: 190px;
	height: auto;
}

/* Label styling */
.label-uppercase {
	font-weight: 600;
	font-size: 16px;
	text-transform: uppercase;
}

@media (max-width: 1400px) {
	.toolkit-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* Mobile Styles - Based on Figma Design (≤600px) */
@media (max-width: 600px) {
	/* Header Section */
	.header {
		height: 630px;
	}

	.header-title-container {
		width: 90%;
		max-width: 350px;
		transform: translate(-50%, calc(-50% - 150px));
		bottom: 0px;
	}

	.header-subtitle {
		font-size: 40px;
	}

	.header-title {
		font-size: 67px;
	}

	.hero-image {
		width: 450px;
		height: 450px;
		top: 600px;
		bottom: 0px;
	}

	.trees-left {
		width: auto;
		height: auto;
	}

	.trees-right {
		height: 75px;
		right: 10px;
	}

	/* Letter Section */
	.letter-section {
		padding: 30px 20px 0 20px;
		gap: 30px;
	}

	.letter-section .trees-left {
		width: auto;
		height: auto;
	}

	.letter-section .trees-right {
		height: 75px;
		right: 10px;
		bottom: 5px;
	}

	.page-title-circle {
		width: 70px;
		height: 70px;
		left: -40px;
		top: -20px;
	}

	.page-title-text {
		font-size: 32px;
	}

	.letter-content {
		max-width: 100%;
		padding: 0 10px;
		text-align: left;
		position: relative;
		z-index: 100;
	}

	.signature-container {
		flex-direction: column;
		gap: 24px;
		align-items: center;
	}

	.signature-image {
		width: 280px;
		height: 96px;
	}

	.headshot {
		width: 150px;
		height: 150px;
	}

	/* Decorative patterns - mobile positioning */
	.decorative-pattern-left {
		width: 245px;
	}

	.decorative-pattern-right {
		width: 245px;
	}

	/* Scale down decorative circles */
	.decorative-circle-left {
		width: 90px;
		height: 90px;
		left: 20px;
	}

	.decorative-circle-right {
		width: 150px;
		height: 150px;
		right: 20px;
	}

	/* Executive Summary Section */
	.executive-summary {
		padding: 20px 20px;
		gap: 20px;
	}

	.summary-container {
		flex-direction: column;
		gap: 30px;
		margin-top: 20px;
	}

	.summary-text {
		font-size: 16px;
	}

	.summary-illustration {
		max-width: 100%;
	}

	/* Toolkit Section */
	.toolkit-section {
		padding: 20px 15px 0 15px;
		gap: 15px;
	}

	.toolkit-subtitle {
		font-size: 14px;
	}

	.toolkit-title {
		font-size: 32px;
	}

	.toolkit-grid {
		grid-template-columns: 1fr;
		gap: 24px;
		padding: 24px 15px;
	}

	.toolkit-card-link {
		border-radius: 20px;
	}

	.toolkit-card {
		min-height: auto;
		padding: 50px;
		border-radius: 20px;
	}

	.toolkit-card-title {
		font-size: 28px;
	}

	.toolkit-card-description {
		font-size: 16px;
		margin-bottom: 0px;
	}

	.toolkit-card-button {
		font-size: 20px;
		padding: 12px 20px;
		bottom: 20px;
	}

	/* Appendices Section */
	.appendices-section {
		padding: 30px 15px;
		gap: 20px;
	}

	.appendices-grid {
		grid-template-columns: 1fr;
		gap: 20px;
		padding: 20px 15px;
	}

	.appendix-card-link {
		border-radius: 20px;
	}

	.appendix-card {
		min-height: auto;
		max-width: 100%;
		padding: 50px;
		border-radius: 20px;
	}

	.appendix-card-title {
		font-size: 26px;
	}

	.appendix-card-description {
		font-size: 16px;
		margin-bottom: 16px;
	}

	/* Photo Block */
	.photo-block {
		padding: 30px 20px;
	}

	.photo-block img {
		max-width: 100%;
		border-radius: 12px;
	}

	/* Footer */
	.footer {
		height: 200px;
	}

	.footer-trees {
		width: 200px;
		height: 55px;
		top: 25px;
		right: 10px;
	}

	.footer-bg {
		height: 200px;
		bottom: -20px;
	}

	.donate-button {
		padding: 12px 20px;
		border-radius: 16px;
		/*transform: translate(-50%, calc(-50% + 35px));*/
	}

	@media (hover: hover) {
		.donate-button:hover {
			transform: scale(0.99);
		}
	}

	.donate-button:active {
		transform: scale(0.99);
	}

	.donate-button-text {
		font-size: 32px;
	}
}

/* Tablet Styles - Based on Figma Design (601-1024px) */
@media (min-width: 601px) and (max-width: 1024px) {
	/* Header Section */
	.header {
		height: 680px;
	}

	.header-title-container {
		width: 85%;
		max-width: 600px;
	}

	.header-subtitle {
		font-size: 36px;
	}

	.header-title {
		font-size: 70px;
	}

	.hero-image {
		width: 600px;
		height: 600px;
		top: 600px;
	}

	.trees-left {
		width: auto;
		height: auto;
	}

	.trees-right {
		height: 110px;
	}

	/* Letter Section */
	.letter-section {
		padding: 40px 30px 0 30px;
		gap: 60px;
	}

	.letter-section .trees-left {
		width: auto;
		height: auto;
	}

	.letter-section .trees-right {
		height: 110px;
	}

	.page-title-circle {
		width: 80px;
		height: 80px;
		left: -45px;
		top: -24px;
	}

	.page-title-text {
		font-size: 36px;
	}

	.letter-content {
		max-width: 100%;
		padding: 0 20px;
		position: relative;
		z-index: 100;
	}

	.signature-container {
		gap: 50px;
	}

	.signature-image {
		width: 300px;
		height: 102px;
	}

	.headshot {
		width: 170px;
		height: 170px;
	}

	/* Decorative patterns - tablet positioning */
	.decorative-pattern-left {
		width: 245px;
	}

	.decorative-pattern-right {
		width: 245px;
	}

	/* Executive Summary Section */
	.executive-summary {
		padding: 30px 40px;
	}

	.summary-container {
		gap: 50px;
		max-width: 95%;
	}

	.summary-illustration {
		flex: 0.8;
	}

	/* Toolkit Section */
	.toolkit-section {
		padding: 25px 20px 0 20px;
	}

	.toolkit-title {
		font-size: 36px;
	}

	.toolkit-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 30px;
		padding: 30px 20px;
	}

	.toolkit-card {
		
		padding: 25px;
		padding-bottom: 80px;
	}

	.toolkit-card-title {
		font-size: 30px;
	}

	.toolkit-card-header {
		margin-bottom: 20px;
	}

	.toolkit-card-description {
		font-size: 17px;
		margin-bottom: 0px;
	}

	/* Appendices Section */
	.appendices-section {
		padding: 40px 20px;
	}

	.appendices-grid {
		grid-template-columns: repeat(3, 1fr);
		gap: 24px;
		padding: 30px 20px;
	}

	.appendix-card {
		min-height: auto;
		max-width: 100%;
		padding: 25px;
		padding-bottom: 80px;
	}

	.appendix-card-description {
		margin-bottom: 20px;
	}

	.appendix-card-title {
		font-size: 30px;
	}

	/* Photo Block */
	.photo-block {
		padding: 40px 30px;
	}

	.photo-block img {
		max-width: 85%;
		border-radius: 16px;
	}

	/* Footer */
	.footer {
		height: 220px;
	}

	.footer-trees {
		width: 280px;
		height: 77px;
		top: 35px;
	}

	.footer-bg {
		height: 220px;
		bottom: -24px;
	}

	.donate-button {
		padding: 14px 22px;
	}

	.donate-button-text {
		font-size: 36px;
	}
}
