: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;
  }

  /* Hero */
.hero{padding:64px 13px;text-align:center; background-position: center top; background-size: cover; background-repeat: no-repeat; position: relative;}
.hero:before {
    content: '';
    position: absolute;
    inset: 0;
    background-color: rgb(28 58 18 / 10%);
    pointer-events: none;
}
.hero-inner {
	position: relative;
}
  .hero-tag{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#E8F5EE;margin-bottom:12px}
  .hero-title{font-family:"Work Sans", sans-serif;font-size:48px;font-weight:600;color:#fff;margin-bottom:14px}
  .hero-sub{font-size:15px;color:#E8F5EE;max-width:520px;margin:0 auto;}

  /* Search bar */
  .search-wrap{max-width:560px;margin:0 auto;position:relative}
  .search-input{width:100%;border:none;border-radius:50px;padding:14px 52px 14px 20px;font-size:14px;font-family:inherit;background:#fff;color:var(--gp-text)}
  .search-input:focus{outline:2px solid #a8d8bc}
  .search-icon{position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:18px;pointer-events:none}

  /* Category filter pills */
  .filter-section{max-width:1000px;margin:0 auto;padding:32px 24px 0}
  .filter-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:40px}
  .filter-pill{padding:9px 20px;border-radius:50px;border:1.5px solid var(--gp-border);font-size:13px;font-family:inherit;color:var(--gp-muted);background:#fff;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px}
  .filter-pill:hover{border-color:var(--gp);color:var(--gp)}
  .filter-pill.active{background:var(--gp);color:#fff;border-color:var(--gp)}
  .pill-icon{font-size:14px}

  /* FAQ layout */
  .faq-layout{max-width:1200px;margin:0 auto;padding:0 13px 80px}
.faq-layout {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 24px;
    padding-top: 60px;
}
.faq-layout .filter-section {
    height: fit-content;
    position: sticky;
    top: 90px;
    background: #fff;
    border: 1px solid var(--cream2);
    border-radius: var(--r-lg);
    padding: 20px;
    width: 100%;
}
.filter-row {
    flex-direction: column;
    margin: 0;
}
  /* Section */
  .faq-section{margin-bottom:48px;display:none}
  .faq-section.show{display:block}
  .faq-section-header{display:flex;align-items:center;gap:14px;margin-bottom:20px;padding-bottom:14px;border-bottom:2px solid var(--gp-light)}
  .faq-section-icon{width:44px;height:44px;border-radius:12px;background:var(--gp-light);display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}
  .faq-section-title{font-family:"Work Sans", sans-serif;font-size:26px;font-weight:600;color:var(--gp)}
  .faq-section-count{font-size:12px;color:var(--gp-muted);margin-left:auto}

  /* FAQ items */
  .faq-item{border-bottom:1px solid var(--gp-border)}
  .faq-item.hidden{display:none}
  .faq-q{width:100%;text-align:left;background:none;border:none;padding:18px 0;font-size:15px;font-family:inherit;font-weight:500;color:var(--char);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;transition:color .2s}
  .faq-q:hover{color:var(--gp)}
  .faq-icon{font-size:22px;transition:transform .3s;flex-shrink:0;color:var(--gp-muted);font-weight:300}
  .faq-item.open .faq-icon{transform:rotate(45deg)}
  .faq-a{font-size:14px;color:var(--gp-muted);line-height:1.75;max-height:0;overflow:hidden;transition:max-height .35s ease,padding-bottom .35s}
  .faq-item.open .faq-a{max-height:500px;padding-bottom:20px}
  .faq-a a{color:var(--gp);text-decoration:none}
  .faq-a a:hover{text-decoration:underline;}

  /* No results */
  .no-results{text-align:center;padding:60px 20px;display:none}
  .no-results.show{display:block}
  .no-results h3{font-size:20px;font-family:"Work Sans", sans-serif;color:var(--gp-dark);margin-bottom:8px}
  .no-results p{font-size:14px;color:var(--gp-muted)}

  /* CTA strip */
  .cta-strip{background:var(--gp);padding:60px 13px;text-align:center;margin-top:0}
  .cta-strip h2{font-family:"Work Sans", sans-serif;font-size:34px;font-weight:600;color:#fff;margin-bottom:10px}
  .cta-strip p{font-size:14px;color:rgba(255,255,255,.8);margin-bottom:24px}
  .cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
  .cta-btn{padding:13px 26px;border-radius:50px;font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;text-decoration:none;transition:all .2s}
  .cta-btn.primary{background:#fff;color:var(--gp);border:none}
  .cta-btn.primary:hover{background:#000; color: var(--white)}
  .cta-btn.secondary{background-color:transparent;color:var(--white);border:1px solid var(--white)}
  .cta-btn.secondary:hover{background-color:var(--white); color: var(--gp);}

@media(max-width:768px){
    .hero-title{font-size:34px}
	.faq-layout {
        grid-template-columns: repeat(1, 1fr);
    }
	.faq-layout .filter-section {
		position: relative;
    top: 0;
	}
}
@media(max-width: 600px){
	.hero, .faq-layout, .cta-strip {
		padding-top: 30px;
		padding-bottom: 30px;
	}
	.hero-tag {
		margin-bottom: 6px;
		line-height: normal;
	}
	.hero-title {
		font-size: 32px;
		line-height: normal;
		margin-bottom: 10px;
	}
	.hero-sub {
		color: #fff;
		max-width: 100%;
		margin: 0;
	}
	.faq-layout .filter-section {
		padding: 14px;
	}
	.faq-layout {
		gap: 14px;
	}
	.faq-section-header {
		gap: 10px;
		margin-bottom: 10px;
		padding-bottom: 10px;
	}
	.faq-q {
		padding: 10px 0;
	}
	.cta-strip h2 {
		font-size: 26px;
		line-height: normal;
		margin-bottom: 8px;
	}
	.cta-strip p {
		margin-bottom: 12px;
	}
	.cta-btns {
		gap: 6px;
	}
	.cta-btn {
		padding: 10px 13px;
		font-size: 13px;
	}
}