body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    background-color: #f8f9fa;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    min-height: 100vh;
    overflow-y: auto;
	overflow-x: hidden;
    text-align: center;
    flex-direction: column; /* Stack elements vertically */
}

button, a {
    touch-action: manipulation;
}

.page-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 500px;
    padding: 20px;
	box-sizing: border-box; /* Ensures padding doesn't affect width */
}

/* Responsive adjustments for mobile */
@media (max-width: 768px) {
    .page-wrapper {
        max-width: 100%; /* Adjust width for mobile */
        padding: 0px; /* Add padding to avoid edge touches */
    }
}

.container {
    background: white;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.15);
    text-align: center;
    max-width: 500px;
    width: 100%;
    position: relative;
    margin: 0 auto;
    transition: all 0.5s ease;
	box-sizing: border-box;
}

/* Fix for Mobile */
@media (max-width: 768px) {
    .container {
        max-width: 100%; /* Full width on small devices */
        border-radius: 0; /* Optional: removes rounded edges for mobile */
    }
}

.hidden {
    display: none !important;
}

.logo-container {
    text-align: center;
    margin-bottom: 20px;
    transition: all 0.5s ease;
}

.logo {
    max-height: 270px;
    width: auto;
    display: block;
    margin: 0 auto;
    transition: all 0.5s ease;
}

.small-logo {
    max-height: 50px;
    width: auto;
    display: block;
    position: absolute;
    top: 10px;
    left: 10px;
    transition: all 0.5s ease;
}

.top-bar {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    margin-bottom: 10px;
    position: relative;
	padding-left: 70px;
    padding-top: 7px;
}

h1 {
    font-size: 24px;
    color: #333;
    font-weight: bold;
    transition: all 0.5s ease;
	white-space: nowrap; /* Prevents line breaks */
}

/* Make H1 smaller on small screens */
@media (max-width: 480px) { /* Very small devices */
    h1 {
        font-size: 20px; /* Reduce font size for small screens */
    }
	.small-logo{
		max-height: 42px;
	}
	.top-bar {
		padding-left: 65px;
	}
}

.bold {
    font-weight: bold;
}

p, li {
    font-size: 16px;
    color: #666;
    transition: all 0.5s ease;
}

.uploaded-image {
    max-width: 100%;
    max-height: 340px;
    border-radius: 10px;
    margin-top: 10px;
    border: 2px solid #ddd;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
    display: block;
    transition: all 0.5s ease;
}

button {
    background-color: #c62828; /* Darker red */
    color: white;
    border: none;
    padding: 12px 18px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 16px;
    transition: background 0.3s, transform 0.2s;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.2);
}

button:hover {
    background-color: #b71c1c; /* Even darker on hover */
    transform: scale(1.05);
}

#result {
    
}

.content-container{
	margin-top: 15px;
	font-size: 16px;
    color: #333;
    background: #f5f5f5;
    padding: 15px;
    border-radius: 10px;
    border: 1px solid #ddd;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
    display: none;
    transition: all 0.3s ease-in-out;
	text-align: left;
}

/* General Table Styling */
#result table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
    font-size: 16px;
    border-radius: 8px;
    overflow: hidden;
}

/* Table Header */
#result th {
    background-color: #a0a0a0; /* Dark background */
    color: white; /* White text */
    font-weight: bold;
    padding: 10px;
    text-align: left;
}

/* Table Body */
#result td {
    background-color: #f8f9fa; /* Light gray */
    color: #333;
    padding: 10px;
    border-bottom: 1px solid #ddd; /* Light separator */
}

/* Alternating Row Colors */
#result tr:nth-child(even) td {
    background-color: #ececec;
}

/* Add some padding inside table */
#result td, #result th {
    padding: 12px;
}

/* Hover effect for rows */
#result tr:hover td {
    background-color: #ddd;
}


.image-preview {
    width: 250px; /* Set the size of the preview */
    height: 250px; /* Keep it square */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 10px;
    margin: 10px auto;
    display: none;
    border: 2px solid #ddd;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
}

.disclaimer-container {
    width: 90%;
    max-width: 400px;
    margin: 20px auto;
    padding: 10px;
    text-align: center;
    background: rgba(0, 0, 0, 0.05); /* Light grey background for subtle contrast */
    border-radius: 8px;
	margin-top: 10px;
}

.disclaimer {
    font-size: 10px;
    color: #666;
    margin: 0;
}

/* Navigation Bar */
.navbar {
	padding: 15px 0;
    width: 100%;
    background-color: white;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 20px; /* Adds spacing below the navbar */
	box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.15);
}

/* Content inside the nav bar */
.nav-content {
    width: 100%;
    max-width: 460px; /* Matches main container width */
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Sidebar Logo */
.menu-logo {
    width: 100%;
    text-align: center;
    padding-bottom: 15px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.menu-logo img {
    height: 60px; /* Adjust logo size */
    max-width: 80%;
}

.menu-logo a{
	text-decoration: none;
	color: #333;
}

.menu-logo span{
	font-weight: bold;
}

/* Language switcher button */
.nav-button {
    background: none;
    border: none;
    color: black;
    font-size: 16px;
    cursor: pointer;
    padding: 5px 10px;
    transition: color 0.3s ease-in-out;
	box-shadow: none;
	border-radius: 0px;
	display: flex;
}

/* Hamburger Icon */
.hamburger-icon {
    width: 25px;
    height: 15px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    cursor: pointer;
}

.hamburger-icon span {
    display: block;
    width: 100%;
    height: 2px;
    background: black;
    border-radius: 2px;
    transition: all 0.3s ease-in-out;
}

/* Transform Hamburger to X when active */
.nav-button.open .hamburger-icon span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
}

.nav-button.open .hamburger-icon span:nth-child(2) {
    opacity: 0; /* Hide the middle bar */
}

.nav-button.open .hamburger-icon span:nth-child(3) {
    transform: translateY(-5px) rotate(-45deg);
}

.menu-button{
	background: none;
	box-shadow: none;
	border-radius: 0px;
	color: black;
}

/* Hover effect: Red text */
.nav-button:hover {
    color: #c62828; /* Red on hover */
	background: none;
    border: none;
	border-radius: 0px;
}

/* Sidebar Menu */
.menu-sidebar {
    position: fixed;
    top: 0;
    left: 0;
    width: 250px;
    height: 100%;
    background: #f8f9fa;
    padding-top: 75px;
    box-shadow: 2px 0 5px rgba(0, 0, 0, 0.2);
    display: flex;
    flex-direction: column;
	z-index: 10;
	transform: translateX(-100%);
    /* transition: transform 0.3s ease; */
}

.menu-sidebar.active {
    /*left: 0; /* Slides in */
	transform: translateX(0);
}

/* Close Button */
.close-btn {
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 30px;
    background: none;
    border: none;
    color: #333;
    cursor: pointer;
	box-shadow: none;
}
.close-btn:hover{
	background-color: transparent;
	transform: scale(1);
}

/* Menu Links */
.menu-item {
	position: relative;
    padding: 15px;
    color: #333;
    text-decoration: none;
    display: block;
    font-size: 18px;
}

.menu-item i {
	font-size: 30px;
}

.menu-item.active {
	color: #c62828 !important; /* Highlight active link */
}

.menu-item.active i {
	color: #c62828 !important; /* Highlight active icon */
}

/* Small line under menu items */
.menu-item:not(:last-child)::after {
    content: "";
    display: block;
    width: 50%;  /* Adjust width of the line */
    height: 1px;
    background: rgba(0, 0, 0, 0.3); /* Light faded line */
    margin: 15px auto -15px;
    transition: width 0.3s ease-in-out;
}

/* Overlay Background */
.menu-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5); /* Dark transparent overlay */
    visibility: hidden;
    opacity: 0;
    /* transition: opacity 0.3s ease-in-out; */
    z-index: 9; /* Below the menu but above everything else */
}

.menu-overlay.active {
    visibility: visible;
    opacity: 1;
}

/* Responsive adjustments for mobile */
@media (max-width: 768px) {
	.nav-content{
		max-width: 100%; /* Adjust width for mobile */
        padding: 0px; /* Add padding to avoid edge touches */
	}
}

.maple-pledge-button{
	margin-top: 10px;
}

a{
	color: #c62828;
	text-decoration: none;
	font-size: 14px;
}

.contact-us ul{
	text-align: left;
}

#feedbackButtons{
	margin-top: 15px;
	display: flex;
	justify-content: center;
	gap: 15px;
}




.company-history {
    padding: 0;
}

.history-header {
	padding: 15px;/*  15px 0px 15px */
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
}

.history-header h2 {
    margin: 0;
    font-size: 18px;
}

#toggleButton {
    background: none;
    border: none;
    font-size: 20px;
    cursor: pointer;
	color: #c62828;
}

.history-content {
    margin-top: 10px;
    border-top: 1px solid #ddd;
}

.history-item {
    display: flex;
    align-items: center;
    padding: 5px 15px;
}

.history-item p{
	color: #333;
}

.history-item:nth-child(even) {
    background-color: #f7f7f7; /* Light gray for even items */
}

.history-item:nth-child(odd) {
    background-color: #ffffff; /* White for odd items */
}

.history-item:last-child {
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

.history-item:hover {
    background-color: #ddd; /* Light gray on hover */
}

.year {
    font-weight: bold;
    margin-right: 10px;
}

.flag {
    margin-right: 5px;
}





.canadian-alternatives {
    
}

.alternatives-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
}

.alternatives-header h2 {
    font-size: 18px;
    margin: 0;
}

.alternatives-list {
	margin-top: 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.alternative-item {
    background: #f8f9fa;
    border-radius: 10px;
    padding: 12px;
    display: flex;
    align-items: center; /* Ensures vertical alignment */
    justify-content: space-between; /* Spreads content */
    transition: background 0.3s ease;
    cursor: pointer;
    border: 1px solid #ddd;
	text-align: left;
	gap: 15px;
}

.alternative-item:hover {
    background: #ddd;
}

.alternative-image-wrapper {
    flex-shrink: 0; /* Prevents shrinking */
}

.alternative-image {
    width: 60px; /* Adjust size as needed */
    height: 60px;
    border-radius: 8px;
    object-fit: cover;
}

.alternative-content {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
	
	user-select: none; /* Prevents text selection */
    -webkit-user-select: none; /* Safari */
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* IE/Edge */
}

.alternative-list {
    display: flex;
    flex-direction: column; /* Stacks elements vertically */
    flex-grow: 1; /* Allows the text area to expand */
}

.alternative-brand {
    font-size: 14px;
    font-weight: bold;
    color: #555;
    text-transform: uppercase;
}

.alternative-product {
    font-size: 16px;
    font-weight: bold;
    color: #222;
    margin-top: 2px;
}

.alternative-description {
    font-size: 14px;
    color: #666;
    margin-top: 5px;
}

.alternative-arrow {
    font-size: 24px; /* Larger arrow */
    color: #aaa;
    margin-left: 15px; /* Adds spacing */
    display: flex;
    align-items: center; /* Centers the arrow vertically */
    justify-content: center;
}





/* Timeline Container */
.timeline-container {
    max-width: 600px;
    margin: 20px auto;
    font-family: Arial, sans-serif;
    position: relative;
}

/* Vertical Line */
.timeline-container::before {
    content: "";
    position: absolute;
    left: 20px;
    top: 0;
    bottom: 0;
    width: 4px;
    background: #D9D9D9;
}

/* Timeline Entry (Cards) */
.timeline-entry {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
    position: relative;
}

/* Circle Indicator */
.timeline-entry::before {
    content: "";
    position: absolute;
    left: 10px;
    width: 14px;
    height: 14px;
    background: #D32F2F; /* Red color for emphasis */
    border-radius: 50%;
    border: 3px solid white;
    z-index: 2;
}

/* Timeline Content (Card Style) */
.timeline-content {
    background: #F5F5F5;
    padding: 15px;
    border-radius: 10px;
    margin-left: 40px; /* Offset to align with vertical timeline */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    cursor: pointer;
    transition: background 0.2s ease-in-out;
    width: calc(100% - 60px);
}

/* Hover effect */
.timeline-content:hover {
    background: #EAEAEA;
}

/* Year Label */
.timeline-year {
    font-size: 14px;
    font-weight: bold;
    color: #555;
    text-transform: uppercase;
    margin-bottom: 5px;
}

/* Event Title */
.timeline-title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 5px;
}

/* Event Description */
.timeline-description {
    font-size: 14px;
    color: #444;
}






.overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    z-index: 1000;
    overflow: auto;
    display: flex;
    justify-content: center;
    align-items: center;
}

.overlay-content {
    background-color: white;
    padding: 20px;
    max-width: 400px;
    margin: 50px auto;
    border-radius: 10px;
    text-align: center;
    position: relative;
}

.overlay-image {
    max-width: 100%;
	max-height: 50vh;
    border-radius: 10px;
    margin-bottom: 15px;
}

.overlay-close {
    position: absolute;
    top: 10px;
    right: 20px;
    font-size: 24px;
    cursor: pointer;
    color: #333;
}

.overlay-inside {
	display: block;
}

#overlayBrand {
	margin: 0;
	text-transform: uppercase;
    font-size: 18px;
    font-weight: bold;
    color: #555;
}

#overlayProductName {
    font-size: 22px;
    font-weight: bold;
    color: #222;
    margin-top: 5px;
}

#overlayDescription {
    font-size: 14px;
    color: #666;
    margin-top: 10px;
}


.footer-link{
	color: #666;
	font-size: 10px;
}
