/* V6: source-faithful imagery, readable type and responsive interaction fixes. */
[hidden] { display: none !important; }
:root { --v6-ink: #123e2c; --v6-cream: #fbf7ef; }
body { font-size: 16px; }
.section-heading h2 { line-height: 1.15; }
.eyebrow { font-size: 13px; letter-spacing: .12em; }
a:focus-visible, button:focus-visible, input:focus-visible, [tabindex]:focus-visible { outline: 3px solid #ad7a20; outline-offset: 4px; }
.header-main { min-height: 116px; padding-top: 10px; padding-bottom: 10px; }
.brand { width: 112px; flex-shrink: 0; }
.brand img { width: 90px; height: 90px; object-fit: contain; filter: none; }
.nav-row { gap: 28px; }
.desktop-nav { flex: 0 0 auto; gap: 28px; }
.desktop-nav > a, .nav-shop-control > a { font-size: 16px; padding: 0; }
.nav-shop-control { padding: 0; }
.category-ticker { flex: 1; min-width: 190px; border-left: 1px solid #dce5da; padding-left: 28px; }
.category-ticker a { display: flex; align-items: center; gap: 16px; min-height: 48px; color: #376344; font-size: 15px; font-weight: 600; }
.nav-help { display: flex; align-items: center; gap: 12px; white-space: nowrap; font-size: 14px; }
.contact-action { display: inline-flex; align-items: center; justify-content: center; min-height: 36px; padding: 7px 15px; border: 1px solid #33764c; border-radius: 999px; color: #fff; background: #22653f; font-size: 13px; font-weight: 700; }
.nav-dropdown:not(.open) .dropdown-panel { visibility: hidden; opacity: 0; pointer-events: none; }
.nav-dropdown.open .dropdown-panel { visibility: visible; opacity: 1; pointer-events: auto; }
.mega-panel { width: min(920px, calc(100vw - 70px)); border-radius: 0 0 22px 22px; }
.mega-intro p { font-size: 14px; }
.mega-intro p { text-transform: none; letter-spacing: 0; }
.brand { min-width: 112px; }
.mega-intro small { font-size: 11px; }
.mega-categories img { object-fit: contain; border-radius: 12px; background: var(--v6-cream); }
.mega-categories strong { font-size: 15px; }
.mega-categories small { font-size: 12px; }
.ug-hero-heading { text-align: center; max-width: 1000px; margin-inline: auto; }
.hero-rating { justify-content: center; font-size: 14px; }
.ug-hero-heading h1 { margin-inline: auto; max-width: 960px; font-size: clamp(28px, 3vw, 43px); line-height: 1.2; }
.ug-hero-panels { grid-template-columns: minmax(0, 2.25fr) minmax(280px, 1fr); gap: 20px; }
.ug-hero-main { display: grid; grid-template-columns: 44% 56%; min-height: 450px; background: #174e36; border-radius: 24px; isolation: isolate; }
.ug-hero-main::before, .ug-hero-main::after { display: none; }
.ug-hero-main-copy { position: static; width: auto; padding: 44px 20px 44px 32px; align-self: center; }
.ug-hero-main-copy > span { background: transparent; color: #d8efcf; padding: 0; border-radius: 0; font-size: 12px; line-height: 1.5; }
.ug-hero-main-copy h2 { font-size: clamp(36px,3.5vw,52px); line-height: 1.05; letter-spacing: -.04em; overflow-wrap: normal; }
.ug-hero-main-copy p { font-size: 16px; }
.ug-generated-hero.hero-product-pair { position: static; display: grid; grid-template-columns: 1fr 1fr; align-items: center; width: 100%; height: 100%; border-radius: 0; background: #faf5eb; }
.ug-generated-hero.hero-product-pair img { position: static !important; object-fit: contain !important; width: 100% !important; height: auto !important; max-height: none; transform: none; }
.ug-hero-side { gap: 20px; }
.ug-hero-side > a { display: grid; grid-template-columns: 52% 48%; align-items: center; min-height: 215px; border-radius: 22px; background: #f7f1e6; }
.ug-hero-side > a::after { display: none; }
.ug-hero-side span { position: static; width: auto; padding: 22px 0 22px 22px; }
.ug-hero-side small { font-size: 12px; }
.ug-hero-side strong { font-size: 20px; line-height: 1.2; }
.ug-hero-side img { position: static; width: 100%; height: auto; object-fit: contain; }
.ug-category-row > a > span { background: var(--v6-cream); }
.ug-category-row img { width: 100%; height: 100%; object-fit: contain; padding: 4px; }
.ug-category-row strong { font-size: 16px; line-height: 1.4; }
.shop-promo-inner { display: grid; grid-template-columns: 1fr 1fr; min-height: 0; background: #faf5ec; border-radius: 24px; }
.shop-promo-inner > div:first-child { width: auto; padding: 36px; }
.shop-promo-plants { position: static; display: flex; align-items: center; width: 100%; height: auto; min-width: 0; }
.shop-promo-plants img, .shop-promo-plants img:nth-child(n) { position: static; flex: 1; min-width: 0; width: 50%; height: auto; max-height: 390px; object-fit: contain; mix-blend-mode: normal; }
.shop-promo-plants img:only-child { width: 100%; }
.category-shop-rail img { object-fit: contain; background: #fbf7ef; }
.catalogue-benefits { margin: 40px auto; width: min(1320px, calc(100% - 48px)); border-radius: 32px; overflow: hidden; background: #174e36; }
.catalogue-benefits-grid { width: 100%; max-width: none; padding: 0; gap: 0; }
.catalogue-benefits-copy { padding: 54px 44px; }
.catalogue-benefits-copy .eyebrow { color: #d9edbe; font-size: 14px; }
.catalogue-benefits-copy h2 { color: #fff; font-size: clamp(32px, 3.2vw, 45px); }
.catalogue-benefits-copy > p:not(.eyebrow) { color: #ecf3e9; font-size: 17px; }
.catalogue-benefits-copy .benefit-list strong { color: #fff; font-size: 16px; }
.catalogue-benefits-copy .button { background: #f3f8e8; color: #164d34; }
.video-story { min-height: 0; height: auto; aspect-ratio: 4/5; align-self: stretch; }
.video-story > img { width: 92%; height: 92%; max-height: 620px; }
.video-story video { width: 100%; height: 100%; max-height: 760px; object-fit: contain; }
.video-story.is-playing { display: block; background: #101410; }
.video-story.is-playing video { height: calc(100% - 52px); }
.story-controls { position: absolute; bottom: 0; left: 0; right: 0; height: 52px; display: flex; align-items: center; justify-content: space-evenly; gap: 8px; padding: 6px 12px; background: #153f2b; }
.story-controls button { min-height: 38px; padding: 6px 12px; border: 1px solid #769981; border-radius: 8px; color: #fff; background: transparent; font-size: 14px; cursor: pointer; }
.story-expanded-open { overflow: hidden; }
.video-story.story-expanded { position: fixed; inset: 0; z-index: 3000; width: 100vw; height: 100dvh; max-height: none; aspect-ratio: auto; border-radius: 0; }
.video-story.story-expanded video { max-height: none; }
.story-play small { font-size: 14px; }
.brand-journey-section { background: #fff; }
.journey-cards { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.journey-cards > article { display: flex; flex-direction: column; min-width: 0; padding: 26px; border: 1px solid #e4e5d9; border-radius: 24px; background: #fbf8f0; text-align: center; }
.journey-cards h3 { margin: 0 0 14px; font-family: 'Newsreader',serif; font-size: 42px; line-height: 1; color: #174b31; }
.journey-cards p { margin: 0 0 20px; color: #344d3b; font-size: 16px; line-height: 1.65; }
.journey-cards > article > img { width: 100%; aspect-ratio: 1; height: auto; object-fit: contain; border-radius: 16px; margin-top: auto; }
.journey-cards > article:nth-child(2) > img { aspect-ratio: auto; }
.process-labels { display: flex; align-items: center; justify-content: space-between; gap: 5px; font-size: 14px; color: #285537; margin-top: 15px; }
.journey-product-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px 8px; margin-top: auto; }
.journey-product-grid figure { margin: 0; }
.journey-product-grid figure:last-child { grid-column: 2; }
.journey-product-grid img { width: 100%; aspect-ratio: 1; object-fit: contain; border-radius: 10px; }
.journey-product-grid figcaption { font-size: 12px; color: #344d3b; margin-top: 4px; }
.client-editorial { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,1fr); align-items: center; gap: 60px; padding: 32px; border-radius: 28px; background: #f6f7ef; }
.happy-client-showcase { border-radius: 12px; background: transparent; }
.happy-client-showcase > img { display: block; width: 100%; height: auto; max-height: none; min-height: 0; object-fit: contain; }
.client-editorial-copy { padding-right: 28px; }
.client-editorial-copy h3 { font-size: clamp(34px, 4vw, 52px); line-height: 1.12; margin: 16px 0 20px; color: #164a33; }
.client-editorial-copy > p:not(.eyebrow) { font-size: 18px; line-height: 1.75; color: #526355; }
.client-editorial-copy .button { margin-top: 16px; }
.people-section { padding-top: 30px; }
.carousel-controls { display: flex; gap: 10px; }
.carousel-controls button { width: 44px; height: 44px; border-radius: 50%; border: 1px solid #cddaca; background: #fff; color: #175039; cursor: pointer; font-size: 22px; }
.people-track { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 48px)/4); gap: 16px; overflow-x: auto; padding: 0 0 18px; scroll-snap-type: x mandatory; scrollbar-width: thin; scrollbar-color: #88a78c #eef3e8; }
.people-track figure { margin: 0; scroll-snap-align: start; min-width: 0; border: 1px solid #e4e9df; border-radius: 18px; overflow: hidden; background: #f7f8f2; }
.people-track img { display: block; width: 100%; height: 300px; object-fit: contain; }
.people-track figcaption { padding: 16px 12px; font-size: 16px; font-weight: 600; text-align: center; }
.about-hero-image { height: auto; aspect-ratio: 1; background: var(--v6-cream); }
.about-hero-image img { object-fit: contain; }
.planter-range-grid { display: grid; grid-template-columns: repeat(8,minmax(0,1fr)); gap: 22px; }
.planter-range-grid article { grid-column: span 2; }
.planter-range-grid article:nth-child(5) { grid-column: 2 / span 2; }
.planter-range-grid article { border: 1px solid #e8e5da; border-radius: 20px; overflow: hidden; background: #fcf8f1; padding-bottom: 20px; }
.planter-range-grid img { width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; }
.planter-range-grid strong { font-size: 18px; display: block; text-align: center; padding-top: 14px; }
.about-benefit-grid h3 { font-size: 20px; }
.about-benefit-grid p { font-size: 16px; }
.about-mission { margin: 30px auto; width: min(1320px,calc(100% - 48px)); border-radius: 30px; background: #f4f3e8; overflow: hidden; }
.about-mission-grid { gap: 40px; padding: 44px; }
.about-mission img { width: 100%; height: auto; object-fit: contain; border-radius: 18px; }
.about-mission p { font-size: 17px; line-height: 1.7; }
.about-cta { width: min(1320px,calc(100% - 48px)); margin: 50px auto 70px; border-radius: 32px; }
.about-cta .container { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 28px; padding: 64px 28px; }
.about-cta h2 { margin: 0; max-width: 800px; }
.newsletter-band { width: min(1320px,calc(100% - 48px)); margin: 40px auto 24px; padding: 0; border-radius: 30px; background: #216342; overflow: hidden; }
.newsletter-grid { padding: 54px 42px; gap: 50px; }
.newsletter-grid h2 { font-size: clamp(30px,3vw,42px); color: #fff; }
.newsletter-grid p { color: #eef7e9; font-size: 16px; }
.newsletter-grid .eyebrow { color: #d9f0bd; font-size: 13px; }
.newsletter-form input { min-width: 0; font-size: 16px; }
.newsletter-form button { font-size: 15px; white-space: nowrap; }
.newsletter-form small { display: block; margin-top: 14px; color: #fff; font-size: 16px; line-height: 1.5; }
.site-footer { margin: 0 24px 24px; padding-top: 0; border-radius: 30px; background: #edf2e7; color: #214532; overflow: hidden; }
.footer-promise-row { border-color: #d4dfcd; padding-top: 34px; padding-bottom: 34px; }
.footer-promise-row strong { color: #1b4730; font-size: 16px; }
.footer-promise-row small { color: #52664d; font-size: 13px; }
.footer-promise-row b { color: #2b7147; background: #dce7d4; }
.footer-grid { grid-template-columns: 1.35fr .8fr .8fr .85fr 1.3fr; gap: 25px; padding: 46px 0; }
.footer-logo img { width: 112px; height: 112px; object-fit: contain; filter: none; }
.footer-brand p { color: #425b43; font-size: 15px; line-height: 1.75; }
.footer-grid h3 { font-size: 17px; text-transform: none; letter-spacing: 0; color: #16482e; }
.footer-grid > div:not(.footer-brand) > a { color: #3c5b41; font-size: 15px; margin: 12px 0; }
.footer-socials { display: flex; gap: 10px; }
.footer-socials a { display: grid; place-items: center; width: 42px; height: 42px; padding: 10px; border: 1px solid #baccb4; border-radius: 50%; color: #22573a; }
.footer-socials svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.7; }
.contact-line { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-bottom: 12px; }
.contact-line > span { font-size: 14px; overflow-wrap: anywhere; }
.footer-contact p, .footer-contact small { color: #425b43; font-size: 14px; line-height: 1.7; }
.footer-bottom { color: #415c46; border-color: #ceddc5; font-size: 13px; }
.footer-bottom a { color: #284b32; font-size: 14px; }
.auth-page { max-width: 1200px; min-height: 0; margin: 48px auto; border-radius: 28px; overflow: hidden; border: 1px solid #e5e8dd; }
.auth-visual { display: flex; flex-direction: column; background: #f9f4e9; padding: 34px; min-height: 650px; }
.auth-visual > div { position: static; z-index: auto; padding: 0; }
.auth-visual h1 { color: #174b32; font-size: 40px; line-height: 1.1; }
.auth-visual p, .auth-visual > div > p:last-child { color: #52674e; font-size: 16px; }
.auth-visual img { position: static; width: 100%; height: 380px; max-height: none; opacity: 1; object-fit: contain; margin-top: 20px; }
.auth-panel { padding: 40px 48px; background: #fff; }
.auth-brand { color: #174b32; }
.auth-brand img { filter: none; }
.auth-form label, .auth-form input { font-size: 16px; }
.auth-switch { font-size: 14px; }
.gift-card-main img { width: 100%; height: 100%; object-fit: contain; }
.journal-card img, .blog-card img, .blog-featured img { object-fit: contain; background: #fbf6ed; }
.journal-card h3 { font-size: 23px; }
.journal-card > span { font-size: 16px; line-height: 1.65; }
@media(max-width:1180px) {
  .desktop-nav { gap: 20px; } .nav-row { gap: 18px; } .category-ticker { padding-left: 18px; }
  .footer-grid { grid-template-columns: 1.3fr 1fr 1fr; gap: 34px; }
  .footer-contact { grid-column: span 2; max-width: 400px; }
  .journey-cards > article { padding: 20px; }
  .ug-hero-panels { grid-template-columns: minmax(0,2fr) minmax(250px,1fr); }
}
@media(max-width:1024px) {
  .header-main { min-height: 92px; } .brand img { width: 74px; height: 74px; }
  .nav-border { display: none; }
  .ug-hero-panels { grid-template-columns: 1fr; }
  .ug-hero-main { min-height: 400px; }
  .ug-hero-side { display: grid; grid-template-columns: 1fr 1fr; }
  .journey-cards { grid-template-columns: minmax(0,1fr); }
  .journey-cards > article { padding: 30px; }
  .journey-cards > article > img { max-width: 360px; margin: auto; }
  .process-labels { width: 100%; max-width: 360px; margin: 14px auto 0; }
  .journey-product-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .journey-product-grid figure:last-child { grid-column: auto; }
  .people-track { grid-auto-columns: calc((100% - 32px)/3); }
  .catalogue-benefits-copy { padding: 35px 26px; }
  .client-editorial { gap: 30px; }
  .newsletter-grid { gap: 24px; padding: 38px 28px; }
  .auth-page { margin: 30px 24px; }
}
@media(max-width:760px) {
  .shop-promo-inner { grid-template-columns: 1fr; }
  .shop-promo-inner > div:first-child { padding: 28px 24px; }
  .category-shop-rail strong { font-size: 14px; }
  .ug-home-hero { padding-top: 25px; }
  .ug-hero-heading h1 { font-size: 28px; }
  .hero-rating { font-size: 12px; margin-bottom: 10px; }
  .ug-hero-main { display: flex; flex-direction: column; min-height: 0; }
  .ug-hero-main-copy { width: 100%; padding: 30px 26px; }
  .ug-hero-main-copy h2 { font-size: 40px; max-width: none; margin-top: 12px; }
  .ug-hero-main-copy p { font-size: 16px; }
  .ug-generated-hero.hero-product-pair { height: auto; min-height: 220px; }
  .ug-hero-side { gap: 12px; }
  .ug-hero-side > a { display: flex; flex-direction: column; align-items: stretch; min-height: 0; }
  .ug-hero-side span { padding: 18px 16px 0; width: auto; }
  .ug-hero-side strong { font-size: 19px; }
  .ug-hero-side img { margin-top: auto; }
  .ug-category-row strong { font-size: 14px; }
  .catalogue-benefits, .newsletter-band, .about-mission, .about-cta { width: calc(100% - 32px); border-radius: 24px; }
  .catalogue-benefits-grid { display: flex; flex-direction: column; }
  .video-story { width: 100%; aspect-ratio: 4/5; min-height: 0; }
  .video-story video { max-height: none; }
  .catalogue-benefits-copy { padding: 30px 25px 36px; }
  .catalogue-benefits-copy h2 { font-size: 34px; }
  .catalogue-benefits-copy .benefit-list strong { font-size: 15px; }
  .journey-cards { gap: 22px; }
  .journey-cards h3 { font-size: 38px; }
  .journey-cards p { font-size: 17px; }
  .journey-cards > article { padding: 28px 22px; }
  .journey-product-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px 8px; }
  .journey-product-grid figure:last-child { grid-column: 2; }
  .client-editorial { grid-template-columns: 1fr; gap: 26px; padding: 18px; }
  .client-editorial-copy { text-align: center; padding: 5px 8px 20px; }
  .client-editorial-copy h3 { font-size: 34px; }
  .client-editorial-copy > p:not(.eyebrow) { font-size: 16px; }
  .people-track { grid-auto-columns: 80%; }
  .people-track img { height: 340px; }
  .people-section .section-heading { align-items: flex-start; gap: 15px; }
  .people-section h2 { font-size: 29px; }
  .carousel-controls { flex-shrink: 0; }
  .carousel-controls button { width: 36px; height: 36px; }
  .about-hero-grid { gap: 26px; }
  .about-hero-image { height: auto; }
  .planter-range-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
  .planter-range-grid article, .planter-range-grid article:nth-child(5) { grid-column: auto; }
  .planter-range-grid article:last-child { grid-column: 1/-1; max-width: 50%; justify-self: center; }
  .planter-range-grid strong { font-size: 16px; }
  .about-mission-grid { padding: 26px; gap: 28px; }
  .about-cta .container { padding: 45px 24px; }
  .about-cta h2 { font-size: 33px; }
  .newsletter-grid { display: flex; flex-direction: column; align-items: stretch; padding: 32px 24px; }
  .newsletter-form > div { display: flex; flex-direction: column; gap: 10px; border: 0; background: transparent; }
  .newsletter-form input { width: 100%; padding: 16px; border-radius: 10px; background: #fff; }
  .newsletter-form button { padding: 15px; border-radius: 10px; background: #e4efbd; color: #174c32; }
  .newsletter-form small { font-size: 15px; }
  .site-footer { margin: 0 16px 24px; border-radius: 24px; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 30px 18px; padding: 30px 0; }
  .footer-brand { grid-column: 1/-1; }
  .site-footer .footer-grid > .footer-contact { grid-column: 1/-1; width: 100%; max-width: none; }
  .site-footer .footer-grid > div:nth-child(4) { grid-column: 1/-1; display: grid; grid-template-columns: 1fr 1fr; column-gap: 18px; }
  .site-footer .footer-grid > div:nth-child(4) h3 { grid-column: 1/-1; }
  .footer-grid h3 { font-size: 18px; }
  .footer-grid > div:not(.footer-brand) > a { font-size: 15px; }
  .footer-promise-row { grid-template-columns: 1fr 1fr; gap: 20px 12px; }
  .footer-promise-row strong { font-size: 14px; }
  .footer-promise-row small { font-size: 12px; }
  .footer-promise-row b { display: none; }
  .footer-bottom { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; padding-bottom: 28px; }
  .contact-line > span { font-size: 16px; }
  .auth-page { display: block; margin: 25px 16px; }
  .auth-visual { display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 12px; min-height: 0; padding: 20px; }
  .auth-visual h1 { font-size: 28px; }
  .auth-visual .eyebrow { font-size: 11px; line-height: 1.5; }
  .auth-visual > div > p:last-child { display: none; }
  .auth-visual img { height: 180px; margin-top: 0; }
  .auth-panel { padding: 30px 24px; min-height: 0; }
  .auth-form { margin-top: 24px; }
}
@media(prefers-reduced-motion:reduce) { * { scroll-behavior: auto !important; } }
