/**
 * RECO Information Guide — brand foundation.
 *
 * The single lean stylesheet that establishes the fonts, the colour palette, and
 * the layout of the site header and footer. Replaces the heavy reco.on.ca stack
 * (Bootstrap / Font Awesome / Material Icons / reco2025.css). The application
 * (form/acknowledgement) styling lives in public.css and consumes the tokens
 * defined here.
 */

/* Fonts ------------------------------------------------------------------- */
@font-face {
	font-family: "Figtree";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("../fonts/Figtree-Regular.ttf") format("truetype");
}
@font-face {
	font-family: "Figtree";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("../fonts/Figtree-Bold.ttf") format("truetype");
}

/* Brand tokens ------------------------------------------------------------ */
:root {
	/* RECO palette */
	--reco-green: #214c3b;        /* primary brand green (header logo, footer bg) */
	--reco-green-dark: #012811;   /* deep green */
	--reco-mint: #1aba8a;         /* accent / hover / focus */
	--reco-sand: #fdf9ed;         /* cream text on green */
	--reco-orange: #bd4f2e;       /* warm accent */

	/* Semantic tokens consumed by public.css (forms) */
	--reco-accent: #214c3b;
	--reco-accent-dark: #163829;
	--reco-text: #0d0d0d;
	--reco-muted: #586b62;
	--reco-border: #d7ddd9;
	--reco-error: #b3261e;
	--reco-success-bg: #e7f4ec;
	--reco-success-border: #b5e0c4;
	--reco-bg: #f4f6f3;

	/* Type */
	--reco-body-font: "Figtree", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	/* Swap this later for the chosen h1/h2 display face. */
	--reco-heading-font: "Figtree", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

	/*--reco-shell-width: 1240px;*/
	reco-shell-width: 100%;
}

/* Base -------------------------------------------------------------------- */
* { box-sizing: border-box; }

body {
	margin: 0;
	color: var(--reco-text);
	background: var(--reco-bg);
	font-family: var(--reco-body-font);
	line-height: 1.55;
	-webkit-font-smoothing: antialiased;
}

a { color: var(--reco-green); }

h1, h2, h3 { font-family: var(--reco-heading-font); }

.reco-body { display: flex; min-height: 100vh; flex-direction: column; }
.reco-body main { flex: 1 0 auto; }

/* Accessibility helper */
.screen-reader-text {
	position: absolute !important;
	width: 1px; height: 1px;
	padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0, 0, 0, 0);
	white-space: nowrap; border: 0;
}
.reco-skip-link {
	position: absolute;
	left: -9999px;
	top: 0;
	background: var(--reco-green);
	color: var(--reco-sand);
	padding: 10px 16px;
	z-index: 1000;
}
.reco-skip-link:focus { left: 8px; top: 8px; }

/* Shared shell width for the full-width bars */
.reco-shell {
	width: 100%;
	max-width: var(--reco-shell-width);
	margin: 0 auto;
	/*padding: 0 24px;*/
	padding: 0 6rem;
}

/* ======================================================================== */
/* Header                                                                    */
/* ======================================================================== */
.reco-masthead {
	background: var(--reco-green);
	border-top: 5px solid var(--reco-green);
	border-bottom: 1px solid var(--reco-border);
	position: sticky;
	top: 0;
	z-index: 100;
}
.reco-masthead__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	min-height: 84px;
}
.reco-masthead__logo {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
}
.reco-masthead__logo img {
	display: block;
	width: 188px;
	height: auto;
}

/* Primary nav */
.reco-nav {
	display: flex;
	align-items: center;
	gap: 28px;
}
.reco-nav__list {
	display: flex;
	align-items: center;
	gap: 28px;
	margin: 0;
	padding: 0;
	list-style: none;
}


.reco-nav__list a {
	display: inline-block;
	text-decoration: none;
	color: var(--reco-sand);
	font-weight: 700;
	font-size: 1.02rem;
	padding: 6px 0;
	border-bottom: 2px solid transparent;
	transition: color 0.15s ease, border-color 0.15s ease;
}
.lang_switch a{
	color: var(--reco-sand);
}
.reco-nav__list a:hover,
.reco-nav__list a:focus-visible {
	color: var(--reco-mint);
	border-bottom-color: var(--reco-mint);
}

/* Search */
.reco-nav__search {
	display: flex;
	align-items: center;
	border: 1px solid var(--reco-border);
	border-radius: 999px;
	padding: 2px 4px 2px 14px;
	background: #fff;
}
.reco-nav__search input {
	font: inherit;
	font-size: 0.95rem;
	border: 0;
	outline: none;
	background: transparent;
	width: 140px;
	color: var(--reco-text);
}
.reco-nav__search button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border: 0;
	border-radius: 50%;
	background: var(--reco-green);
	color: #fff;
	cursor: pointer;
	flex: 0 0 auto;
}
.reco-nav__search button:hover { background: var(--reco-mint); }
.reco-nav__search button svg { width: 18px; height: 18px; }

/* Hamburger (mobile only) */
.reco-nav-toggle {
	display: none;
	flex-direction: column;
	justify-content: center;
	gap: 5px;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid var(--reco-border);
	border-radius: 8px;
	background: #fff;
	cursor: pointer;
}
.reco-nav-toggle__bar {
	display: block;
	width: 22px;
	height: 2px;
	margin: 0 auto;
	background: var(--reco-green);
	transition: transform 0.2s ease, opacity 0.2s ease;
}
.reco-nav-toggle[aria-expanded="true"] .reco-nav-toggle__bar:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.reco-nav-toggle[aria-expanded="true"] .reco-nav-toggle__bar:nth-child(2) { opacity: 0; }
.reco-nav-toggle[aria-expanded="true"] .reco-nav-toggle__bar:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

.page-title{
	padding-left:6rem;
	padding-right:6rem;
	color: var(--reco-green-dark);
}


a.btn-reco-orange {
font-family: "classico-urw", sans-serif;
    background-color: #bd4f2e;
    color: #fdf9ed !important;
    border-radius: 26px;
    font-size: 16px;
    padding: 14px 18px;
    margin-top: 12px;
    display: inline-block;
    text-align: center;
    text-decoration: none;
}

.btn-reco-orange:hover {
    background-color: #e06a3d;
    color: #fdf9ed;
}







@media (max-width: 860px) {
	.reco-nav-toggle { display: flex; }
	.reco-nav {
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		background: var(--reco-green);
		border-bottom: 1px solid var(--reco-border);
		box-shadow: 0 12px 24px rgba(13, 13, 13, 0.08);
		padding: 8px 24px 20px;
		display: none;
	}
	.reco-nav.is-open { display: flex; }
	.reco-nav__list {
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		width: 100%;
	}
	.reco-nav__list li { border-bottom: 1px solid var(--reco-border); }
	.reco-nav__list a {
		display: block;
		padding: 14px 0;
		border-bottom: none;
	}
	.reco-nav__search {
		margin-top: 16px;
		width: 100%;
	}

	.reco-shell {
    	padding: 0 2rem;
}

	.reco-nav__search input { width: 100%; }
}

/* ======================================================================== */
/* Footer                                                                    */
/* ======================================================================== */
.reco-footer {
	background: var(--reco-green);
	color: var(--reco-sand);
	border-top: 14px solid var(--reco-mint);
	padding: 72px 0 32px;
	margin-top: 64px;
}
.reco-footer a { color: var(--reco-sand); text-decoration: none; }
.reco-footer a:hover { color: var(--reco-mint); }

.reco-footer__cols {
	display: grid;
	grid-template-columns: 1.2fr 1fr 1fr 1fr 1fr;
	gap: 32px;
}
.reco-footer__logo img {
	display: block;
	width: 160px;
	height: auto;
	margin-bottom: 22px;
}

.reco-footer__title {
	display: inline-block;
	font-family: var(--reco-heading-font);
	font-weight: 700;
	font-size: 1.35rem;
	line-height: 1.3;
	color: var(--reco-sand);
}
.reco-footer__title--bordered {
	display: block;
	border-bottom: 3px solid var(--reco-sand);
	padding-bottom: 8px;
	margin-bottom: 22px;
}
.reco-footer__title--bordered:hover { color: var(--reco-mint); }

.reco-footer__list,
.reco-footer__sublist,
.reco-footer__titlelist {
	list-style: none;
	margin: 0;
	padding: 0;
}
.reco-footer__list li { margin-top: 12px; }
.reco-footer__list a,
.reco-footer__sublist a { font-size: 1rem; line-height: 1.45; }

.reco-footer__titlelist > li { margin-top: 18px; }
.reco-footer__titlelist > li:first-child { margin-top: 0; }
.reco-footer__sublist { margin: 10px 0 0; }
.reco-footer__sublist li { margin-top: 8px; }
.reco-footer__sublist a { font-weight: 400; }

/* Utility row: social + legal */
.reco-footer__utility {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-top: 48px;
}
.reco-footer__social { display: flex; align-items: center; gap: 12px; }
.reco-footer__social img { width: 40px; height: 40px; display: block; }
.reco-footer__legal { display: flex; flex-wrap: wrap; gap: 28px; }
.reco-footer__legal a { font-weight: 700; letter-spacing: 0.02em; }

/* Copyright + CPO */
.reco-footer__copyright {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-top: 28px;
	padding-top: 20px;
	border-top: 3px solid var(--reco-sand);
}
.reco-footer__copyright p { margin: 0; font-size: 0.95rem; }
.reco-footer__copyright img { width: 154px; height: auto; display: block; }

@media (max-width: 1080px) {
	.reco-footer__cols { grid-template-columns: 1fr 1fr 1fr; }
}
@media (max-width: 680px) {
	.reco-footer__cols { grid-template-columns: 1fr; }
	.reco-footer { padding-top: 56px; }
}
