/*
Theme Name: Farming Homestead Online
Theme URI: https://farminghomestead.online/
Author: Farming Homestead Online
Description: A mobile-first WordPress theme for locally focused Project Packs, practical homestead planning and phased farm development.
Version: 0.9.2
Requires at least: 6.7
Requires PHP: 8.1
Text Domain: farming-homestead
*/

:root {
  --fh-forest: #124538;
  --fh-forest-2: #0a352d;
  --fh-olive: #3f4c2d;
  --fh-olive-soft: #596744;
  --fh-lime: #eafa6e;
  --fh-orange: #e55422;
  --fh-cream: #faf8f2;
  --fh-paper: #fffdf8;
  --fh-ink: #24342b;
  --fh-body: #5b625c;
  --fh-line: rgba(36, 52, 43, 0.15);
  --fh-white-line: rgba(255, 255, 255, 0.18);
  --fh-danger: #a72d2d;
  --fh-success: #2f6b44;
  --fh-radius: 30px;
  --fh-radius-sm: 12px;
  --fh-shadow: 0 20px 70px rgba(11, 39, 31, 0.12);
  --fh-container: 1320px;
  --fh-reading: 74ch;
}

*, *::before, *::after { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  text-size-adjust: 100%;
}

body {
  margin: 0;
  overflow-x: hidden;
  background: var(--fh-cream);
  color: var(--fh-body);
  font-family: "DM Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}

body.drawer-open { overflow: hidden; }

img, svg, video { display: block; max-width: 100%; height: auto; }

a { color: var(--fh-forest); text-decoration-thickness: 1px; text-underline-offset: 0.2em; }
a:hover { color: var(--fh-orange); }

button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }

h1, h2, h3, h4, h5, h6 {
  margin: 0 0 0.45em;
  color: var(--fh-ink);
  font-family: "Bricolage Grotesque", "DM Sans", system-ui, sans-serif;
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -0.025em;
}

h1 { font-size: clamp(2.75rem, 5.6vw, 5.8rem); }
h2 { font-size: clamp(2.2rem, 4.1vw, 4.35rem); }
h3 { font-size: clamp(1.45rem, 2vw, 2rem); }

p { margin: 0 0 1.35em; }

::selection { background: var(--fh-lime); color: var(--fh-ink); }

.screen-reader-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.screen-reader-text:focus,
.skip-link:focus {
  clip: auto !important;
  width: auto;
  height: auto;
  margin: 0;
  padding: 12px 18px;
  left: 12px;
  top: 12px;
  z-index: 10000;
  background: var(--fh-lime);
  color: var(--fh-ink);
  border-radius: 8px;
}

:focus-visible { outline: 3px solid var(--fh-orange); outline-offset: 3px; }

.fh-container {
  width: min(calc(100% - 60px), var(--fh-container));
  margin-inline: auto;
}

.fh-reading { max-width: var(--fh-reading); }
.fh-section { padding-block: 110px; position: relative; }
.fh-section--cream { background: var(--fh-cream); }
.fh-section--paper { background: var(--fh-paper); }
.fh-section--forest { background: var(--fh-forest); color: rgba(255,255,255,.78); }
.fh-section--olive { background: var(--fh-olive); color: rgba(255,255,255,.78); }
.fh-section--forest h2, .fh-section--forest h3,
.fh-section--olive h2, .fh-section--olive h3 { color: #fff; }

.fh-section__head { display: flex; justify-content: space-between; align-items: end; gap: 32px; margin-bottom: 55px; }
.fh-section__head > :first-child { max-width: 760px; }
.fh-section__head p { max-width: 570px; margin-bottom: 0; }
.fh-section__head--center { display: block; text-align: center; max-width: 820px; margin-inline: auto; }

.fh-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 19px;
  color: var(--fh-forest);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.fh-section--forest .fh-eyebrow,
.fh-section--olive .fh-eyebrow { color: #fff; }

.fh-eyebrow .dashicons { width: 18px; height: 18px; font-size: 18px; color: var(--fh-orange); }

.fh-btn {
  min-height: 54px;
  display: inline-flex;
  align-items: stretch;
  justify-content: center;
  border: 0;
  padding: 0;
  border-radius: 11px;
  background: var(--fh-lime);
  color: var(--fh-ink);
  text-decoration: none;
  font-weight: 600;
  overflow: hidden;
  cursor: pointer;
  transition: transform .22s ease, box-shadow .22s ease, background-color .22s ease;
}

.fh-btn:hover { color: var(--fh-ink); transform: translateY(-2px); box-shadow: 0 12px 28px rgba(8,32,26,.18); }
.fh-btn__icon { width: 54px; display: grid; place-items: center; background: var(--fh-olive); color: var(--fh-lime); }
.fh-btn__label { display: grid; place-items: center; padding: 0 24px; }
.fh-btn--white { background: #fff; }
.fh-btn--outline { background: transparent; color: #fff; box-shadow: inset 0 0 0 1px rgba(255,255,255,.55); }
.fh-btn--outline:hover { color: #fff; background: rgba(255,255,255,.1); }
.fh-btn--outline .fh-btn__icon { background: var(--fh-lime); color: var(--fh-ink); }
.fh-btn--compact { min-height: 46px; }
.fh-btn--compact .fh-btn__icon { width: 46px; }
.fh-btn--compact .fh-btn__label { padding-inline: 18px; }
.fh-cta-row { display: flex; flex-wrap: wrap; gap: 13px; align-items: center; }

/* Header */
.site-header {
  position: relative;
  z-index: 1000;
  padding-top: 22px;
}

.home .site-header { position: absolute; inset: 0 0 auto; }

.site-header__bar {
  width: min(calc(100% - 40px), 1390px);
  min-height: 104px;
  margin-inline: auto;
  padding: 17px 20px 17px 28px;
  display: grid;
  grid-template-columns: minmax(180px, 260px) 1fr auto;
  align-items: center;
  gap: 24px;
  border: 1px solid rgba(255,255,255,.21);
  border-radius: var(--fh-radius);
  background: rgba(19,39,31,.70);
  box-shadow: 0 18px 45px rgba(0,0,0,.13);
  backdrop-filter: blur(13px);
}

body:not(.home) .site-header { padding-bottom: 22px; background: var(--fh-forest-2); }

.site-branding img { width: min(235px, 100%); max-height: 58px; object-fit: contain; object-position: left center; }
.site-nav { justify-self: center; }
.site-nav ul { list-style: none; padding: 0; margin: 0; }
.site-nav > div > ul { display: flex; align-items: center; gap: clamp(16px, 2.1vw, 34px); }
.site-nav a { display: inline-flex; min-height: 44px; align-items: center; color: #fff; text-decoration: none; font-weight: 600; font-size: .97rem; }
.site-nav a:hover, .site-nav .current-menu-item > a, .site-nav .current-menu-ancestor > a { color: var(--fh-lime); }
.site-nav .menu-item-has-children { position: relative; }
.site-nav .sub-menu {
  position: absolute;
  top: calc(100% + 12px);
  left: -20px;
  width: 270px;
  padding: 12px;
  border-radius: 15px;
  background: #fff;
  box-shadow: var(--fh-shadow);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity .2s ease, transform .2s ease, visibility .2s;
}
.site-nav .sub-menu a { color: var(--fh-ink); padding: 8px 12px; border-radius: 8px; }
.site-nav .sub-menu a:hover { background: var(--fh-cream); color: var(--fh-forest); }
.site-nav .menu-item-has-children:hover > .sub-menu,
.site-nav .menu-item-has-children:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: none; }

.site-header__actions { display: flex; gap: 10px; align-items: center; }
.fh-account-link {
  min-height: 54px;
  padding-inline: 15px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(255,255,255,.34);
  border-radius: 11px;
  color: #fff;
  text-decoration: none;
  font-weight: 700;
}
.fh-account-link:hover { color: var(--fh-lime); border-color: var(--fh-lime); }
.fh-account-link .dashicons { width: 21px; height: 21px; font-size: 21px; }
.fh-icon-btn, .fh-menu-trigger {
  width: 54px;
  height: 54px;
  border: 0;
  border-radius: 11px;
  display: grid;
  place-items: center;
  background: var(--fh-lime);
  color: var(--fh-ink);
  text-decoration: none;
  cursor: pointer;
}
.fh-icon-btn:hover { color: var(--fh-ink); transform: translateY(-1px); }
.fh-icon-btn .dashicons { width: 24px; height: 24px; font-size: 24px; }
.fh-menu-trigger { display: none; width: auto; padding-inline: 16px; grid-auto-flow: column; gap: 8px; font-weight: 700; }

/* Drawer */
.fh-drawer-backdrop { position: fixed; inset: 0; z-index: 1090; background: rgba(5,22,18,.72); opacity: 0; visibility: hidden; transition: opacity .25s ease, visibility .25s; }
.fh-drawer {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 1100;
  width: min(86vw, 280px);
  height: 100dvh;
  overflow-y: auto;
  background: #fff;
  color: var(--fh-ink);
  transform: translateX(102%);
  transition: transform .28s ease;
  box-shadow: -22px 0 60px rgba(0,0,0,.18);
}
.drawer-open .fh-drawer-backdrop { opacity: 1; visibility: visible; }
.drawer-open .fh-drawer { transform: none; }
.fh-drawer__top { min-height: 78px; padding: 14px 18px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--fh-line); }
.fh-drawer__top img { width: 155px; }
.fh-drawer__close { width: 46px; height: 46px; border: 0; background: transparent; color: var(--fh-ink); cursor: pointer; }
.fh-drawer__close .dashicons { font-size: 28px; width: 28px; height: 28px; }
.fh-drawer__menu { padding: 0; margin: 0; list-style: none; }
.fh-drawer__menu a { min-height: 54px; padding: 12px 22px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--fh-line); color: var(--fh-ink); text-decoration: none; font-weight: 600; }
.fh-drawer__menu a:hover { background: var(--fh-cream); }
.fh-drawer__menu > .menu-item-has-children { position: relative; }
.fh-drawer__menu .sub-menu { display: none; list-style: none; margin: 0; padding: 0; background: var(--fh-cream); }
.fh-drawer__menu .menu-item-has-children.is-open > .sub-menu { display: block; }
.fh-drawer__menu .sub-menu a { padding-left: 38px; font-weight: 500; }
.fh-drawer__submenu-toggle { position: absolute; top: 5px; right: 8px; width: 44px; height: 44px; border: 0; border-radius: 8px; background: transparent; color: var(--fh-ink); cursor: pointer; }
.fh-drawer__submenu-toggle .dashicons { transition: transform .2s ease; }
.fh-drawer__menu .menu-item-has-children.is-open > .fh-drawer__submenu-toggle .dashicons { transform: rotate(180deg); }
.fh-drawer__tools { display: grid; gap: 12px; padding: 22px; }
.fh-low-data-toggle { min-height: 48px; border: 1px solid var(--fh-line); border-radius: 10px; background: #fff; color: var(--fh-ink); font-weight: 600; cursor: pointer; }

/* Hero */
.fh-hero {
  min-height: 100svh;
  position: relative;
  display: flex;
  align-items: end;
  color: #fff;
  background: var(--fh-forest) url("assets/images/hero-zimbabwe-homestead.webp") center center / cover no-repeat;
  isolation: isolate;
}
.fh-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(4,23,18,.66) 0%, rgba(4,23,18,.21) 58%, rgba(4,23,18,.12)), linear-gradient(0deg, rgba(4,23,18,.9) 0%, transparent 47%); }
.fh-hero__content { width: min(calc(100% - 60px), var(--fh-container)); margin-inline: auto; padding: 200px 0 218px; }
.fh-hero__copy { max-width: 760px; }
.fh-hero .fh-eyebrow { color: #fff; }
.fh-hero h1 { color: #fff; max-width: 920px; font-size: clamp(3.25rem, 6.2vw, 6.6rem); }
.fh-hero__lead { max-width: 690px; font-size: clamp(1.05rem, 1.5vw, 1.28rem); color: rgba(255,255,255,.85); }
.fh-hero__assurance { margin: 18px 0 0; font-size: .9rem; color: rgba(255,255,255,.72); }
.fh-promise-rail { position: absolute; left: 0; right: 0; bottom: 0; min-height: 166px; border-top: 1px solid rgba(234,250,110,.38); background: rgba(3,22,17,.72); backdrop-filter: blur(7px); }
.fh-promise-rail__inner { width: min(calc(100% - 60px), var(--fh-container)); min-height: inherit; margin-inline: auto; display: grid; grid-template-columns: repeat(4, 1fr); }
.fh-promise { padding: 30px clamp(18px,2.5vw,38px); display: grid; align-content: center; gap: 8px; border-right: 1px solid rgba(255,255,255,.12); }
.fh-promise:first-child { border-left: 1px solid rgba(255,255,255,.12); }
.fh-promise .dashicons { width: 34px; height: 34px; font-size: 34px; color: var(--fh-lime); }
.fh-promise strong { font-family: "Bricolage Grotesque", sans-serif; font-size: clamp(1.15rem, 1.7vw, 1.55rem); line-height: 1.2; color: #fff; font-weight: 500; }
.fh-promise span { font-size: .9rem; color: rgba(255,255,255,.68); }

/* Finder */
.fh-finder {
  padding: 52px;
  border-radius: var(--fh-radius);
  background: var(--fh-olive);
  color: rgba(255,255,255,.78);
  position: relative;
  overflow: hidden;
}
.fh-finder::after { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .16; background-image: radial-gradient(circle at 20% 20%, var(--fh-lime) 0 1px, transparent 1.5px); background-size: 24px 24px; }
.fh-finder > * { position: relative; z-index: 1; }
.fh-finder h2 { color: #fff; }
.fh-finder__intro { display: grid; grid-template-columns: 1.05fr .95fr; gap: 60px; align-items: end; margin-bottom: 40px; }
.fh-finder__intro p { margin-bottom: 0; max-width: 620px; }
.fh-finder__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.fh-field { display: grid; gap: 8px; }
.fh-field label { color: #fff; font-size: .82rem; font-weight: 700; letter-spacing: .04em; }
.fh-field select, .fh-field input {
  width: 100%; min-height: 54px; padding: 0 15px; border: 1px solid rgba(255,255,255,.3); border-radius: 11px; background: rgba(255,255,255,.08); color: #fff;
}
.fh-field select { color-scheme: dark; }
.fh-finder__submit { display: flex; align-items: end; }
.fh-finder__submit .fh-btn { width: 100%; }
.fh-finder__help { margin: 16px 0 0; color: rgba(255,255,255,.68); font-size: .85rem; }

/* Feature / introduction */
.fh-intro-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(390px,.98fr); gap: clamp(48px, 7vw, 100px); align-items: center; }
.fh-intro-copy { max-width: 690px; }
.fh-intro-copy > p { font-size: 1.05rem; }
.fh-stat-grid { display: grid; grid-template-columns: repeat(3,1fr); margin: 38px 0; padding-block: 30px; border-block: 1px solid var(--fh-line); }
.fh-stat { padding-inline: 25px; border-right: 1px solid var(--fh-line); }
.fh-stat:first-child { padding-left: 0; }
.fh-stat:last-child { border-right: 0; }
.fh-stat strong { display: block; color: var(--fh-olive); font-family: "Bricolage Grotesque",sans-serif; font-size: clamp(2.1rem,3vw,3.2rem); font-weight: 500; line-height: 1; }
.fh-stat span { display: block; margin-top: 8px; font-size: .9rem; }
.fh-round-image { overflow: hidden; border-radius: var(--fh-radius); background: #e6e6df; }
.fh-round-image img { width: 100%; aspect-ratio: 7 / 5; object-fit: cover; }

/* Pack explorer */
.fh-explorer { border-radius: var(--fh-radius); padding: 92px 50px 55px; background: var(--fh-olive); color: rgba(255,255,255,.76); overflow: hidden; }
.fh-explorer__head { max-width: 780px; margin: 0 auto 54px; text-align: center; }
.fh-explorer__head h2 { color: #fff; }
.fh-explorer__body { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(340px, .8fr); gap: 50px; align-items: center; }
.fh-explorer__visual { overflow: hidden; border-radius: 24px; background: var(--fh-forest-2); }
.fh-explorer__visual img { width: 100%; aspect-ratio: 7 / 4; object-fit: cover; transition: opacity .2s ease; }
.fh-explorer__visual p { margin: 0; padding: 17px 20px; color: rgba(255,255,255,.78); }
.fh-explorer__tabs { display: grid; }
.fh-explorer__tab { width: 100%; min-height: 67px; padding: 12px 0; border: 0; border-bottom: 1px solid rgba(255,255,255,.24); background: transparent; color: #fff; text-align: left; font-family: "Bricolage Grotesque",sans-serif; font-size: clamp(1.35rem,2.4vw,2.15rem); font-weight: 500; cursor: pointer; }
.fh-explorer__tab[aria-selected="true"] { color: var(--fh-lime); }
.fh-explorer__tab small { display: block; font-family: "DM Sans",sans-serif; font-size: .75rem; letter-spacing: .06em; opacity: .65; }

/* Cards */
.fh-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; }
.fh-pack-card { min-width: 0; border-radius: 22px; background: #fff; overflow: hidden; box-shadow: 0 12px 40px rgba(25,48,38,.07); }
.fh-pack-card__image { display: block; overflow: hidden; background: #edece6; }
.fh-pack-card__image img { width: 100%; aspect-ratio: 5 / 4; object-fit: cover; transition: transform .45s ease; }
.fh-pack-card:hover .fh-pack-card__image img { transform: scale(1.035); }
.fh-pack-card__summary { display: flex; flex-wrap: wrap; gap: 8px; padding: 15px 18px; background: linear-gradient(125deg, #24154f 0%, #4b267f 58%, #15576f 100%); border-top: 1px solid rgba(255,255,255,.16); border-bottom: 1px solid rgba(20,10,48,.25); }
.fh-pack-chip { display: inline-flex; align-items: center; gap: 5px; min-height: 29px; padding: 5px 10px; border: 1px solid rgba(255,255,255,.4); border-radius: 8px; box-shadow: 0 3px 10px rgba(18,10,44,.18); font-size: .7rem; font-weight: 850; letter-spacing: .035em; line-height: 1.2; text-transform: uppercase; }
.fh-pack-chip .dashicons { width: 16px; height: 16px; font-size: 16px; }
.fh-pack-chip--access { background: #baf4ff; color: #073c50; }
.fh-pack-chip--area { background: #fff0a8; color: #514000; }
.fh-pack-chip--budget { background: #ffd1e2; color: #75163f; }
.fh-pack-card__body { padding: 24px; }
.fh-badges { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 14px; }
.fh-badge { display: inline-flex; align-items: center; min-height: 28px; padding: 4px 10px; border-radius: 30px; background: #edf2e8; color: var(--fh-forest); font-size: .72rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.fh-badge--accent { background: var(--fh-lime); color: var(--fh-ink); }
.fh-badge--orange { background: #ffe0d3; color: #8d2c0a; }
.fh-pack-card h3 { font-size: 1.55rem; }
.fh-pack-card h3 a { color: var(--fh-ink); text-decoration: none; }
.fh-pack-card__meta { display: flex; flex-wrap: wrap; gap: 12px; margin: 18px 0; padding-top: 16px; border-top: 1px solid var(--fh-line); font-size: .85rem; }
.fh-pack-card__link { display: inline-flex; align-items: center; gap: 7px; font-weight: 700; text-decoration: none; }

.fh-taxonomy-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
.fh-taxonomy-card { min-height: 190px; padding: 25px; display: flex; flex-direction: column; justify-content: space-between; border-radius: 18px; background: #fff; color: var(--fh-ink); text-decoration: none; border: 1px solid var(--fh-line); transition: transform .22s ease, border-color .22s ease; }
.fh-taxonomy-card:hover { transform: translateY(-4px); color: var(--fh-ink); border-color: var(--fh-orange); }
.fh-taxonomy-card .dashicons { width: 38px; height: 38px; font-size: 38px; color: var(--fh-orange); }

.fh-showcase-rail { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(280px, 1fr); gap: 28px; overflow-x: auto; padding-bottom: 20px; scroll-snap-type: x mandatory; scrollbar-color: var(--fh-lime) rgba(255,255,255,.1); }
.fh-showcase-card { position: relative; min-height: 470px; overflow: hidden; border-radius: 22px; scroll-snap-align: start; background: var(--fh-forest-2); }
.fh-showcase-card img { width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; }
.fh-showcase-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(5,25,20,.88), transparent 60%); }
.fh-showcase-card__body { position: absolute; z-index: 1; left: 24px; right: 24px; bottom: 22px; }
.fh-showcase-card__body h3 { color: #fff; }
.fh-showcase-card__body p { margin: 0; color: rgba(255,255,255,.72); }

/* Trust, pricing and updates */
.fh-trust-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 55px; align-items: center; }
.fh-check-list { list-style: none; padding: 0; margin: 28px 0; display: grid; gap: 13px; }
.fh-check-list li { display: flex; gap: 12px; }
.fh-check-list .dashicons { flex: 0 0 auto; color: var(--fh-orange); margin-top: 4px; }
.fh-trust-panel { padding: 38px; border-radius: 24px; background: var(--fh-olive); color: rgba(255,255,255,.78); }
.fh-trust-panel h3 { color: #fff; }
.fh-trust-panel__row { display: grid; grid-template-columns: auto 1fr; gap: 16px; padding-block: 18px; border-bottom: 1px solid var(--fh-white-line); }
.fh-trust-panel__row:last-child { border-bottom: 0; }
.fh-trust-panel__row .dashicons { color: var(--fh-lime); }

.fh-pricing-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.fh-price-card { padding: 34px; border: 1px solid var(--fh-line); border-radius: 22px; background: #fff; }
.fh-price-card--featured { background: var(--fh-olive); color: rgba(255,255,255,.76); border-color: var(--fh-olive); transform: translateY(-10px); }
.fh-price-card--featured h3 { color: #fff; }
.fh-price-card__value { color: var(--fh-forest); font-family: "Bricolage Grotesque",sans-serif; font-size: 2.8rem; line-height: 1.1; }
.fh-price-card--featured .fh-price-card__value { color: var(--fh-lime); }
.fh-price-card ul { padding-left: 20px; }

.fh-updates-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 28px; }
.fh-post-card { display: grid; grid-template-columns: minmax(160px,.7fr) 1fr; gap: 22px; align-items: center; padding: 18px 0; border-bottom: 1px solid var(--fh-line); }
.fh-post-card:first-child { display: block; grid-row: span 3; padding-top: 0; border-bottom: 0; }
.fh-post-card img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 20px; }
.fh-post-card:first-child img { margin-bottom: 22px; }
.fh-post-card h3 { margin: 7px 0; font-size: 1.35rem; }
.fh-post-card__meta { font-size: .82rem; color: #777; }

/* Contact close and footer */
.fh-contact-close { padding-bottom: 0; }
.fh-contact-panel { position: relative; z-index: 2; padding: 64px 55px; border-radius: var(--fh-radius); background: var(--fh-olive); color: rgba(255,255,255,.76); text-align: center; }
.fh-contact-panel h2 { color: #fff; }
.fh-contact-panel__facts { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; margin: 44px 0; }
.fh-contact-fact { padding: 22px; border-right: 1px solid var(--fh-white-line); }
.fh-contact-fact:last-child { border-right: 0; }
.fh-contact-fact .dashicons { width: 42px; height: 42px; font-size: 42px; color: var(--fh-lime); }
.fh-contact-fact strong { display: block; color: #fff; font-size: 1.1rem; }
.fh-plan-band { margin-top: -120px; min-height: 500px; background: #dce9d4 url("assets/images/broiler-masterplan.webp") center / cover no-repeat; opacity: .52; }

.site-footer { background: var(--fh-olive); color: rgba(255,255,255,.76); }
.site-footer a { color: #fff; }
.site-footer__newsletter { display: grid; grid-template-columns: .75fr 1.25fr; }
.fh-newsletter-visual { min-height: 520px; padding: 65px 40px; display: flex; flex-direction: column; justify-content: end; background: linear-gradient(rgba(6,30,24,.55),rgba(6,30,24,.76)), url("assets/images/farmer-planning-garden.webp") center / cover; }
.fh-newsletter-visual h2 { color: #fff; }
.fh-newsletter-form { display: grid; gap: 12px; max-width: 520px; }
.fh-newsletter-form__row { display: grid; grid-template-columns: 1fr auto; gap: 9px; padding: 5px; border: 1px solid rgba(255,255,255,.65); border-radius: 40px; }
.fh-newsletter-form input { min-width: 0; border: 0; padding: 0 18px; background: transparent; color: #fff; }
.fh-newsletter-form .fh-btn { border-radius: 32px; min-width: 135px; }
.fh-newsletter-form .fh-btn:disabled { cursor: wait; opacity: .72; }
.fh-consent { display: flex; gap: 10px; font-size: .82rem; }
.fh-consent input { margin-top: 5px; }
.fh-newsletter-form__status { min-height: 1.5em; margin: 0; color: #fff; font-weight: 700; }
.fh-newsletter-form__status:empty { min-height: 0; }
.fh-newsletter-hp { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.site-footer__main { padding: 65px 45px 25px; }
.site-footer__brand-row { display: flex; justify-content: space-between; align-items: center; gap: 22px; padding-bottom: 34px; border-bottom: 1px solid var(--fh-white-line); }
.site-footer__brand-row img { width: 290px; max-height: 72px; object-fit: contain; object-position: left; }
.fh-social { display: flex; align-items: center; gap: 13px; }
.fh-social a { width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid var(--fh-white-line); border-radius: 50%; text-decoration: none; }
.site-footer__columns { display: grid; grid-template-columns: 1.15fr repeat(3,1fr); gap: 40px; padding: 45px 0; }
.site-footer__columns h3 { color: #fff; font-size: 1.2rem; }
.site-footer__columns ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.site-footer__columns a { text-decoration: none; color: rgba(255,255,255,.76); }
.site-footer__columns a:hover { color: var(--fh-lime); }
.fh-footer-toggle { width: 100%; min-height: 54px; display: none; justify-content: space-between; align-items: center; border: 0; padding: 0 18px; border-radius: 10px; background: var(--fh-lime); color: var(--fh-ink); text-align: left; font-weight: 700; }
.site-footer__bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px 20px; padding: 22px 0; border-top: 1px solid var(--fh-white-line); font-size: .82rem; }

/* Inner pages */
.fh-page-hero { padding: 100px 0 82px; background: var(--fh-forest); color: rgba(255,255,255,.74); }
.fh-page-hero h1 { color: #fff; font-size: clamp(2.7rem,5vw,5rem); }
.fh-breadcrumb { display: flex; flex-wrap: wrap; gap: 8px; font-size: .85rem; color: rgba(255,255,255,.65); }
.fh-breadcrumb a { color: #fff; }
.fh-page-content { padding-block: 82px 110px; }
.fh-page-content__inner { max-width: var(--fh-reading); margin-inline: auto; }
.fh-page-content__inner > * + h2 { margin-top: 1.65em; }
.fh-page-content__inner > * + h3 { margin-top: 1.35em; }
.fh-page-content__inner ul, .fh-page-content__inner ol { padding-left: 1.3em; }
.fh-page-content__inner .wp-block-group { margin-block: 35px; }
.fh-callout { padding: 24px; border-left: 5px solid var(--fh-orange); border-radius: 10px; background: #fff; }
.fh-disclaimer { margin-top: 40px; padding: 20px 22px; border-radius: 12px; background: #f2efe7; font-size: .9rem; }
.fh-copyright-notice { margin-top: 22px; padding: 18px 20px; display: grid; gap: 6px; border: 2px solid var(--fh-orange); border-radius: 12px; background: #fff6e8; color: var(--fh-ink); font-size: .9rem; }
.fh-copyright-notice strong { color: var(--fh-danger); font-size: 1rem; letter-spacing: .02em; }
.fh-copyright-notice a { width: fit-content; color: var(--fh-forest); font-weight: 800; }
.fh-archive-hero { padding-bottom: 45px; }
.fh-archive-grid { padding-block: 70px 110px; }
.fh-filter-bar { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 30px; }
.fh-filter-chip { min-height: 42px; padding: 8px 14px; border: 1px solid var(--fh-line); border-radius: 30px; background: #fff; color: var(--fh-ink); text-decoration: none; font-weight: 600; }

/* Search-led farm guides */
.fh-guide-hero { background: linear-gradient(135deg, #092d25 0%, #174d3d 62%, #465622 100%); }
.fh-guide-hero .fh-breadcrumb { margin-bottom: 28px; }
.fh-guide-hero .fh-badges { margin-bottom: 18px; }
.fh-guide-hero h1 { max-width: 18ch; margin-bottom: 20px; font-size: clamp(2.65rem, 5vw, 4.8rem); }
.fh-guide-hero__lead { max-width: 70ch; margin: 0; color: rgba(255,255,255,.84); font-size: clamp(1rem, 1.5vw, 1.18rem); }
.fh-guide-content { background: #fbfaf5; }
.fh-guide-content .fh-page-content__inner { max-width: 800px; }
.fh-guide-content p, .fh-guide-content li { font-size: 1.04rem; line-height: 1.78; }
.fh-guide-content h2 { font-size: clamp(1.8rem, 3vw, 2.55rem); line-height: 1.12; }
.fh-guide-content h3 { font-size: clamp(1.25rem, 2vw, 1.55rem); line-height: 1.25; }
.fh-guide-content a { font-weight: 700; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.fh-guide-feature { margin: -125px 0 42px; overflow: hidden; border: 8px solid #fff; border-radius: 24px; background: #e8e7df; box-shadow: 0 18px 55px rgba(8,38,29,.18); }
.fh-guide-feature img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.fh-editorial-note { margin: 0 0 38px; padding: 18px 20px; display: grid; grid-template-columns: 24px 1fr; gap: 12px; border: 1px solid #cad6c4; border-radius: 14px; background: #f0f5e7; color: #335044; }
.fh-editorial-note .dashicons { color: var(--fh-forest); }
.fh-editorial-note p { margin: 0; font-size: .88rem; line-height: 1.55; }
.fh-answer-summary { margin: 0 0 34px; padding: 25px 27px; border-radius: 16px; background: var(--fh-forest); color: #fff; font-size: 1.13rem !important; }
.fh-answer-summary strong { color: var(--fh-lime); }
.fh-guide-inline-visual { margin: 42px 0; overflow: hidden; border: 1px solid var(--fh-line); border-radius: 20px; background: #fff; box-shadow: 0 14px 40px rgba(20,47,38,.1); }
.fh-guide-inline-visual img { width: 100%; height: auto; display: block; background: #f3f1e8; }
.fh-guide-inline-visual figcaption { padding: 15px 18px 17px; color: #52645a; font-size: .88rem; line-height: 1.55; }
.fh-comments { padding: 72px 0; background: #eef3e8; }
.fh-comments__shell { max-width: 920px; margin: 0 auto; padding: 38px; border: 1px solid #d5ddcf; border-radius: 24px; background: var(--fh-paper); box-shadow: 0 18px 48px rgba(20,47,38,.09); }
.fh-comments__head { max-width: 700px; margin-bottom: 28px; }
.fh-comments__eyebrow { display: inline-flex; align-items: center; margin-bottom: 10px; color: var(--fh-orange); font-size: .76rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.fh-comments__head h2, .fh-comment-form-wrap h3 { margin: 0 0 10px; color: var(--fh-forest); }
.fh-comments__head p, .fh-comment-gate p, .fh-comment-form-note { color: #52645a; }
.fh-comment-gate { padding: 26px; border: 1px solid #d7dfcf; border-radius: 18px; background: #fff; }
.fh-comment-gate h3 { margin: 0 0 10px; font-size: 1.35rem; }
.fh-comment-google { max-width: 420px; margin: 22px 0 14px; }
.fh-comment-gate__quick { margin: 0 0 8px !important; color: var(--fh-forest) !important; font-size: .82rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.fh-comment-gate__links { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.fh-comment-gate__links a { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; padding: 10px 16px; border: 1px solid var(--fh-forest); border-radius: 999px; color: var(--fh-forest); font-weight: 800; text-decoration: none; }
.fh-comment-gate__links a:first-child { background: var(--fh-forest); color: #fff; }
.fh-comment-gate__return { display: flex; align-items: flex-start; gap: 8px; margin: 16px 0 0 !important; font-size: .88rem; }
.fh-comment-gate__return .dashicons { flex: 0 0 auto; color: var(--fh-orange); }
.fh-comment-list { margin: 0 0 34px; padding: 0; list-style: none; }
.fh-comment-list .children { margin: 18px 0 0 28px; padding: 0; list-style: none; }
.fh-comment-list .comment-body { margin: 0 0 16px; padding: 22px; border: 1px solid #dce3d6; border-radius: 16px; background: #fff; }
.fh-comment-list .comment-meta { display: flex; flex-wrap: wrap; gap: 6px 12px; margin-bottom: 12px; color: #647269; font-size: .82rem; }
.fh-comment-list .comment-author { color: var(--fh-forest); font-size: .95rem; font-weight: 800; }
.fh-comment-list .comment-content p:last-child { margin-bottom: 0; }
.fh-comment-list .reply { margin-top: 12px; }
.fh-comment-list .reply a { color: var(--fh-orange); font-weight: 800; }
.fh-comment-awaiting-moderation { display: inline-block; margin-bottom: 10px; color: #855018; font-weight: 800; }
.fh-comment-form-wrap { padding-top: 8px; scroll-margin-top: 120px; }
.fh-reply-form label { display: block; margin-bottom: 8px; color: var(--fh-forest); font-weight: 800; }
.fh-reply-form textarea { width: 100%; min-height: 150px; padding: 16px; resize: vertical; border: 1px solid #b9c7ba; border-radius: 14px; background: #fff; color: var(--fh-ink); font: inherit; line-height: 1.6; }
.fh-reply-form textarea:focus { outline: 3px solid rgba(229,84,34,.18); border-color: var(--fh-orange); }
.fh-reply-form .form-submit { margin-bottom: 0; }
.fh-reply-form .submit { min-height: 48px; padding: 12px 20px; border: 0; border-radius: 999px; background: var(--fh-orange); color: #fff; font: inherit; font-weight: 800; cursor: pointer; }
.fh-reply-form .submit:hover, .fh-reply-form .submit:focus-visible { background: #c94318; }
.fh-comment-form-note { margin-top: 10px; font-size: .88rem; }
.fh-comment-closed { margin: 0; padding: 18px; border-radius: 14px; background: #fff; color: #52645a; }
.fh-key-takeaways { margin: 36px 0; padding: 28px; border: 1px solid #d4d8c6; border-radius: 18px; background: #f2f4e8; }
.fh-key-takeaways h2 { margin-top: 0; font-size: 1.45rem; }
.fh-key-takeaways ul { margin-bottom: 0; }
.fh-key-takeaways li + li { margin-top: 8px; }
.fh-guide-table-wrap { width: 100%; margin: 28px 0 38px; overflow-x: auto; border: 1px solid var(--fh-line); border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(20,47,38,.06); }
.fh-guide-table { width: 100%; min-width: 720px; border-collapse: collapse; color: var(--fh-ink); font-size: .9rem; line-height: 1.45; }
.fh-guide-table th, .fh-guide-table td { padding: 15px 17px; border-bottom: 1px solid var(--fh-line); text-align: left; vertical-align: top; }
.fh-guide-table thead th { background: var(--fh-forest); color: #fff; font-size: .76rem; letter-spacing: .06em; text-transform: uppercase; }
.fh-guide-table tbody th { width: 22%; color: var(--fh-forest); }
.fh-guide-table tbody tr:nth-child(even) { background: #f8f6ee; }
.fh-guide-table tbody tr:last-child > * { border-bottom: 0; }
.fh-guide-content .fh-callout { margin: 35px 0; border: 1px solid #ead0b3; border-left: 5px solid var(--fh-orange); background: #fff7e9; }
.fh-next-step { margin: 42px 0 0; padding: 25px; border-radius: 14px; background: #e8f46c; color: var(--fh-ink); }
.fh-source-note { margin-top: 46px; padding-top: 30px; border-top: 1px solid var(--fh-line); color: #53645c; }
.fh-source-note h2 { font-size: 1.35rem; }
.fh-source-note p { font-size: .88rem; line-height: 1.65; }
.fh-guide-share { background: #e7edda; }
.fh-guide-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; }
.fh-guide-card { min-width: 0; overflow: hidden; border: 1px solid #e2e2d8; border-radius: 20px; background: #fff; box-shadow: 0 12px 38px rgba(25,48,38,.07); }
.fh-guide-card__image { display: block; overflow: hidden; background: #e7e5dd; }
.fh-guide-card__image img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; transition: transform .4s ease; }
.fh-guide-card:hover .fh-guide-card__image img { transform: scale(1.035); }
.fh-guide-card__body { padding: 23px; }
.fh-guide-card__meta { display: block; margin-bottom: 9px; color: #617168; font-size: .78rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.fh-guide-card h2, .fh-guide-card h3 { margin: 0 0 12px; font-size: 1.35rem; line-height: 1.18; }
.fh-guide-card h2 a, .fh-guide-card h3 a { color: var(--fh-ink); text-decoration: none; }
.fh-guide-card p { margin-bottom: 18px; color: #53645c; font-size: .92rem; }
.fh-guide-card-grid--five .fh-guide-card:nth-child(4), .fh-guide-card-grid--five .fh-guide-card:nth-child(5) { grid-column: span 1; }
.fh-related-guides { border-top: 1px solid var(--fh-line); }

.pagination .nav-links { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 45px; }
.pagination .page-numbers { min-width: 44px; height: 44px; display: grid; place-items: center; padding: 0 10px; border-radius: 9px; background: #fff; text-decoration: none; }
.pagination .current { background: var(--fh-lime); color: var(--fh-ink); }

.fh-empty { padding: 45px; border-radius: 20px; background: #fff; text-align: center; }
.fh-404 { min-height: 62vh; display: grid; place-items: center; text-align: center; }
.fh-404__code { color: var(--fh-lime); font-family: "Bricolage Grotesque",sans-serif; font-size: clamp(6rem,18vw,15rem); line-height: .8; text-shadow: 5px 5px 0 var(--fh-olive); }

/* Project Pack preview */
.fh-pack-hero { padding: 72px 0 78px; background: var(--fh-forest); color: rgba(255,255,255,.78); }
.fh-pack-hero__grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 60px; align-items: center; }
.fh-pack-hero h1 { color: #fff; font-size: clamp(2.75rem,5.2vw,5.3rem); }
.fh-pack-hero__image { margin: 0; overflow: hidden; border-radius: var(--fh-radius); box-shadow: var(--fh-shadow); }
.fh-pack-hero__image img { width: 100%; aspect-ratio: 7/5; object-fit: cover; }
.fh-pack-hero .fh-breadcrumb { margin-bottom: 30px; }
.fh-pack-hero .fh-badges { margin-top: 18px; }
.fh-pack-factbar { background: var(--fh-olive); color: #fff; }
.fh-pack-factbar .fh-container { display: grid; grid-template-columns: repeat(4,1fr); }
.fh-pack-fact { min-height: 105px; padding: 22px; display: flex; align-items: center; gap: 12px; border-right: 1px solid var(--fh-white-line); }
.fh-pack-fact:first-child { border-left: 1px solid var(--fh-white-line); }
.fh-pack-fact .dashicons { flex: 0 0 auto; color: var(--fh-lime); }
.fh-pack-share { padding: 30px 0; border-bottom: 1px solid var(--fh-line); background: #eef1e2; }
.fh-pack-share__inner { display: grid; grid-template-columns: minmax(260px,.72fr) minmax(0,1.28fr); gap: 42px; align-items: center; }
.fh-pack-share__copy .fh-eyebrow { margin-bottom: 7px; }
.fh-pack-share__copy h2 { margin: 0; font-size: clamp(1.65rem,2.6vw,2.5rem); }
.fh-pack-share__copy p { max-width: 58ch; margin: 8px 0 0; font-size: .92rem; }
.fh-pack-share__controls { min-width: 0; }
.fh-pack-share__actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px; }
.fh-share-link { min-height: 48px; padding: 10px 15px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: 1px solid transparent; border-radius: 999px; font: inherit; font-size: .86rem; font-weight: 800; line-height: 1; text-decoration: none; cursor: pointer; transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease; }
.fh-share-link:hover { color: inherit; transform: translateY(-2px); box-shadow: 0 9px 22px rgba(8,32,26,.14); }
.fh-share-link:focus-visible { outline: 3px solid var(--fh-orange); outline-offset: 3px; }
.fh-share-link .dashicons { width: 20px; height: 20px; font-size: 20px; }
.fh-share-link--whatsapp { background: #25d366; color: #092f1b; }
.fh-share-link--facebook { background: #1877f2; color: #fff; }
.fh-share-link--twitter { background: #111; color: #fff; }
.fh-share-link--linkedin { background: #0a66c2; color: #fff; }
.fh-share-link--email { border-color: var(--fh-line); background: #fff; color: var(--fh-ink); }
.fh-share-link--copy,.fh-share-link--native { background: var(--fh-lime); color: var(--fh-ink); }
.fh-share-link--copy.is-copied { background: var(--fh-forest); color: #fff; }
.fh-pack-share__status { min-height: 20px; margin: 8px 4px 0; color: var(--fh-forest); text-align: right; font-size: .8rem; font-weight: 700; }
.fh-pack-layout { display: grid; grid-template-columns: minmax(0,1fr) 390px; gap: 70px; align-items: start; }
.fh-pack-sidebar { position: sticky; top: 24px; padding: 30px; border-radius: 22px; background: #fff; box-shadow: var(--fh-shadow); }
.fh-pack-sidebar h2 { font-size: 1.75rem; }
.fh-pack-gallery { display: grid; grid-template-columns: repeat(2,1fr); gap: 20px; }
.fh-pack-gallery figure { margin: 0; overflow: hidden; border-radius: 20px; background: #fff; }
.fh-pack-gallery img { width: 100%; aspect-ratio: 4/3; object-fit: cover; }
.fh-pack-gallery figcaption { padding: 12px 16px; font-size: .84rem; }
.fh-locked-preview { display: grid; grid-template-columns: 1fr .8fr; gap: 70px; align-items: center; }
.fh-locked-preview__card { padding: 38px; border: 1px solid var(--fh-white-line); border-radius: 22px; background: rgba(255,255,255,.06); }
.fh-locked-preview__card > .dashicons { width: 52px; height: 52px; font-size: 52px; color: var(--fh-lime); }
.fh-locked-preview__card h3 { color: #fff; }
.fh-pack-purchase-price { margin: 15px 0 8px; display: block; color: var(--fh-lime); font-family: "Bricolage Grotesque",sans-serif; font-size: clamp(3.2rem,6vw,5rem); font-weight: 600; line-height: 1; letter-spacing: -.055em; }
.fh-locked-preview__card p { color: rgba(255,255,255,.72); }

/* End-of-page recommendations keep readers moving between Project Packs. */
.fh-related-packs { padding-block: clamp(72px, 8vw, 112px); border-top: 1px solid rgba(255,255,255,.12); background: #263a27; color: rgba(255,255,255,.76); }
.fh-related-packs__head { margin-bottom: 45px; display: grid; grid-template-columns: minmax(0,1.15fr) minmax(300px,.72fr); gap: clamp(32px,6vw,88px); align-items: end; }
.fh-related-packs__eyebrow { display: block; margin-bottom: 10px; color: var(--fh-lime); font-size: .75rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.fh-related-packs h2,
.fh-ny-v2 .fh-related-packs h2 { max-width: 13ch; margin: 0; color: #fff; font-size: clamp(2.35rem,4.5vw,4.75rem); line-height: .96; letter-spacing: -.047em; }
.fh-related-packs__head > p,
.fh-ny-v2 .fh-related-packs__head > p { max-width: 53ch; margin: 0; color: rgba(255,255,255,.7); font-size: 1rem; line-height: 1.7; }
.fh-related-packs__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.fh-related-pack { min-width: 0; display: grid; grid-template-rows: auto 1fr; overflow: hidden; border: 1px solid rgba(255,255,255,.14); border-radius: 20px; background: var(--fh-paper); box-shadow: 0 24px 55px rgba(5,24,16,.22); }
.fh-related-pack__image { position: relative; display: block; overflow: hidden; background: #d9ded3; }
.fh-related-pack__image img { width: 100%; aspect-ratio: 5/3.4; display: block; object-fit: cover; transition: transform .42s ease; }
.fh-related-pack:hover .fh-related-pack__image img { transform: scale(1.035); }
.fh-related-pack__reason { position: absolute; inset: auto 14px 14px; width: fit-content; max-width: calc(100% - 28px); padding: 7px 10px; border-radius: 7px; background: var(--fh-lime); color: #24331d; box-shadow: 0 5px 18px rgba(11,38,25,.25); font-size: .69rem; font-weight: 850; letter-spacing: .025em; line-height: 1.3; text-transform: uppercase; }
.fh-related-pack__body { padding: 25px; display: flex; flex-direction: column; align-items: flex-start; }
.fh-related-pack h3,
.fh-ny-v2 .fh-related-pack h3 { margin: 0 0 12px; color: var(--fh-ink); font-size: clamp(1.35rem,1.8vw,1.72rem); line-height: 1.12; letter-spacing: -.025em; }
.fh-related-pack h3 a { color: inherit; text-decoration: none; }
.fh-related-pack h3 a:hover { color: var(--fh-orange); }
.fh-related-pack__body > p,
.fh-ny-v2 .fh-related-pack__body > p { margin: 0 0 20px; color: var(--fh-body); font-size: .9rem; line-height: 1.58; }
.fh-related-pack__meta { width: 100%; margin: auto 0 19px; padding-top: 17px; display: flex; flex-wrap: wrap; gap: 8px; border-top: 1px solid var(--fh-line); }
.fh-related-pack__meta > span { min-height: 29px; padding: 5px 9px; display: inline-flex; align-items: center; gap: 5px; border-radius: 7px; background: #edf2e8; color: var(--fh-forest); font-size: .7rem; font-weight: 800; line-height: 1.2; }
.fh-related-pack__meta .dashicons { width: 16px; height: 16px; font-size: 16px; color: var(--fh-orange); }
.fh-related-pack__link { display: inline-flex; align-items: center; gap: 7px; color: var(--fh-forest); font-size: .88rem; font-weight: 800; text-decoration: none; }
.fh-related-pack__link:hover { color: var(--fh-orange); }
.fh-related-pack__link .dashicons,
.fh-related-packs__all .dashicons { width: 18px; height: 18px; font-size: 18px; transition: transform .2s ease; }
.fh-related-pack__link:hover .dashicons,
.fh-related-packs__all:hover .dashicons { transform: translateX(3px); }
.fh-related-packs__all { width: fit-content; margin-top: 31px; display: inline-flex; align-items: center; gap: 8px; color: #fff; font-weight: 800; text-decoration: none; }
.fh-related-packs__all:hover { color: var(--fh-lime); }
.fh-low-data .fh-related-pack__image img { display: none; }
.fh-low-data .fh-related-pack__image { min-height: 105px; }

/* Nyazura one-hectare greenhouse Project Pack */
.fh-nyazura-pack { --nyz-rule: rgba(18,69,56,.18); }
.fh-nyazura-hero { padding: 74px 0 84px; overflow: hidden; background: radial-gradient(circle at 88% 10%, rgba(234,250,110,.14), transparent 30%), var(--fh-forest-2); color: rgba(255,255,255,.78); }
.fh-nyazura-hero__grid { display: grid; grid-template-columns: minmax(0,.88fr) minmax(500px,1.12fr); gap: clamp(42px,5vw,80px); align-items: center; }
.fh-nyazura-hero .fh-breadcrumb { margin-bottom: 32px; }
.fh-nyazura-hero .fh-eyebrow { margin: 0 0 13px; color: var(--fh-lime); }
.fh-nyazura-hero .fh-badges { margin-bottom: 22px; }
.fh-nyazura-hero h1 { max-width: 12ch; color: #fff; font-size: clamp(3rem,5.4vw,5.65rem); }
.fh-nyazura-hero__lead { max-width: 62ch; font-size: 1.08rem; }
.fh-nyazura-hero__visual { position: relative; margin: 0; }
.fh-nyazura-hero__visual::before { content: ""; position: absolute; inset: -17px 24px 26px -17px; border: 1px solid rgba(234,250,110,.38); border-radius: 34px; pointer-events: none; }
.fh-nyazura-hero__visual img { position: relative; width: 100%; aspect-ratio: 3/2; object-fit: cover; border-radius: 26px; box-shadow: 0 34px 80px rgba(0,0,0,.34); }
.fh-nyazura-hero__visual figcaption { position: absolute; right: 13px; bottom: 13px; max-width: calc(100% - 26px); padding: 8px 12px; border-radius: 8px; background: rgba(10,53,45,.86); color: #fff; font-size: .76rem; backdrop-filter: blur(8px); }

.fh-nyazura-facts { background: var(--fh-olive); color: #fff; }
.fh-nyazura-facts .fh-container { display: grid; grid-template-columns: repeat(4,1fr); }
.fh-nyazura-facts .fh-container > div { min-height: 120px; padding: 24px clamp(18px,2.4vw,34px); display: grid; align-content: center; border-right: 1px solid var(--fh-white-line); }
.fh-nyazura-facts .fh-container > div:first-child { border-left: 1px solid var(--fh-white-line); }
.fh-nyazura-facts strong { color: var(--fh-lime); font-family: "Bricolage Grotesque",sans-serif; font-size: 2.15rem; line-height: 1; }
.fh-nyazura-facts span { margin-top: 7px; color: rgba(255,255,255,.77); font-size: .83rem; }

.fh-nyazura-jump { position: sticky; top: 0; z-index: 80; border-bottom: 1px solid var(--fh-line); background: rgba(255,253,248,.94); backdrop-filter: blur(12px); }
.fh-nyazura-jump .fh-container { min-height: 58px; display: flex; align-items: center; gap: 4px; overflow-x: auto; scrollbar-width: none; }
.fh-nyazura-jump .fh-container::-webkit-scrollbar { display: none; }
.fh-nyazura-jump a { flex: 0 0 auto; min-height: 42px; display: grid; place-items: center; padding: 0 15px; border-radius: 8px; color: var(--fh-ink); text-decoration: none; font-size: .84rem; font-weight: 700; }
.fh-nyazura-jump a:hover { background: var(--fh-lime); }

.fh-nyazura-verdict { display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,.8fr); gap: clamp(45px,7vw,100px); align-items: start; }
.fh-nyazura-verdict h2 { max-width: 15ch; }
.fh-nyazura-gates { padding: 30px; border-top: 5px solid var(--fh-orange); background: var(--fh-cream); }
.fh-nyazura-gates h3 { font-size: 1.7rem; }
.fh-nyazura-gates ol { margin: 20px 0 0; padding: 0; list-style: none; counter-reset: gates; }
.fh-nyazura-gates li { position: relative; min-height: 50px; padding: 0 0 16px 48px; counter-increment: gates; }
.fh-nyazura-gates li::before { content: counter(gates); position: absolute; inset: 0 auto auto 0; width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; background: var(--fh-forest); color: var(--fh-lime); font-weight: 700; }
.fh-nyazura-warning { margin-top: 45px; padding: 24px 28px; display: grid; grid-template-columns: auto 1fr; gap: 17px; border: 1px solid rgba(229,84,34,.3); border-radius: 14px; background: #fff1e8; color: var(--fh-ink); }
.fh-nyazura-warning .dashicons { width: 31px; height: 31px; font-size: 31px; color: var(--fh-orange); }
.fh-nyazura-warning p { margin: 0; }

.fh-nyazura-plan { margin: 0 0 40px; padding: 24px; border: 1px solid var(--fh-line); border-radius: 22px; background: #fff; box-shadow: var(--fh-shadow); }
.fh-nyazura-plan img { width: 100%; max-height: 790px; object-fit: contain; }
.fh-nyazura-plan figcaption { padding: 14px 0 2px; color: var(--fh-body); text-align: center; font-size: .84rem; }
.fh-nyazura-table-wrap { max-width: 100%; overflow-x: auto; border: 1px solid var(--fh-line); border-radius: 15px; background: #fff; }
.fh-nyazura-table { width: 100%; min-width: 760px; border-collapse: collapse; color: var(--fh-ink); font-size: .88rem; line-height: 1.45; }
.fh-nyazura-table th, .fh-nyazura-table td { padding: 14px 17px; border-bottom: 1px solid var(--fh-line); text-align: left; vertical-align: top; }
.fh-nyazura-table thead th { background: var(--fh-forest); color: #fff; font-size: .76rem; letter-spacing: .08em; text-transform: uppercase; }
.fh-nyazura-table tbody th { color: var(--fh-forest); }
.fh-nyazura-table tbody tr:nth-child(even) { background: #f8f5ec; }
.fh-nyazura-table tfoot { background: #edf4d0; color: var(--fh-forest); font-weight: 700; }
.fh-nyazura-table--enterprise { min-width: 1040px; }
.fh-nyazura-why { margin-top: 42px; display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--nyz-rule); border-bottom: 1px solid var(--nyz-rule); }
.fh-nyazura-why article { padding: 28px 25px; border-right: 1px solid var(--nyz-rule); }
.fh-nyazura-why article:last-child { border-right: 0; }
.fh-nyazura-why span { color: var(--fh-orange); font-size: .76rem; font-weight: 700; letter-spacing: .12em; }
.fh-nyazura-why h3 { margin-top: 9px; font-size: 1.35rem; }
.fh-nyazura-why p { margin: 0; font-size: .9rem; }

.fh-nyazura-public-views .fh-section__head p { color: rgba(255,255,255,.73); }
.fh-nyazura-view-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 22px; }
.fh-nyazura-view-grid figure { margin: 0; overflow: hidden; border: 1px solid var(--fh-white-line); border-radius: 22px; background: rgba(255,255,255,.07); }
.fh-nyazura-view-grid img { width: 100%; aspect-ratio: 3/2; object-fit: cover; }
.fh-nyazura-view-grid figcaption { min-height: 84px; padding: 18px 20px; display: grid; gap: 2px; }
.fh-nyazura-view-grid strong { color: #fff; }
.fh-nyazura-view-grid span { color: rgba(255,255,255,.68); font-size: .86rem; }

.fh-nyazura-scenarios { margin-top: 35px; display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid var(--fh-line); background: #fff; }
.fh-nyazura-scenarios > div { min-height: 190px; padding: 30px; display: grid; align-content: center; border-right: 1px solid var(--fh-line); }
.fh-nyazura-scenarios > div:last-child { border-right: 0; }
.fh-nyazura-scenarios .is-base { background: var(--fh-forest); color: rgba(255,255,255,.72); }
.fh-nyazura-scenarios span { color: var(--fh-orange); font-size: .75rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.fh-nyazura-scenarios strong { margin: 10px 0; color: var(--fh-forest); font-family: "Bricolage Grotesque",sans-serif; font-size: clamp(2rem,3vw,3rem); line-height: 1; }
.fh-nyazura-scenarios .is-base strong { color: var(--fh-lime); }
.fh-nyazura-scenarios small { line-height: 1.45; }
.fh-nyazura-footnote { margin: 20px 0 0; padding-left: 18px; border-left: 4px solid var(--fh-orange); font-size: .9rem; }

.fh-nyazura-phase-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.fh-nyazura-phase-grid article { position: relative; min-height: 310px; padding: 28px; overflow: hidden; border: 1px solid var(--fh-line); border-radius: 16px; background: #fff; }
.fh-nyazura-phase-grid__number { position: absolute; right: -4px; top: -24px; color: rgba(18,69,56,.075); font-family: "Bricolage Grotesque",sans-serif; font-size: 9rem; line-height: 1; }
.fh-nyazura-phase-grid small { position: relative; color: var(--fh-orange); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.fh-nyazura-phase-grid h3 { position: relative; margin-top: 25px; }
.fh-nyazura-phase-grid article > strong { position: relative; display: block; margin: 17px 0 8px; color: var(--fh-forest); font-size: 1.25rem; }
.fh-nyazura-phase-grid p { position: relative; margin: 0; font-size: .9rem; }
.fh-nyazura-budget-band { margin-top: 25px; display: grid; grid-template-columns: repeat(3,1fr); overflow: hidden; border-radius: 16px; background: var(--fh-olive); color: rgba(255,255,255,.76); }
.fh-nyazura-budget-band > div { min-height: 165px; padding: 27px 30px; display: grid; align-content: center; border-right: 1px solid var(--fh-white-line); }
.fh-nyazura-budget-band > div:last-child { border-right: 0; }
.fh-nyazura-budget-band small { color: #fff; font-weight: 700; }
.fh-nyazura-budget-band strong { margin: 8px 0; color: var(--fh-lime); font-family: "Bricolage Grotesque",sans-serif; font-size: 2rem; line-height: 1; }
.fh-nyazura-budget-band span { font-size: .82rem; }

.fh-nyazura-operations { display: grid; grid-template-columns: 1fr 410px; gap: clamp(50px,7vw,95px); align-items: start; }
.fh-nyazura-season-list { margin: 34px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--fh-line); }
.fh-nyazura-season-list li { padding: 18px 0; display: grid; grid-template-columns: 96px 1fr; gap: 22px; border-bottom: 1px solid var(--fh-line); }
.fh-nyazura-season-list span { color: var(--fh-orange); font-size: .8rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.fh-nyazura-season-list p { margin: 0; }
.fh-nyazura-week { padding: 31px; border-radius: 19px; background: var(--fh-cream); }
.fh-nyazura-week h3 { font-size: 1.8rem; }
.fh-nyazura-week .fh-callout { margin-top: 24px; font-size: .88rem; }

.fh-nyazura-included { display: grid; grid-template-columns: 1fr 410px; gap: clamp(50px,7vw,95px); align-items: start; }
.fh-nyazura-included h3 { color: #fff; }
.fh-nyazura-included ol { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2,1fr); gap: 0 26px; list-style: none; counter-reset: locked; }
.fh-nyazura-included ol li { min-height: 58px; padding: 13px 0; display: grid; grid-template-columns: 24px 1fr; gap: 11px; align-items: start; border-bottom: 1px solid var(--fh-white-line); counter-increment: locked; }
.fh-nyazura-included ol .dashicons { color: var(--fh-lime); }
.fh-nyazura-download-card { padding: 34px; border: 1px solid var(--fh-white-line); border-radius: 22px; background: rgba(255,255,255,.07); }
.fh-nyazura-download-card > .dashicons { width: 48px; height: 48px; font-size: 48px; color: var(--fh-lime); }
.fh-nyazura-download-card ul { margin: 20px 0 28px; padding-left: 19px; }
.fh-nyazura-review { display: grid; grid-template-columns: 1fr .75fr; gap: clamp(45px,7vw,95px); align-items: center; }
.fh-nyazura-review .fh-disclaimer { margin: 0; }

.fh-low-data .fh-nyazura-hero__visual,
.fh-low-data .fh-nyazura-plan img,
.fh-low-data .fh-nyazura-view-grid img { display: none; }
.fh-low-data .fh-nyazura-plan::before { content: "Master layout image omitted in low-data mode. The land table below preserves its allocation."; display: block; padding: 32px; color: var(--fh-ink); text-align: center; }

/* Reveal motion and utilities */
.fh-reveal { opacity: 0; transform: translateY(28px); transition: opacity .65s ease, transform .65s ease; }
.fh-reveal.is-visible { opacity: 1; transform: none; }
.fh-scroll-hint { display: none; font-size: .8rem; color: currentColor; opacity: .75; }
.fh-low-data .fh-hero { background-image: none; min-height: auto; background-color: var(--fh-forest); }
.fh-low-data .fh-hero__content { padding-top: 190px; }
.fh-low-data .fh-round-image,
.fh-low-data .fh-pack-card__image,
.fh-low-data .fh-showcase-card img,
.fh-low-data .fh-plan-band,
.fh-low-data .fh-newsletter-visual { background-image: none !important; }
.fh-low-data .fh-round-image img,
.fh-low-data .fh-pack-card__image img,
.fh-low-data .fh-guide-card__image img,
.fh-low-data .fh-guide-feature img,
.fh-low-data .fh-showcase-card img { display: none; }
.fh-low-data .fh-showcase-card { min-height: 250px; }

@media (max-width: 1540px) {
  .fh-section { padding-block: 96px; }
  .fh-container { width: min(calc(100% - 60px), 1240px); }
  .fh-hero__content, .fh-promise-rail__inner { width: min(calc(100% - 60px), 1240px); }
}

@media (max-width: 1280px) {
  .fh-section { padding-block: 80px; }
  .site-header__bar { grid-template-columns: 205px 1fr auto; gap: 16px; }
  .site-nav > div > ul { gap: 17px; }
  .site-nav a { font-size: .9rem; }
  .fh-finder { padding: 40px; }
  .fh-card-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 1023px) {
  .fh-section { padding-block: 70px; }
  .site-header__bar { min-height: 86px; grid-template-columns: 1fr auto; }
  .site-branding img { width: 220px; max-height: 52px; }
  .site-nav, .site-header__actions .fh-icon-btn, .site-header__actions .fh-btn, .site-header__actions .fh-account-link { display: none; }
  .fh-menu-trigger { display: grid; }
  .fh-intro-grid, .fh-trust-grid { grid-template-columns: 1fr; }
  .fh-intro-grid .fh-round-image { max-width: 760px; }
  .fh-finder__intro { grid-template-columns: 1fr; gap: 15px; }
  .fh-finder__grid { grid-template-columns: repeat(2,1fr); }
  .fh-explorer { padding-top: 70px; }
  .fh-explorer__body { grid-template-columns: 1fr; }
  .fh-explorer__tabs { order: -1; }
  .fh-card-grid { grid-template-columns: repeat(2,1fr); }
  .fh-guide-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .fh-taxonomy-grid { grid-template-columns: repeat(2,1fr); }
  .fh-pricing-grid { grid-template-columns: 1fr 1fr; }
  .fh-price-card--featured { transform: none; }
  .fh-updates-grid { grid-template-columns: 1fr; }
  .site-footer__newsletter { grid-template-columns: 1fr; }
  .fh-newsletter-visual { min-height: 430px; }
  .site-footer__columns { grid-template-columns: repeat(2,1fr); }
  .fh-pack-hero__grid, .fh-pack-layout, .fh-locked-preview { grid-template-columns: 1fr; }
  .fh-pack-share__inner { grid-template-columns: 1fr; gap: 22px; }
  .fh-pack-share__actions { justify-content: flex-start; }
  .fh-pack-share__status { text-align: left; }
  .fh-pack-sidebar { position: static; }
  .fh-pack-factbar .fh-container { grid-template-columns: repeat(2,1fr); }
  .fh-related-packs__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .fh-related-pack:last-child { grid-column: 1 / -1; }
  .fh-nyazura-hero__grid, .fh-nyazura-verdict, .fh-nyazura-operations, .fh-nyazura-included, .fh-nyazura-review { grid-template-columns: 1fr; }
  .fh-nyazura-hero__visual { max-width: 820px; }
  .fh-nyazura-why { grid-template-columns: repeat(2,1fr); }
  .fh-nyazura-why article:nth-child(2) { border-right: 0; }
  .fh-nyazura-why article:nth-child(-n+2) { border-bottom: 1px solid var(--nyz-rule); }
  .fh-nyazura-phase-grid { grid-template-columns: repeat(2,1fr); }
  .fh-nyazura-week, .fh-nyazura-download-card { max-width: 680px; }
}

@media (max-width: 767px) {
  .fh-container, .fh-hero__content, .fh-promise-rail__inner { width: min(calc(100% - 40px), 620px); }
  .fh-section { padding-block: 60px; }
  .fh-section__head { display: block; margin-bottom: 35px; }
  .fh-section__head .fh-cta-row { margin-top: 22px; }
  .site-header { padding-top: 20px; }
  .site-header__bar { width: calc(100% - 36px); min-height: 66px; padding: 8px 11px 8px 18px; border-radius: 28px; }
  .site-branding img { width: 170px; max-height: 42px; }
  .fh-menu-trigger { min-height: 48px; padding: 0 12px; background: transparent; color: #fff; }
  .fh-menu-trigger .dashicons { font-size: 28px; width: 28px; height: 28px; }
  .fh-hero { min-height: 900px; background-position: 51% center; }
  .fh-hero::before { background: linear-gradient(0deg, rgba(4,23,18,.95) 0%, rgba(4,23,18,.58) 47%, rgba(4,23,18,.18) 75%); }
  .fh-hero__content { padding: 170px 0 205px; }
  .fh-hero h1 { font-size: clamp(2.85rem, 13.8vw, 4.4rem); }
  .fh-hero__lead { font-size: 1rem; }
  .fh-hero__assurance { display: none; }
  .fh-promise-rail { min-height: 175px; overflow: hidden; }
  .fh-promise-rail__inner { width: 100%; overflow-x: auto; grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 86%; scroll-snap-type: x mandatory; }
  .fh-promise { scroll-snap-align: start; border-left: 0 !important; padding-inline: 30px; }
  .fh-scroll-hint { display: block; }
  .fh-finder { padding: 32px 22px; border-radius: 22px; }
  .fh-finder__grid { grid-template-columns: 1fr; }
  .fh-stat-grid { grid-template-columns: 1fr 1fr; }
  .fh-stat:nth-child(2) { border-right: 0; }
  .fh-stat:last-child { grid-column: 1 / -1; padding: 22px 0 0; margin-top: 22px; border-top: 1px solid var(--fh-line); }
  .fh-explorer { width: 100%; padding: 60px 20px; border-radius: 0; }
  .fh-explorer__head { margin-bottom: 32px; }
  .fh-explorer__tab { min-height: 58px; font-size: 1.45rem; }
  .fh-explorer__visual img { aspect-ratio: 5 / 3; }
  .fh-card-grid { display: grid; grid-auto-flow: column; grid-template-columns: none; grid-auto-columns: min(86vw, 360px); overflow-x: auto; gap: 16px; padding: 4px 20px 22px; margin-inline: -20px; scroll-snap-type: x mandatory; }
  .fh-card-grid .fh-pack-card { scroll-snap-align: start; }
  .fh-taxonomy-grid { grid-template-columns: 1fr 1fr; }
  .fh-showcase-rail { grid-auto-columns: 84%; }
  .fh-showcase-card { min-height: 450px; }
  .fh-pricing-grid { grid-template-columns: 1fr; }
  .fh-contact-panel { padding: 45px 22px; border-radius: 24px; }
  .fh-contact-panel__facts { grid-template-columns: 1fr; gap: 0; }
  .fh-contact-fact { border-right: 0; border-bottom: 1px solid var(--fh-white-line); }
  .fh-contact-fact:last-child { border-bottom: 0; }
  .fh-plan-band { min-height: 380px; }
  .site-footer__main { padding: 45px 20px 20px; }
  .site-footer__brand-row { display: grid; }
  .site-footer__brand-row img { width: 250px; }
  .site-footer__columns { grid-template-columns: 1fr; gap: 13px; }
  .fh-footer-toggle { display: flex; }
  .fh-footer-panel > h3 { display: none; }
  .fh-footer-panel > ul { display: none; padding: 16px 18px; }
  .fh-footer-panel.is-open > ul { display: grid; }
  .site-footer__bottom { display: grid; text-align: center; }
  .fh-newsletter-visual { min-height: 500px; padding: 55px 20px; }
  .fh-newsletter-form__row { grid-template-columns: 1fr; border: 0; padding: 0; }
  .fh-newsletter-form input { min-height: 58px; border: 1px solid rgba(255,255,255,.65); border-radius: 32px; }
  .fh-page-hero { padding: 72px 0 60px; }
  .fh-page-content { padding-block: 60px 80px; }
  .fh-guide-hero h1 { font-size: clamp(2.45rem, 11.5vw, 3.8rem); }
  .fh-guide-feature { margin-top: -95px; border-width: 5px; border-radius: 18px; }
  .fh-guide-card-grid { grid-template-columns: 1fr; }
  .fh-guide-table { min-width: 660px; }
  .fh-guide-content p, .fh-guide-content li { font-size: 1rem; }
  .fh-comments { padding-block: 58px; }
  .fh-comments__shell { padding: 25px 21px; border-radius: 20px; }
  .fh-comment-gate { padding: 21px 18px; }
  .fh-comment-gate__links { display: grid; grid-template-columns: 1fr; }
  .fh-comment-gate__links a, .fh-reply-form .submit { width: 100%; }
  .fh-comment-list .children { margin-left: 14px; }
  .fh-comment-list .comment-body { padding: 18px; }
  .fh-pack-hero { padding-block: 60px; }
  .fh-pack-hero__grid { gap: 35px; }
  .fh-pack-hero__copy { order: 1; }
  .fh-pack-hero__image { order: 2; }
  .fh-pack-factbar .fh-container { width: 100%; grid-template-columns: 1fr; }
  .fh-pack-share { padding-block: 25px; }
  .fh-pack-share__actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .fh-share-link { width: 100%; border-radius: 12px; }
  .fh-pack-fact { min-height: 72px; border-right: 0; border-bottom: 1px solid var(--fh-white-line); padding-inline: 20px; }
  .fh-pack-fact:first-child { border-left: 0; }
  .fh-pack-gallery { display: grid; grid-auto-flow: column; grid-template-columns: none; grid-auto-columns: 88%; overflow-x: auto; scroll-snap-type: x mandatory; }
  .fh-pack-gallery figure { scroll-snap-align: start; }
  .fh-related-packs { padding-block: 64px; }
  .fh-related-packs__head { grid-template-columns: 1fr; gap: 20px; margin-bottom: 31px; }
  .fh-related-packs h2,
  .fh-ny-v2 .fh-related-packs h2 { font-size: clamp(2.35rem,12vw,3.7rem); }
  .fh-related-packs__grid { grid-template-columns: 1fr; gap: 17px; }
  .fh-related-pack:last-child { grid-column: auto; }
  .fh-related-pack__body { padding: 22px; }
  .fh-nyazura-hero { padding-block: 56px 66px; }
  .fh-nyazura-hero h1 { font-size: clamp(2.8rem,13vw,4.3rem); }
  .fh-nyazura-hero__visual::before { display: none; }
  .fh-nyazura-facts .fh-container { width: 100%; grid-template-columns: repeat(2,1fr); }
  .fh-nyazura-facts .fh-container > div { min-height: 102px; border-bottom: 1px solid var(--fh-white-line); }
  .fh-nyazura-facts .fh-container > div:nth-child(even) { border-right: 0; }
  .fh-nyazura-facts .fh-container > div:first-child { border-left: 0; }
  .fh-nyazura-jump .fh-container { width: 100%; padding-inline: 13px; }
  .fh-nyazura-plan { padding: 10px; border-radius: 14px; }
  .fh-nyazura-why, .fh-nyazura-view-grid, .fh-nyazura-scenarios, .fh-nyazura-phase-grid, .fh-nyazura-budget-band { grid-template-columns: 1fr; }
  .fh-nyazura-why article { border-right: 0; border-bottom: 1px solid var(--nyz-rule); }
  .fh-nyazura-why article:last-child { border-bottom: 0; }
  .fh-nyazura-scenarios > div, .fh-nyazura-budget-band > div { border-right: 0; border-bottom: 1px solid var(--fh-line); }
  .fh-nyazura-scenarios > div:last-child, .fh-nyazura-budget-band > div:last-child { border-bottom: 0; }
  .fh-nyazura-phase-grid article { min-height: 260px; }
  .fh-nyazura-included ol { grid-template-columns: 1fr; }
}

@media (max-width: 479px) {
  body { font-size: 15.5px; }
  .fh-container { width: calc(100% - 40px); }
  .fh-section { padding-block: 56px; }
  .fh-hero { min-height: 850px; }
  .fh-hero__content { width: calc(100% - 40px); padding-top: 145px; }
  .fh-hero .fh-cta-row { display: grid; grid-template-columns: 1fr; }
  .fh-hero .fh-btn { width: 100%; }
  .fh-promise-rail__inner { grid-auto-columns: 92%; }
  .fh-stat { padding-inline: 15px; }
  .fh-taxonomy-grid { grid-template-columns: 1fr; }
  .fh-taxonomy-card { min-height: 150px; }
  .fh-post-card { grid-template-columns: 115px 1fr; gap: 15px; }
  .fh-contact-close .fh-container { width: 100%; }
  .fh-contact-panel { border-radius: 0; }
  .fh-nyazura-hero__lead { font-size: 1rem; }
  .fh-nyazura-hero .fh-cta-row { display: grid; }
  .fh-nyazura-hero .fh-btn { width: 100%; }
  .fh-nyazura-facts .fh-container { grid-template-columns: 1fr; }
  .fh-nyazura-facts .fh-container > div { border-right: 0; }
  .fh-nyazura-warning { grid-template-columns: 1fr; padding: 21px; }
  .fh-nyazura-season-list li { grid-template-columns: 1fr; gap: 5px; }
  .fh-nyazura-gates, .fh-nyazura-week, .fh-nyazura-download-card { padding: 24px 21px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .fh-reveal { opacity: 1; transform: none; }
}

@media print {
  .site-header, .site-footer, .fh-promise-rail, .fh-cta-row, .fh-low-data-toggle { display: none !important; }
  body { color: #000; background: #fff; }
  .fh-page-content { padding: 0; }
  a { color: #000; text-decoration: underline; }
}

/* Nyazura Project Pack v2 — vision-led public sales preview. */
.fh-ny-v2 { --ny2-forest:#0f382e; --ny2-deep:#082b24; --ny2-moss:#557446; --ny2-lime:#d7ed70; --ny2-orange:#e77825; --ny2-cream:#f3efe3; --ny2-paper:#fffdf8; --ny2-ink:#17251f; --ny2-muted:#66706a; --ny2-line:rgba(23,37,31,.14); overflow:hidden; background:var(--ny2-paper); color:var(--ny2-ink); }
.fh-ny-v2 h1,.fh-ny-v2 h2,.fh-ny-v2 h3 { text-wrap:balance; }
.fh-ny-v2 h2 { max-width:16ch; font-size:clamp(2.5rem,5.3vw,5.6rem); line-height:.97; letter-spacing:-.045em; }
.fh-ny-v2 p { color:var(--ny2-muted); }
.fh-ny-v2-section { padding-block:clamp(78px,10vw,145px); }
.fh-ny-v2-kicker { margin:0 0 12px; color:var(--ny2-orange)!important; font-size:.76rem; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
.fh-ny-v2-index { display:block; margin-bottom:26px; color:var(--ny2-orange); font-family:"Bricolage Grotesque",sans-serif; font-size:1rem; font-weight:700; letter-spacing:.08em; }
.fh-ny-v2-heading { margin-bottom:clamp(42px,6vw,82px); display:grid; grid-template-columns:minmax(0,1.2fr) minmax(310px,.7fr); gap:clamp(42px,8vw,120px); align-items:end; }
.fh-ny-v2-heading>p,.fh-ny-v2-heading>div:last-child>p { max-width:50ch; margin:0; font-size:1.04rem; line-height:1.7; }

.fh-ny-v2-hero { position:relative; min-height:clamp(720px,86vh,940px); display:grid; align-items:end; isolation:isolate; background:var(--ny2-deep); color:#fff; }
.fh-ny-v2-hero__image,.fh-ny-v2-hero__veil { position:absolute; inset:0; width:100%; height:100%; }
.fh-ny-v2-hero__image { z-index:-3; object-fit:cover; object-position:center 46%; }
.fh-ny-v2-hero__veil { z-index:-2; background:linear-gradient(90deg,rgba(5,28,23,.94) 0%,rgba(5,28,23,.74) 42%,rgba(5,28,23,.12) 79%),linear-gradient(0deg,rgba(5,28,23,.94) 0%,transparent 52%); }
.fh-ny-v2-hero__content { padding-top:135px; padding-bottom:175px; }
.fh-ny-v2-hero .fh-breadcrumbs { color:rgba(255,255,255,.66); }
.fh-ny-v2-hero .fh-breadcrumbs a { color:rgba(255,255,255,.82); }
.fh-ny-v2-hero__meta { margin:44px 0 19px; display:flex; flex-wrap:wrap; gap:8px; }
.fh-ny-v2-hero__meta span { padding:7px 10px; border:1px solid rgba(255,255,255,.26); border-radius:999px; color:rgba(255,255,255,.82); font-size:.72rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.fh-ny-v2-hero h1 { max-width:13ch; margin:0; color:#fff; font-size:clamp(3.4rem,7.5vw,7.7rem); line-height:.89; letter-spacing:-.065em; }
.fh-ny-v2-hero__lead { max-width:61ch; margin:27px 0 32px; color:rgba(255,255,255,.77)!important; font-size:clamp(1.05rem,1.5vw,1.3rem); line-height:1.65; }
.fh-ny-v2-hero .fh-btn--outline { border-color:rgba(255,255,255,.55); color:#fff; }
.fh-ny-v2-hero .fh-btn--outline:hover { border-color:var(--ny2-lime); background:var(--ny2-lime); color:var(--ny2-deep); }
.fh-ny-v2-hero__facts { position:absolute; inset:auto 0 0; z-index:1; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(255,255,255,.22); background:rgba(6,40,33,.88); backdrop-filter:blur(15px); }
.fh-ny-v2-hero__facts div { min-height:108px; padding:25px clamp(20px,3vw,50px); display:grid; align-content:center; border-right:1px solid rgba(255,255,255,.16); }
.fh-ny-v2-hero__facts div:last-child { border-right:0; }
.fh-ny-v2-hero__facts strong { color:var(--ny2-lime); font-family:"Bricolage Grotesque",sans-serif; font-size:clamp(1.45rem,2.8vw,2.6rem); line-height:1; }
.fh-ny-v2-hero__facts span { margin-top:6px; color:rgba(255,255,255,.66); font-size:.76rem; letter-spacing:.04em; }

.fh-ny-v2-vision { background:var(--ny2-paper); }
.fh-ny-v2-gallery-controls { margin-top:26px; display:flex; gap:9px; }
.fh-ny-v2-gallery-controls button { width:48px; height:48px; display:grid; place-items:center; border:1px solid var(--ny2-line); border-radius:50%; background:transparent; color:var(--ny2-forest); cursor:pointer; transition:.2s ease; }
.fh-ny-v2-gallery-controls button:hover { border-color:var(--ny2-forest); background:var(--ny2-forest); color:#fff; }
.fh-ny-v2-gallery { width:100%; display:grid; grid-auto-flow:column; grid-auto-columns:min(74vw,760px); gap:20px; overflow-x:auto; overscroll-behavior-inline:contain; scroll-snap-type:inline mandatory; scroll-padding-inline:max(24px,calc((100vw - 1200px)/2)); padding:0 max(24px,calc((100vw - 1200px)/2)) 24px; scrollbar-width:thin; scrollbar-color:var(--ny2-orange) var(--ny2-cream); }
.fh-ny-v2-gallery__card { margin:0; scroll-snap-align:start; border:1px solid var(--ny2-line); border-radius:4px; overflow:hidden; background:#fff; box-shadow:0 22px 55px rgba(20,41,32,.08); }
.fh-ny-v2-gallery__image { aspect-ratio:16/10; display:grid; place-items:center; overflow:hidden; background:var(--ny2-cream); }
.fh-ny-v2-gallery__image img { width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }
.fh-ny-v2-gallery__card:first-child .fh-ny-v2-gallery__image img,.fh-ny-v2-gallery__card:nth-child(8) .fh-ny-v2-gallery__image img,.fh-ny-v2-gallery__card:nth-child(11) .fh-ny-v2-gallery__image img,.fh-ny-v2-gallery__card:nth-child(n+14) .fh-ny-v2-gallery__image img { object-fit:contain; padding:14px; }
.fh-ny-v2-gallery__card:hover .fh-ny-v2-gallery__image img { transform:scale(1.018); }
.fh-ny-v2-gallery__card figcaption { min-height:165px; padding:25px 27px 28px; display:grid; grid-template-columns:44px 1fr; gap:18px; }
.fh-ny-v2-gallery__card figcaption>span { color:var(--ny2-orange); font-family:"Bricolage Grotesque",sans-serif; font-size:1.1rem; font-weight:700; }
.fh-ny-v2-gallery__card h3 { margin:0 0 7px; font-size:1.45rem; }
.fh-ny-v2-gallery__card p { margin:0; font-size:.92rem; line-height:1.58; }

.fh-ny-v2-investment { background:var(--ny2-cream); }
.fh-ny-v2-money-summary { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--ny2-line); background:var(--ny2-paper); }
.fh-ny-v2-money-summary>div { min-height:205px; padding:31px; display:grid; align-content:center; border-right:1px solid var(--ny2-line); }
.fh-ny-v2-money-summary>div:last-child { border-right:0; }
.fh-ny-v2-money-summary span { color:var(--ny2-orange); font-size:.73rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.fh-ny-v2-money-summary strong { margin:11px 0; color:var(--ny2-forest); font-family:"Bricolage Grotesque",sans-serif; font-size:clamp(2rem,3vw,3.3rem); line-height:.95; }
.fh-ny-v2-money-summary small { color:var(--ny2-muted); line-height:1.45; }
.fh-ny-v2-money-summary .is-primary { background:var(--ny2-forest); }
.fh-ny-v2-money-summary .is-primary strong { color:var(--ny2-lime); }
.fh-ny-v2-money-summary .is-primary small { color:rgba(255,255,255,.65); }
.fh-ny-v2-capital-grid { margin-top:22px; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--ny2-line); border-bottom:1px solid var(--ny2-line); }
.fh-ny-v2-capital-grid article { min-height:218px; padding:33px 25px; display:grid; align-content:start; border-right:1px solid var(--ny2-line); }
.fh-ny-v2-capital-grid article:last-child { border-right:0; }
.fh-ny-v2-capital-grid span { color:var(--ny2-muted); font-size:.75rem; font-weight:700; text-transform:uppercase; }
.fh-ny-v2-capital-grid strong { margin:14px 0 12px; color:var(--ny2-forest); font-family:"Bricolage Grotesque",sans-serif; font-size:1.75rem; }
.fh-ny-v2-capital-grid p { margin:0; font-size:.86rem; line-height:1.55; }
.fh-ny-v2-note { max-width:78ch; margin:25px 0 0; padding-left:18px; border-left:3px solid var(--ny2-orange); font-size:.87rem; }

.fh-ny-v2-phases { background:var(--ny2-paper); }
.fh-ny-v2-phases h2 { margin-bottom:55px; }
.fh-ny-v2-phase-rail { display:grid; grid-template-columns:repeat(6,1fr); border-top:1px solid var(--ny2-line); border-bottom:1px solid var(--ny2-line); }
.fh-ny-v2-phase-rail article { min-height:260px; padding:28px 20px; border-right:1px solid var(--ny2-line); }
.fh-ny-v2-phase-rail article:last-child { border-right:0; }
.fh-ny-v2-phase-rail article>span { color:var(--ny2-orange); font-weight:800; }
.fh-ny-v2-phase-rail small { display:block; margin:35px 0 10px; color:var(--ny2-muted); }
.fh-ny-v2-phase-rail h3 { margin:0 0 13px; font-size:1.26rem; }
.fh-ny-v2-phase-rail p { margin:0; font-size:.85rem; line-height:1.55; }

.fh-ny-v2-guide { background:#e7dfcd; }
.fh-ny-v2-chapters { border-top:1px solid var(--ny2-line); }
.fh-ny-v2-chapters article { padding:27px 0; display:grid; grid-template-columns:110px 1fr; gap:28px; border-bottom:1px solid var(--ny2-line); }
.fh-ny-v2-chapters article>span { color:var(--ny2-orange); font-size:.8rem; font-weight:800; letter-spacing:.07em; }
.fh-ny-v2-chapters h3 { margin:0 0 7px; font-size:1.55rem; }
.fh-ny-v2-chapters p { max-width:72ch; margin:0; }

.fh-ny-v2-procedure { background:var(--ny2-paper); }
.fh-ny-v2-procedure__intro { max-width:760px; margin-bottom:62px; }
.fh-ny-v2-procedure__intro p:last-child { max-width:55ch; font-size:1.05rem; }
.fh-ny-v2-procedure__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.fh-ny-v2-procedure__grid article { overflow:hidden; border:1px solid var(--ny2-line); background:#fff; }
.fh-ny-v2-procedure__grid img { width:100%; aspect-ratio:4/3; object-fit:cover; }
.fh-ny-v2-procedure__grid article>div { padding:27px; }
.fh-ny-v2-procedure__grid article span { color:var(--ny2-orange); font-size:.72rem; font-weight:800; text-transform:uppercase; }
.fh-ny-v2-procedure__grid h3 { margin:14px 0 19px; font-size:1.6rem; }
.fh-ny-v2-procedure__grid ul { margin:0; padding-left:18px; color:var(--ny2-muted); font-size:.88rem; line-height:1.5; }
.fh-ny-v2-procedure__grid li+li { margin-top:9px; }

.fh-ny-v2-truth { background:var(--ny2-orange); }
.fh-ny-v2-truth__grid { display:grid; grid-template-columns:1.15fr .75fr; gap:clamp(45px,8vw,120px); align-items:center; }
.fh-ny-v2-truth .fh-ny-v2-kicker { color:var(--ny2-deep)!important; }
.fh-ny-v2-truth h2 { color:var(--ny2-deep); }
.fh-ny-v2-truth p { max-width:65ch; color:rgba(8,43,36,.78); }
.fh-ny-v2-truth aside { padding:36px; background:var(--ny2-deep); color:#fff; }
.fh-ny-v2-truth aside .dashicons { width:38px; height:38px; font-size:38px; color:var(--ny2-lime); }
.fh-ny-v2-truth aside h3 { margin:18px 0 10px; color:#fff; font-size:1.7rem; }
.fh-ny-v2-truth aside p { margin:0; color:rgba(255,255,255,.68); }

.fh-ny-v2-premium { background:var(--ny2-deep); color:#fff; }
.fh-ny-v2-premium__lead { max-width:940px; }
.fh-ny-v2-premium__lead>span { color:var(--ny2-lime); font-size:.82rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.fh-ny-v2-premium h2 { max-width:12ch; margin:17px 0 27px; color:#fff; font-size:clamp(3rem,6.5vw,6.8rem); }
.fh-ny-v2-premium__lead p { max-width:62ch; color:rgba(255,255,255,.67); font-size:1.1rem; }
.fh-ny-v2-unlocks { margin-top:67px; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(255,255,255,.16); border-bottom:1px solid rgba(255,255,255,.16); }
.fh-ny-v2-unlocks article { min-height:245px; padding:35px 27px; border-right:1px solid rgba(255,255,255,.16); }
.fh-ny-v2-unlocks article:last-child { border-right:0; }
.fh-ny-v2-unlocks .dashicons { width:34px; height:34px; font-size:34px; color:var(--ny2-lime); }
.fh-ny-v2-unlocks h3 { margin:30px 0 10px; color:#fff; font-size:1.35rem; }
.fh-ny-v2-unlocks p { margin:0; color:rgba(255,255,255,.6); font-size:.88rem; }
.fh-ny-v2-premium__cta { margin-top:40px; padding:26px 0; display:flex; align-items:center; justify-content:space-between; gap:25px; }
.fh-ny-v2-premium__cta div { display:grid; }
.fh-ny-v2-premium__cta strong { color:#fff; font-size:1.18rem; }
.fh-ny-v2-premium__cta .fh-ny-v2-premium__price { color:var(--fh-lime); font-family:"Bricolage Grotesque",sans-serif; font-size:clamp(3.4rem,7vw,5.8rem); line-height:1; letter-spacing:-.055em; }
.fh-ny-v2-premium__cta span { color:rgba(255,255,255,.57); }

.fh-ny-v2-review { background:var(--ny2-paper); }
.fh-ny-v2-review__grid { display:grid; grid-template-columns:1fr .8fr; gap:clamp(50px,8vw,110px); align-items:center; }
.fh-ny-v2-review h2 { font-size:clamp(2.4rem,4.8vw,4.8rem); }
.fh-ny-v2-review .fh-disclaimer { margin:0; }
.fh-low-data .fh-ny-v2-hero__image,.fh-low-data .fh-ny-v2-gallery__image img,.fh-low-data .fh-ny-v2-procedure__grid img { display:none; }
.fh-low-data .fh-ny-v2-gallery__image::before { content:"Concept image omitted in low-data mode"; color:var(--ny2-muted); font-size:.85rem; }

@media (max-width:1050px) {
  .fh-ny-v2-heading { grid-template-columns:1fr; align-items:start; }
  .fh-ny-v2-capital-grid { grid-template-columns:repeat(2,1fr); }
  .fh-ny-v2-capital-grid article:nth-child(2) { border-right:0; }
  .fh-ny-v2-capital-grid article:nth-child(-n+2) { border-bottom:1px solid var(--ny2-line); }
  .fh-ny-v2-phase-rail { grid-template-columns:repeat(3,1fr); }
  .fh-ny-v2-phase-rail article:nth-child(3n) { border-right:0; }
  .fh-ny-v2-phase-rail article:nth-child(-n+3) { border-bottom:1px solid var(--ny2-line); }
  .fh-ny-v2-procedure__grid { grid-template-columns:1fr; }
  .fh-ny-v2-procedure__grid article { display:grid; grid-template-columns:minmax(280px,.8fr) 1fr; }
  .fh-ny-v2-procedure__grid img { height:100%; }
  .fh-ny-v2-unlocks { grid-template-columns:repeat(2,1fr); }
  .fh-ny-v2-unlocks article:nth-child(2) { border-right:0; }
  .fh-ny-v2-unlocks article:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.16); }
}

@media (max-width:760px) {
  .fh-ny-v2 h2 { font-size:clamp(2.45rem,12vw,4rem); }
  .fh-ny-v2-hero { min-height:auto; display:block; }
  .fh-ny-v2-hero__veil { background:linear-gradient(180deg,rgba(5,28,23,.64),rgba(5,28,23,.94) 62%,var(--ny2-deep)); }
  .fh-ny-v2-hero__content { padding-top:95px; padding-bottom:45px; }
  .fh-ny-v2-hero h1 { max-width:11ch; font-size:clamp(3.25rem,15.3vw,5.25rem); }
  .fh-ny-v2-hero__meta { margin-top:30px; }
  .fh-ny-v2-hero .fh-cta-row { display:grid; }
  .fh-ny-v2-hero .fh-btn { width:100%; }
  .fh-ny-v2-hero__facts { position:relative; grid-template-columns:repeat(2,1fr); }
  .fh-ny-v2-hero__facts div { min-height:96px; }
  .fh-ny-v2-hero__facts div:nth-child(2) { border-right:0; }
  .fh-ny-v2-hero__facts div:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.16); }
  .fh-ny-v2-gallery { grid-auto-columns:min(88vw,610px); gap:13px; padding-inline:18px; scroll-padding-inline:18px; }
  .fh-ny-v2-gallery__card figcaption { min-height:180px; padding:21px; grid-template-columns:35px 1fr; }
  .fh-ny-v2-money-summary { grid-template-columns:1fr; }
  .fh-ny-v2-money-summary>div { min-height:170px; border-right:0; border-bottom:1px solid var(--ny2-line); }
  .fh-ny-v2-money-summary>div:last-child { border-bottom:0; }
  .fh-ny-v2-capital-grid { grid-template-columns:1fr; }
  .fh-ny-v2-capital-grid article { min-height:180px; border-right:0; border-bottom:1px solid var(--ny2-line); }
  .fh-ny-v2-capital-grid article:last-child { border-bottom:0; }
  .fh-ny-v2-phase-rail { grid-template-columns:1fr; }
  .fh-ny-v2-phase-rail article { min-height:205px; border-right:0; border-bottom:1px solid var(--ny2-line); }
  .fh-ny-v2-phase-rail article:last-child { border-bottom:0; }
  .fh-ny-v2-chapters article { grid-template-columns:1fr; gap:8px; }
  .fh-ny-v2-procedure__grid article { display:block; }
  .fh-ny-v2-procedure__grid img { height:auto; }
  .fh-ny-v2-truth__grid,.fh-ny-v2-review__grid { grid-template-columns:1fr; }
  .fh-ny-v2-unlocks { grid-template-columns:1fr; }
  .fh-ny-v2-unlocks article { min-height:210px; border-right:0; border-bottom:1px solid rgba(255,255,255,.16); }
  .fh-ny-v2-unlocks article:last-child { border-bottom:0; }
  .fh-ny-v2-premium__cta { align-items:stretch; flex-direction:column; }
  .fh-ny-v2-premium__cta .fh-btn { width:100%; }
}

@media (prefers-reduced-motion:reduce) {
  .fh-ny-v2-gallery { scroll-behavior:auto; }
  .fh-ny-v2-gallery__image img { transition:none; }
}
