:root {
	--gp-dark: #1a3a2a;
	--gp-mid: #2a5a3f;
	--gp-accent: #4a9e6f;
	--gp-light: #e8f0e9;
	--gp-cream: #faf8f4;
	--gp-gold: #c8a84b;
	--gp-text: #1c1c1c;
	--gp-muted: #6b7280;
	--gp-border:#e2e8e4;
}
/* ── Breadcrumb ── */
.breadcrumb-bar {
	border-bottom: 1px solid var(--gp-border);
	background-color: #fff
}
.breadcrumb {
	max-width: 1200px;
	margin: 0 auto;
	padding: 12px 13px;
	font-size: 12px;
	color: var(--gp-muted);
	display: flex;
	gap: 6px;
	align-items: center;
}
.breadcrumb a {
	color: var(--gp-muted);
	text-decoration: none;
}
.breadcrumb a:hover {
	color: var(--gp-dark)
}
.breadcrumb span {
	color: var(--gp-border);
}
.breadcrumb span.active {
	color: var(--gp);
}
/* ── Shared layout ── */
.section-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 13px
}
.section-tag{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gp);margin-bottom:10px}
.section-heading{font-family:"Work Sans", sans-serif;font-size:42px;font-weight:600;color:var(--gp);line-height:1.1;margin-bottom:14px}
.section-heading.light{color:#fff}
.section-sub{font-size:15px;color:var(--gp);line-height:1.75;max-width:620px}
.section-sub.light{color:rgba(255,255,255, .7);}

/* ── Hero ── */
.hero {
	padding: 80px 0;
	overflow: hidden;
	position: relative;
}
.hero::before {
	content: '';
    position: absolute;
    inset: 0;
    background: rgb(28 58 18 / 20%);
    pointer-events: none;
	z-index: 2;
}
.hero picture, .hero img.bg-image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 1;
}
.hero-inner {
	max-width: 1200px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr 420px;
	gap: 72px;
	align-items: center;
	position: relative;
	z-index: 3;
	padding: 0 13px;
}
.hero-eyebrow {
	font-size: 12px;
	letter-spacing: .15em;
	text-transform: uppercase;
	color: #e8f0e9;
	margin-bottom: 16px;
}
.hero-title {
	font-family: "Work Sans", sans-serif;
	font-size: 56px;
	font-weight: 600;
	color: #fff;
	line-height :1.05;
	margin-bottom: 20px;
}
.hero-title em {
	font-style: italic;
	color: #e8f0e9;
}
.hero-desc {
	font-size: 16px;
	color: #e8f0e9;
	line-height: 1.75;
	margin-bottom: 32px;
}
.hero-stats {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 20px;
}
.hero-stat {
	border-left: 2px solid #e8f0e9;
	padding-left: 16px;
}
.hero-stat-num {
	font-family: "Work Sans", sans-serif;
	font-size: 40px;
	font-weight: 600;
	color: #fff;
	line-height: 1;
}
.hero-stat-label {
	font-size: 12px;
	color: #e8f0e9;
	margin-top: 4px;
}
.hero-visual {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 10px;
	height: 380px;
}
.hero-img {
	background-color :#e8f0e9;
	border-radius: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 52px;
	overflow: hidden;
}
.hero-img img {
	height: 100%;
	object-fit: cover;
}
.hero-img.tall {
	grid-row: span 2;
}
/* ── Our Story ── */
.story-section {
	padding: 88px 0;
	background-color: #fff;
}
.story-inner {
	max-width: 1200px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: 80px;
	align-items: center;
	padding: 0 13px;
}
.story-text p {
	font-size: 15px;
	color: var(--gp-muted);
	line-height: 1.85;
	margin-bottom: 18px;
}
.story-text p:last-child {
	margin-bottom:0;
}
.story-text strong {
	color:var(--gp-dark);
	font-weight:500;
}
.story-visual {
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: 10px;
}
.sv-img {
	background: var(--gp-light);
	border-radius: 14px;
	aspect-ratio: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 44px;
	overflow: hidden;
}
.sv-img img {
	height: 100%;
	object-fit: cover;
	object-position: center top;
}
.sv-img.wide {
	grid-column: span 2;
	aspect-ratio: 2/1;
}

/* ── Mission / Values ── */
.mission-section {
	background-color: #e8f0e9;
	border-top: 1px solid var(--gp-border);
	border-bottom: 1px solid var(--gp-border);
	padding: 88px 0;
}
.mission-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 13px;
}
.mission-header {
	text-align: center;
	max-width: 680px;
	margin: 0 auto 56px;
}
.values-grid {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 24px;
}
.value-card {
	background: #fff;
	border: 1.5px solid var(--gp-border);
	border-radius: 18px;
	padding: 30px 26px;
	transition: transform .2s,box-shadow .2s;
}
.value-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 32px rgba(26,58,42,.08);
}
.value-icon {
	font-size: 40px;
	margin-bottom: 16px;
}
.value-icon img {
	width: 40px;
}
.value-title {
	font-family: "Work Sans", sans-serif;
	font-size: 22px;
	font-weight: 600;
	color: var(--gp);
	margin-bottom: 10px;
	line-height: normal;
}
.value-desc {
	font-size: 14px;
	color: var(--gp-muted);
	line-height: 1.7;
}

/* ── Process ── */
.process-section {
	padding: 88px 0;
	background: #fff;
}
.press-inner-info {
	text-align: center;
	max-width: 600px;
	margin: 0 auto;
}
.process-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 13px;
}
.process-grid {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 0;
	margin-top: 48px;
	position: relative;
}
.process-grid::before {
	content: '';
	position: absolute;
	top: 40px;
	left: 10%;
	right: 10%;
	height: 2px;
	background: var(--gp-border);
}
.process-step{text-align:center;padding:0 12px;position:relative}
.ps-num{width:80px;height:80px;border-radius:50%;background-color:var(--gp);color:#fff;font-family:"Work Sans", sans-serif;font-size:32px;font-weight:600;margin:0 auto 20px;display:flex;align-items:center;justify-content:center;position:relative;z-index:1}
.ps-icon{font-size:18px;position:absolute;bottom:-4px;right:-4px;background:#fff;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:2px solid var(--gp-light)}
.ps-icon img { width:18px; }
.ps-title{font-size:16px;font-weight:500;color:var(--gp);margin-bottom:8px}
.ps-desc{font-size:13px;color:var(--gp-muted);line-height:1.6}

  /* ── Certifications ── */
.cert-section {
	background-color: #27723c;
	padding: 72px 0;
}
.cert-inner {
	max-width: 1200px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 72px;
	align-items: center;
	padding: 0 13px;
}
.cert-badges{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.cert-badge{background-color: var(--gp);border-radius:16px;padding:22px;display:flex;align-items:flex-start;gap:14px}
.cb-icon{font-size:32px;flex-shrink:0}
.cb-icon img { width: 32px; }
.cb-title{font-size:15px;font-weight:500;color:#fff;margin-bottom:4px}
.cb-desc{font-size:12px;color:rgba(255,255,255,.7);line-height:1.5}

  /* ── Sustainability ── */
.sustainability-section{padding:88px 0;background:#e8f0e9;border-top:1px solid var(--gp-border)}
.sus-inner {
	max-width: 1200px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 72px;
	align-items: start;
	padding: 0 13px;
}
.sus-content p{font-size:15px;color:var(--gp-muted);line-height:1.8;margin-bottom:18px}
.sus-steps{display:flex;flex-direction:column;gap:12px;margin-top:24px}
.sus-step{display:flex;gap:14px;align-items:flex-start;padding:16px;background:#fff;border-radius:12px;border:1px solid var(--gp-border)}
.ss-num{width:32px;height:32px;border-radius:50%;background-color:var(--gp);color:#fff;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ss-title{font-size:14px;font-weight:500;color:var(--gp);margin-bottom:3px}
.ss-desc{font-size:12px;color:var(--gp-muted);line-height:1.5}
.sus-impact{display:flex;flex-direction:column;gap:16px}
.impact-card{background:#fff;border-radius:16px;padding:24px;border:1.5px solid var(--gp-border)}
.impact-num{font-family:"Work Sans", sans-serif;font-size:44px;font-weight:600;color:var(--gp);line-height:1}
.impact-label{font-size:13px;font-weight:500;color:var(--gp);margin-top:4px;margin-bottom:4px}
.impact-desc{font-size:12px;color:var(--gp-muted);line-height:1.5}

  /* ── Team ── */
.team-section{padding:88px 0;background:#fff}
.team-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 13px;
}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px}
.team-card{border:1.5px solid var(--gp-border);border-radius:18px;overflow:hidden;text-align:center;transition:transform .2s,box-shadow .2s}
.team-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(26,58,42,.08)}
.team-img{height:200px;background:var(--gp-light);display:flex;align-items:center;justify-content:center;font-size:64px;overflow:hidden}
.team-img img {
    object-fit: cover;
    height: 100%;
    object-position: center top;
}
.team-body{padding:20px}
.team-name{font-family:"Work Sans", sans-serif;font-size:22px;font-weight:600;color:#27723c;margin-bottom:4px}
.team-role{font-size:12px;color:var(--gp-accent);font-weight:500;text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}
.team-bio{font-size:13px;color:var(--gp-muted);line-height:1.6}

  /* ── Community ── */
  .community-section{background:var(--gp);padding:80px 0;text-align:center}
  .community-inner{max-width:720px;margin:0 auto; padding: 0 13px;}
  .community-inner blockquote{font-family:"Work Sans", sans-serif;font-size:28px;font-style:italic;color:#fff;line-height:1.4;margin-bottom:16px}
  .community-inner cite{font-size:13px;color:rgba(255,255,255, .7);font-style:normal}
  .instagram-grid{margin-top:48px;max-width:1200px;margin-left:auto;margin-right:auto; padding: 0 13px;}
  
  .community-title { color:rgba(255,255,255, .7);text-align:center }

  /* ── CTA ── */
  .cta-section{padding:80px 0;background-color:rgb(41 131 80 / 5%);border-top:1px solid var(--gp)}
  .cta-inner{max-width:1200px;margin:0 auto; padding: 0 13px;}
  .cta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px}
  .cta-card{border-radius:18px;padding:32px;text-decoration:none;display:block;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}
  .cta-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,.1)}
  .cta-card.dark{background-color:var(--gp)}
  .cta-card.light{background-color:#fff;border:1.5px solid var(--gp-border)}
  .cta-card.accent{background-color:#27723c}
  .cta-card-icon{font-size:36px;margin-bottom:14px}
  .cta-card-title{font-family:"Work Sans", sans-serif;font-size:24px;font-weight:600;margin-bottom:8px}
  .cta-card.dark .cta-card-title,.cta-card.accent .cta-card-title{color:#fff}
  .cta-card.light .cta-card-title{color:var(--gp)}
  .cta-card-desc{font-size:13px;line-height:1.6}
  .cta-card.dark .cta-card-desc,.cta-card.accent .cta-card-desc{color:rgba(255,255,255, .7)}
  .cta-card.light .cta-card-desc{color:var(--char);}
  .cta-card-arrow{font-size:20px;position:absolute;bottom:24px;right:24px;opacity:.5}
  .cta-card.dark .cta-card-arrow,.cta-card.accent .cta-card-arrow{color:rgba(255,255,255, .7)}
  .cta-card.light .cta-card-arrow{color:var(--gp)}
  .cta-inner-a { text-align:center;max-width:560px;margin:0 auto }
  .m-auto { margin:0 auto }

  /* ── Scroll animations ── */
  .fade-up{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}
  .fade-up.visible{opacity:1;transform:translateY(0)}
.cert-title { color:rgba(255,255,255, .7); }
  @media(max-width:1000px){
    .hero-inner,.story-inner,.cert-inner,.sus-inner{grid-template-columns:1fr}
    .hero-visual,.story-visual{display:none}
    .values-grid{grid-template-columns:1fr 1fr}
    .process-grid{grid-template-columns:repeat(2,1fr)}
    .process-grid::before{display:none}
    .team-grid{grid-template-columns:1fr 1fr}
    .cta-grid{grid-template-columns:1fr}
    .hero-stats{grid-template-columns:repeat(3,1fr)}
  }
@media(max-width:600px) {
	.breadcrumb {
		padding-top: 6px;
		padding-bottom: 6px;
	}
	.hero {
		padding: 30px 0;
	}
	.hero-eyebrow {
		margin-bottom: 6px;
	}
	.hero-title {
		font-size: 32px;
		line-height: 1;
		margin-bottom: 10px;
	}
	.hero-desc {
		font-size: 14px;
		line-height: 1.5;
		margin-bottom: 14px;
	}
	.hero-stats {
        gap: 10px;
    }
	.hero-stat {
		padding-left: 12px;
	}
	.hero-stat-num {
		font-size: 22px;
	}
	.hero-stat-label {
		margin-top: 3px;
		line-height: 1.3;
	}
	.hero::before {
		background: rgb(0 0 0 / 35%);
	}
	.hero img.bg-image {
		object-position: center 0;
	}
	.story-section, .mission-section, .process-section, .cert-section, .sustainability-section, .team-section, .community-section, .cta-section {
		padding: 30px 0;
	}
	.section-tag {
		margin-bottom: 6px;
	}
    .section-heading {
		font-size: 26px;
		margin-bottom: 8px;
	}
	.story-text p {
		font-size: 14px;
		line-height: 1.6;
		margin-bottom: 8px;
	}
	.mission-header {
		text-align: left;
		max-width: 100%;
		margin: 0 0 16px;
	}
	.section-sub {
		font-size: 14px;
		line-height: 1.6;
		max-width: 100%;
	}
	.values-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 12px;
    }
	.value-card {
		padding: 16px 14px;
	}
	.value-title {
		font-size: 18px;
		margin-bottom: 6px;
		line-height: normal;
	}
	.value-desc {
		line-height: 1.6;
	}
	.process-grid {
		margin-top: 18px;
		gap: 12px;
	}
	.ps-num {
		width: 50px;
		height: 50px;
		font-size: 18px;
		margin: 0 auto 10px;
	}
	.ps-title {
		font-size: 14px;
		margin-bottom: 6px;
	}
	.ps-desc {
		line-height: 1.4;
	}
	.process-step {
		padding: 0;
	}
	.cert-inner {
		gap: 18px;
	}
	.cert-badge {
		padding: 14px;
	}
	.cb-title {
		font-size: 14px;
	}
	.sus-content p {
		font-size: 14px;
		line-height: 1.6;
		margin-bottom: 8px;
	}
	.sus-steps {
		margin-top: 12px;
	}
	.sus-step {
		gap: 10px;
		padding: 10px;
	}
	.ss-num {
		width: 26px;
		height: 26px;
	}
	.sus-inner {
		gap: 18px;
	}
	.impact-card {
		padding: 12px;
	}
	.impact-num {
		font-size: 24px;
	}
	.sus-impact {
		gap: 8px;
	}
    .team-grid {
		grid-template-columns: repeat(1, 1fr);
		gap: 12px;
		margin-top: 12px;
	}
	.team-body {
		padding: 10px;
	}
	.team-name {
		font-size: 18px;
	}
	.team-role {
		margin-bottom: 6px;
	}
	.team-bio {
		line-height: 1.5;
	}
	.community-inner blockquote {
		font-size: 22px;
		line-height: 1.2;
		margin-bottom: 12px;
	}
	.instagram-grid {
		margin-top: 8px;
	}
	.cta-grid {
		margin-top: 8px;
		gap: 8px;
	}
	.cta-card {
		border-radius: 14px;
		padding: 14px;
	}
	.cta-card-title {
		font-size: 18px;
		margin-bottom: 4px;
	}
	.cta-card-desc {
		line-height: 1.5;
	}
    .cert-badges {
		grid-template-columns: 1fr;
	}
}