/* Forest, leaf and sage green palette; existing CMS content is retained. */
.page-home {--home-forest:#224a34;--home-light:#e8f0e0;background:var(--home-light)}
.page-home .hero-stage {background:#224a34;padding:0;overflow:hidden}
.page-home .hero-slides.container {width:100%;max-width:none}
.page-home .hero-stage .hero {--hero-overlap:clamp(140px,18vw,300px);position:relative;isolation:isolate;display:grid;grid-template-columns:1fr 1.15fr;align-items:stretch;min-height:560px;gap:0;overflow:hidden;color:#fff}
.page-home .hero-stage .hero-copy {position:relative;z-index:1;min-width:0;width:100%;margin:0;padding:56px 45px 56px max(40px,calc((100vw - 1240px)/2));align-self:center;align-items:flex-start}
.page-home .hero-stage .hero-visual {position:relative;z-index:0;inset:auto;min-width:0;width:calc(100% + var(--hero-overlap));height:100%;min-height:560px;margin:0;margin-inline-start:calc(-1 * var(--hero-overlap));padding:0;border:0;border-radius:0;background:#224a34;box-shadow:none;pointer-events:none;overflow:hidden}
.page-home .hero-stage .hero-photo {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:0}
.page-home .hero-stage .hero-visual:after {content:"";position:absolute;inset:0;background:linear-gradient(90deg,#224a34 0,rgba(34,74,52,.88) calc(var(--hero-overlap) * .45),rgba(34,74,52,.55) var(--hero-overlap),rgba(34,74,52,0) calc(var(--hero-overlap) + 120px));pointer-events:none}
.page-home .hero-stage .slide.active .hero-visual {animation:hero-photo-fade .55s ease both}
@keyframes hero-photo-fade {from{opacity:.75}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.page-home .hero-stage .slide.active .hero-visual{animation:none}}
.page-home .hero-stage .eyebrow {color:var(--brand-gold-light);font-size:11px;letter-spacing:1.8px;margin-bottom:22px}
.page-home .hero-stage .eyebrow .icon {color:var(--brand-gold-light)}
.page-home .hero-stage h1,.page-home .hero-stage .hero-title {font:600 clamp(36px,3.25vw,52px)/1.13 system-ui,Arial,sans-serif;letter-spacing:-1.2px;color:#fff;max-width:560px;margin:0 0 23px}
.page-home .hero-stage .hero-copy>p {font-size:15px;line-height:1.8;max-width:500px;color:#edf5e8}
.page-home .hero-stage .button-row {gap:12px;margin-top:26px}
.page-home .hero-stage .button.green {background:var(--gold);border:1px solid var(--gold);color:#203c2a;padding:12px 20px;min-height:48px;font-size:13px;border-radius:4px;box-shadow:none}
.page-home .hero-stage .button.green:hover {background:var(--brand-gold-light);border-color:var(--brand-gold-light)}
.page-home .hero-stage .hero-about {display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:12px 20px;border:1px solid #fff8;border-radius:4px;color:#fff;font-size:13px;background:#ffffff05}
.page-home .hero-stage .hero-about:hover {background:#ffffff15}
.page-home .hero-stage .hero-note {display:flex;align-items:center;gap:13px;margin-top:26px;padding:14px 18px;max-width:480px;border:1px solid #d4ad6159;border-radius:4px;background:#173f2bc9;color:#fff}
.page-home .hero-stage .hero-note>.icon {width:26px;height:26px;color:var(--brand-gold-light);margin:0}
.page-home .hero-note strong {display:block;font-size:13px;font-weight:600;margin-bottom:2px}
.page-home .hero-note span {display:block;font-size:12px;line-height:1.65;color:#dcebd6}
.page-home .hero-stage .hero-stamp {display:none}
.page-home .benefits-shell {background:#e0ecd6;color:#224a34;border-bottom:1px solid #cfddc9}
.page-home .benefits {background:transparent;border:0;border-radius:0;padding-block:23px}
.page-home .benefits>div {border-color:#becfb1}
.page-home .benefits .icon {color:var(--brand-bronze)}
.page-home .home-products {background:var(--home-light);padding-bottom:35px}
.page-home .home-products>.container,.page-home .home-gallery>.container {width:calc(100% - 80px);max-width:1240px}
.page-home .home-products .section-heading,.page-home .home-categories,.page-home .home-gallery .section-heading {width:100%}
.page-home .home-products .section-heading p,.page-home .journal-section .section-heading p,.page-home .reviews-intro>p,.page-home .faq-intro>p {color:#596c5b}
.page-home .home-products .section-heading .eyebrow,.page-home .journal-section .section-heading .eyebrow {color:var(--brand-bronze)}
.page-home .home-products .card {border-color:#cfddc9}
.page-home .product-carousel {padding-bottom:16px;scroll-snap-type:x proximity}
.page-home .carousel-track,.page-home .carousel-group {width:100%}
.page-home .carousel-group {flex-shrink:0}
.page-home .carousel-group>.card {width:calc((100% - 66px)/4);flex:0 0 calc((100% - 66px)/4);scroll-snap-align:start}
.page-home .carousel-controls {justify-content:center;margin-top:4px}
.page-home .carousel-controls button {width:44px;height:44px;background:#f7faf4;border-color:#c3a571;border-radius:50%;color:#224a34}
.page-home .carousel-controls button:hover:not(:disabled) {background:#224a34;border-color:#224a34;color:#fff}
.page-home .carousel-controls button:disabled {opacity:.35;cursor:default}
.page-home .carousel-controls button .icon {transform:none}
.page-home .carousel-controls .carousel-prev .icon {transform:rotate(180deg)}
.page-home .home-categories>a {background:#f7faf4;border-color:#c8b58d}
.page-home .story-section {background:var(--home-forest);padding-block:48px}
.page-home .story.container {background:transparent;border-radius:0;padding:0;gap:60px}
.page-home .story-section:before {border-color:#c8dfbd25}
.page-home .story-visual {background:#b7d1ac;box-shadow:0 0 0 1px #d4ad6180}
.page-home .story-caption {background:#f7fbf3ed}
.page-home .story-copy h2 {color:#f8fcf5}
.page-home .story-copy p {color:#dcebd6}
.page-home .story-copy .eyebrow {color:var(--brand-gold-light)}
.page-home .story-year {color:var(--brand-bronze)}
.page-home .home-services {background:#dbe7d1}
.page-home .home-services .service-box {border-color:#bfd2b1;box-shadow:0 4px 0 #244b3511}
.page-home .home-services .service-box:hover {background:#f3f8ec}
.page-home .service-symbol {background:#e0ecd4;border-color:#c5aa77}
.page-home .service-symbol .icon {color:var(--brand-bronze)}
.page-home .service-number {color:#ac8648}
.page-home .journal-section {background:#f7faf4}
.page-home .journal-grid .card {border-color:#cfddc9}
.page-home .journal-grid .card-body {background:#f7faf4}
.page-home .journal-grid .eyebrow {color:var(--brand-bronze)}
.page-home .home-gallery {background:var(--home-forest)}
.page-home .home-gallery .section-heading h2 {color:#f8fcf5}
.page-home .home-gallery .section-heading .eyebrow {color:var(--brand-gold-light)}
.page-home .home-gallery-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.page-home .home-gallery-grid .gallery-image {border:0;border-radius:10px;box-shadow:none;aspect-ratio:1.5}
.page-home .reviews-section {background:var(--home-light)}
.page-home .review-symbol {background:#d5e6c8;border-color:#bfa16b;color:var(--brand-bronze)}
.page-home .review-invitation {border-color:#bccfb0;box-shadow:5px 5px 0 #8eac7a45}
.page-home .reviews .review-grid blockquote {background:#f5faef;border-color:#bccfb0}
.page-home .faq-section {background:linear-gradient(#e4eedb,#f7faf4)}
.page-home .faq-questions .faq {border-color:#bccfb0}
.page-home .faq-questions .faq summary span {background:#ecddbb}
.page-home .cta {background:var(--home-forest);padding-block:42px}
.page-home .cta>.container {padding:0;background:transparent;border-radius:0}
.page-home .cta .eyebrow {color:var(--brand-gold-light)}
.page-home footer {background:#173324;color:#dcebd6}
.page-home footer p,.page-home footer .footer-brand>span,.page-home footer .footer-bottom,.page-home footer .icon {color:#d1e1cb}
.page-home footer .footer-bottom {border-color:#ffffff25}
.page-home footer .footer-bottom a {color:#c8dfbd}
.page-home footer a:hover {color:#fff}
.page-home footer h2,.page-home footer .icon {color:var(--brand-gold-light)}
html[dir=rtl] .page-home .hero-stage .hero-copy {padding:56px max(40px,calc((100vw - 1240px)/2)) 56px 45px}
html[dir=rtl] .page-home .hero-stage .hero-visual {border-radius:0}
html[dir=rtl] .page-home .hero-stage .hero-visual:after {background:linear-gradient(270deg,#224a34 0,rgba(34,74,52,.88) calc(var(--hero-overlap) * .45),rgba(34,74,52,.55) var(--hero-overlap),rgba(34,74,52,0) calc(var(--hero-overlap) + 120px))}
@media(max-width:1180px){
 .page-home .hero-stage .hero{min-height:500px}
 .page-home .hero-stage .hero-visual{min-height:500px}
 .page-home .hero-stage .hero-copy,html[dir=rtl] .page-home .hero-stage .hero-copy{padding:35px 24px}
 .page-home .hero-stage h1,.page-home .hero-stage .hero-title{font-size:38px}
 .page-home .home-products>.container,.page-home .home-gallery>.container{width:calc(100% - 48px)}
 .page-home .carousel-group>.card{width:calc((100% - 44px)/3);flex-basis:calc((100% - 44px)/3)}
 .page-home .story.container{gap:42px}
}
@media(max-width:900px){
 .page-home .hero-stage h1,.page-home .hero-stage .hero-title{font-size:33px}
 .page-home .hero-stage .button-row{gap:10px}
 .page-home .hero-stage .button.green,.page-home .hero-stage .hero-about{padding:10px 12px;font-size:11px}
 .page-home .hero-stage .hero-note{display:none}
 .page-home .carousel-group>.card{width:calc((100% - 22px)/2);flex-basis:calc((100% - 22px)/2)}
 .page-home .story.container{gap:30px}
}
@media(max-width:760px){
 .page-home .hero-stage .hero{display:flex;flex-direction:column;min-height:0}
 .page-home .hero-stage .hero-visual{order:-1;width:100%;margin-inline-start:0;height:clamp(260px,80vw,540px);min-height:0}
 .page-home .hero-stage .hero-visual:after,html[dir=rtl] .page-home .hero-stage .hero-visual:after{background:linear-gradient(180deg,rgba(34,74,52,0) 68%,rgba(34,74,52,.35) 84%,#224a34 100%)}
 .page-home .hero-stage .hero-copy,html[dir=rtl] .page-home .hero-stage .hero-copy{padding:28px 24px 32px;width:100%}
 .page-home .hero-stage h1,.page-home .hero-stage .hero-title{font-size:34px;max-width:620px;margin-bottom:15px}
 .page-home .hero-stage .eyebrow{margin-bottom:15px}
 .page-home .hero-stage .button-row{margin-top:20px}
}
@media(max-width:600px){
 .page-home .hero-stage .hero-copy,html[dir=rtl] .page-home .hero-stage .hero-copy {padding:25px 18px 30px}
 .page-home .hero-stage .eyebrow {font-size:9px;letter-spacing:1.3px}
 .page-home .hero-stage h1,.page-home .hero-stage .hero-title {font-size:30px;line-height:1.15;letter-spacing:-.7px}
 .page-home .hero-stage .hero-copy>p {font-size:14px;line-height:1.8}
 .page-home .hero-stage .button-row {gap:9px;margin-top:22px}
 .page-home .hero-stage .button.green,.page-home .hero-stage .hero-about {font-size:11px;min-height:43px;padding:10px 13px;gap:7px}
 .page-home .benefits{padding-block:17px}
 .page-home .home-products>.container,.page-home .home-gallery>.container{width:calc(100% - 36px)}
 .page-home .carousel-group>.card{width:85%;flex-basis:85%}
 .page-home .story-section{padding-block:34px}.page-home .story.container{padding:0;gap:29px}
 .page-home .home-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.page-home .home-gallery-grid .gallery-image{aspect-ratio:1}
 .page-home .cta{padding-block:33px}.page-home .cta>.container{padding:0}
}
@media(max-width:350px){.page-home .hero-stage h1,.page-home .hero-stage .hero-title{font-size:27px}.page-home .hero-stage .button.green,.page-home .hero-stage .hero-about{padding:10px 11px;font-size:10px}}
