/* Home hero clean component · 2026-09-13
   One component, one geometry system, one media crop per leaf.
   Legacy Home hero selectors do not match this namespace. */

.page-home .cv-homehero{
  --cv-hero-mark-w:65.9vw;
  --cv-hero-mark-right:-17.9vw;
  --cv-hero-mark-bottom:-13vh;
  position:relative;
  min-height:100svh;
  overflow:hidden;
  isolation:isolate;
  background:#07100a;
  color:#fff;
}

.page-home .cv-homehero__stage{
  position:absolute;
  inset:0;
  overflow:hidden;
  background:#07100a;
}

.page-home .cv-homehero__field{
  position:absolute;
  inset:0;
  background-image:url("rebuild/home-canon/816c7000626a4c81.jpg");
  background-image:image-set(
    url("rebuild/home-canon/816c7000626a4c81-1920.avif") type("image/avif"),
    url("rebuild/home-canon/816c7000626a4c81-1920.webp") type("image/webp"),
    url("rebuild/home-canon/816c7000626a4c81.jpg") type("image/jpeg")
  );
  background-size:cover;
  background-position:center 50%;
  filter:brightness(.84) saturate(.92) contrast(1.025);
}

.page-home .cv-homehero__leaf{
  position:absolute;
  width:var(--cv-hero-mark-w);
  aspect-ratio:119/136;
  right:var(--cv-hero-mark-right);
  bottom:var(--cv-hero-mark-bottom);
  overflow:hidden;
  background-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-repeat:no-repeat;
  mask-size:100% 100%;
  -webkit-mask-size:100% 100%;
  mask-position:center;
  -webkit-mask-position:center;
  filter:brightness(.78) saturate(.60) contrast(1.02);
  opacity:.84;
  transition:filter 260ms cubic-bezier(.16,1,.3,1),opacity 260ms cubic-bezier(.16,1,.3,1);
}
.page-home .cv-homehero__leaf[data-leaf-active]{
  filter:brightness(1) saturate(1) contrast(1.01);
  opacity:1;
}
.page-home .cv-homehero[data-active-leaf] .cv-homehero__leaf:not([data-leaf-active]){
  filter:brightness(.80) saturate(.66) contrast(1.02);
  opacity:.82;
}
.page-home .cv-homehero__leaf--mech{
  z-index:5;
  mask-image:url("home/leaf-mask-field-systems.svg");
  -webkit-mask-image:url("home/leaf-mask-field-systems.svg");
}
.page-home .cv-homehero__leaf--advisory{
  z-index:7;
  mask-image:url("home/leaf-mask-advisory.svg");
  -webkit-mask-image:url("home/leaf-mask-advisory.svg");
  filter:brightness(.84) saturate(.88) contrast(1.05);
  opacity:.92;
}
.page-home .cv-homehero__leaf--farms{
  z-index:6;
  mask-image:url("home/leaf-mask-farms.svg");
  -webkit-mask-image:url("home/leaf-mask-farms.svg");
  background:transparent;
}

.page-home .cv-homehero__media{
  position:absolute;
  display:block;
  overflow:hidden;
  pointer-events:none;
}
.page-home .cv-homehero__media picture,
.page-home .cv-homehero__media img,
.page-home .cv-homehero__media video{
  display:block;
}
.page-home .cv-homehero__media img,
.page-home .cv-homehero__media video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
}

/* Media boxes are mark-relative. Interaction never changes geometry or crop. */
.page-home .cv-homehero__media--mech{
  left:2%;
  top:40%;
  width:54%;
  height:57%;
}
.page-home .cv-homehero__media--mech img{
  object-position:72% 54%;
  transform:scale(1.20);
  transform-origin:72% 54%;
  filter:brightness(.97) saturate(.91) contrast(1.035);
}

.page-home .cv-homehero__media--advisory{
  left:33.5%;
  top:19%;
  width:48%;
  height:60%;
}
.page-home .cv-homehero__media--advisory img,
.page-home .cv-homehero__media--advisory video{
  object-position:48% 46%;
  transform:scale(1);
  transform-origin:48% 46%;
  filter:brightness(.89) saturate(.96) contrast(1.05);
}
.page-home .cv-homehero__media--advisory video{
  z-index:2;
  opacity:0;
  visibility:visible;
  transition:opacity 180ms cubic-bezier(.16,1,.3,1),filter 260ms cubic-bezier(.16,1,.3,1);
}
.page-home .cv-homehero.is-video-live .cv-homehero__media--advisory video{opacity:1}

.page-home .cv-homehero__media--farms{
  left:43%;
  top:45%;
  width:56%;
  height:52%;
  background-image:url("https://www.bssnews.net/assets/news_photos/2024/04/23/image-185189-1713852858.jpg");
  background-size:cover;
  background-position:31% 52%;
  background-repeat:no-repeat;
}
.page-home .cv-homehero__media--farms img{
  opacity:0;
  object-position:31% 52%;
  transform:scale(1);
  transform-origin:31% 52%;
  filter:brightness(.84) saturate(.82) contrast(1.035);
}

.page-home .cv-homehero__leaf::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:4;
  pointer-events:none;
  background:linear-gradient(150deg,rgba(5,15,9,.12),rgba(6,22,13,.22));
  opacity:.27;
  transition:opacity 260ms cubic-bezier(.16,1,.3,1);
}
.page-home .cv-homehero__leaf--advisory::before{opacity:.20}
.page-home .cv-homehero__leaf--farms::before{opacity:.18}
.page-home .cv-homehero[data-active-leaf] .cv-homehero__leaf:not([data-leaf-active])::before{opacity:.29}
.page-home .cv-homehero__leaf[data-leaf-active]::before{opacity:.055}
.page-home .cv-homehero__leaf[data-leaf-active] .cv-homehero__media img,
.page-home .cv-homehero__leaf[data-leaf-active] .cv-homehero__media video{
  filter:brightness(.97) saturate(.98) contrast(1.03);
}
.page-home .cv-homehero__leaf--advisory[data-leaf-active]{filter:brightness(.94) saturate(.94) contrast(1.04)}
.page-home .cv-homehero__leaf--farms[data-leaf-active]{filter:brightness(.93) saturate(.92) contrast(1.035)}

/* The environmental veil and grain belong to the landscape, not over the leaf photography. */
.page-home .cv-homehero__veil{
  position:absolute;
  inset:0;
  z-index:4;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 18% 56%,rgba(2,6,3,.72) 0%,rgba(2,6,3,.47) 27%,rgba(2,6,3,.13) 49%,transparent 67%),
    linear-gradient(90deg,rgba(2,6,3,.16),transparent 48%,rgba(2,6,3,.02) 76%,rgba(2,6,3,.08)),
    linear-gradient(180deg,rgba(2,6,3,.06),transparent 58%,rgba(2,6,3,.26));
}
.page-home .cv-homehero__grain{
  position:absolute;
  inset:0;
  z-index:4;
  opacity:.028;
  pointer-events:none;
  background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg%20viewBox%3D%270%200%20180%20180%27%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2Fsvg%27%3E%3Cfilter%20id%3D%27n%27%3E%3CfeTurbulence%20type%3D%27fractalNoise%27%20baseFrequency%3D%27.85%27%20numOctaves%3D%273%27%20stitchTiles%3D%27stitch%27%2F%3E%3C%2Ffilter%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%20filter%3D%27url%28%23n%29%27%20opacity%3D%27.45%27%2F%3E%3C%2Fsvg%3E");
}

.page-home .cv-homehero__intelligence,
.page-home .cv-homehero__hotspots{
  position:absolute;
  width:var(--cv-hero-mark-w);
  height:auto;
  aspect-ratio:119/136;
  right:var(--cv-hero-mark-right);
  bottom:var(--cv-hero-mark-bottom);
  overflow:visible;
}
.page-home .cv-homehero__intelligence{z-index:38;pointer-events:none}
.page-home .cv-homehero__hotspots{z-index:50;pointer-events:none}
.page-home .cv-homehero__hotspot{pointer-events:all;cursor:pointer;outline:none}
.page-home .cv-homehero__hotspot path{fill:rgba(255,255,255,.001);pointer-events:all}
.page-home .cv-homehero__hotspot:focus-visible path{fill:rgba(255,255,255,.018);stroke:rgba(255,255,255,.72);stroke-width:.22;vector-effect:non-scaling-stroke}
.page-home .cv-homehero__intel-shape{opacity:0;transition:opacity 260ms cubic-bezier(.16,1,.3,1)}
.page-home .cv-homehero[data-active-leaf="mech"] .cv-homehero__intel-shape[data-leaf="mech"]{opacity:.22}
.page-home .cv-homehero__intel-shape path{
  fill:url(#cvHomeHeroGrid);
  stroke:rgba(229,244,234,.24);
  stroke-width:.16;
  vector-effect:non-scaling-stroke;
}

.page-home .cv-homehero__content{
  position:relative;
  z-index:60;
  min-height:100svh;
  max-width:1540px;
  margin:0 auto;
  padding:clamp(118px,14vh,150px) var(--gutter) clamp(72px,8vh,100px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  pointer-events:none;
}
.page-home .cv-homehero__content a{pointer-events:auto}
.page-home .cv-homehero__title{
  width:min(900px,58vw);
  max-width:none;
  margin:0;
  font:400 clamp(66px,5.75vw,94px)/.91 var(--serif);
  letter-spacing:-.056em;
  text-wrap:balance;
}
.page-home .cv-homehero__title-line{display:inline}
.page-home .cv-homehero__title-line:nth-child(1)::after{content:" "}
.page-home .cv-homehero__title-line:nth-child(2)::after{content:"\A";white-space:pre}
.page-home .cv-homehero__title-line:nth-child(3)::after{content:" "}
.page-home .cv-homehero__title em{font-weight:400}
.page-home .cv-homehero__actions{
  display:flex;
  align-items:center;
  gap:24px;
  flex-wrap:wrap;
  margin-top:clamp(30px,4vh,46px);
}
.page-home .cv-homehero__primary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 22px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  background:rgba(8,15,10,.74);
  color:#fff;
  font:600 11px/1 var(--mono);
  letter-spacing:.025em;
  transition:background 180ms ease,border-color 180ms ease;
}
.page-home .cv-homehero__primary:is(:hover,:focus-visible){background:rgba(18,27,20,.86);border-color:rgba(255,255,255,.28)}
.page-home .cv-homehero__secondary{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  color:rgba(255,255,255,.93);
  font:600 11px/1 var(--mono);
  letter-spacing:.025em;
  white-space:nowrap;
  text-shadow:0 1px 2px rgba(0,0,0,.24);
}
.page-home .cv-homehero__secondary::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:6px;
  height:1px;
  background:currentColor;
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform 220ms cubic-bezier(.16,1,.3,1);
}
.page-home .cv-homehero__secondary:is(:hover,:focus-visible)::after{transform:scaleX(1)}
.page-home .cv-homehero__primary:focus-visible,
.page-home .cv-homehero__secondary:focus-visible,
.page-home .cv-homehero__handoff:focus-visible{outline:2px solid rgba(255,255,255,.92);outline-offset:5px}

.page-home .cv-homehero__destinations{
  position:absolute;
  width:var(--cv-hero-mark-w);
  aspect-ratio:119/136;
  right:var(--cv-hero-mark-right);
  bottom:var(--cv-hero-mark-bottom);
  z-index:56;
  pointer-events:none;
}
.page-home .cv-homehero__destination{
  position:absolute;
  width:clamp(210px,30%,258px);
  padding:13px 15px 14px;
  color:#fff;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.16);
  border-radius:14px;
  background:linear-gradient(145deg,rgba(19,30,23,.52),rgba(8,14,10,.34));
  -webkit-backdrop-filter:blur(14px) saturate(118%);
  backdrop-filter:blur(14px) saturate(118%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 8px 24px rgba(0,0,0,.14);
  transform:translateY(7px) scale(.985);
  transform-origin:center;
  transition:opacity 180ms ease,transform 220ms cubic-bezier(.16,1,.3,1),visibility 0s linear 220ms;
}
.page-home .cv-homehero__destination[data-cv-hero-destination="mech"]{left:9%;top:61%}
.page-home .cv-homehero__destination[data-cv-hero-destination="advisory"]{left:39%;top:34%}
.page-home .cv-homehero__destination[data-cv-hero-destination="farms"]{left:45%;top:70%}
.page-home .cv-homehero__destination[data-leaf-active]{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.page-home .cv-homehero__route{display:flex;align-items:center;gap:8px;font:600 10.5px/1 var(--mono);letter-spacing:.085em;text-shadow:0 1px 3px rgba(0,0,0,.42)}
.page-home .cv-homehero__route i{width:24px;height:1px;background:rgba(255,255,255,.72)}
.page-home .cv-homehero__destination-title{display:block;margin-top:8px;color:rgba(255,255,255,.91);font-size:11.2px;line-height:1.42;text-shadow:0 1px 3px rgba(0,0,0,.42)}

.page-home .cv-homehero__handoff{
  position:absolute;
  z-index:61;
  left:50%;
  bottom:24px;
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  transform:translateX(-50%);
  color:rgba(255,255,255,.78);
  font-size:18px;
}

@media (max-width:760px){
  .page-home .cv-homehero{
    --cv-hero-mark-w:112vw;
    --cv-hero-mark-right:-9vw;
    --cv-hero-mark-bottom:-4svh;
  }
  .page-home .cv-homehero__field{background-position:center 50%}
  .page-home .cv-homehero__media--mech{
    left:2%;
    top:40%;
    width:54%;
    height:57%;
  }
  .page-home .cv-homehero__media--mech img{
    object-position:78% 53%;
    transform:scale(1.10);
    transform-origin:78% 53%;
  }
  .page-home .cv-homehero__media--advisory{
    left:34%;
    top:2%;
    width:48%;
    height:60%;
  }
  .page-home .cv-homehero__media--advisory img,
  .page-home .cv-homehero__media--advisory video{
    object-position:46% 48%;
    transform:scale(1.08);
    transform-origin:46% 48%;
  }
  .page-home .cv-homehero__media--farms{
    left:46%;
    top:40%;
    width:52%;
    height:57%;
    background-position:31% 52%;
  }
  .page-home .cv-homehero__media--farms img{
    opacity:0;
    object-position:50% 55%;
    transform:scale(1);
    transform-origin:50% 55%;
  }
  .page-home .cv-homehero__content{
    min-height:100svh;
    padding:112px 24px 78px;
    justify-content:flex-start;
  }
  .page-home .cv-homehero__title{
    width:calc(100vw - 48px);
    max-width:none;
    font-size:clamp(34px,9.9vw,50px);
    line-height:.92;
    letter-spacing:-.052em;
  }
  .page-home .cv-homehero__actions{gap:14px;margin-top:28px}
  .page-home .cv-homehero__secondary{min-height:40px;font-size:10px}
  .page-home .cv-homehero__destination{
    width:min(228px,62vw);
    padding:11px 12px 12px;
    border-radius:12px;
    -webkit-backdrop-filter:blur(10px) saturate(112%);
    backdrop-filter:blur(10px) saturate(112%);
  }
  .page-home .cv-homehero__destination[data-cv-hero-destination="mech"]{left:7%;top:69%}
  .page-home .cv-homehero__destination[data-cv-hero-destination="advisory"]{left:34%;top:31%}
  .page-home .cv-homehero__destination[data-cv-hero-destination="farms"]{left:39%;top:72%}
}

@media (prefers-reduced-motion:reduce){
  .page-home .cv-homehero *,
  .page-home .cv-homehero *::before,
  .page-home .cv-homehero *::after{scroll-behavior:auto;transition:none}
  .page-home .cv-homehero__media--advisory video{display:none}
}

/* Convergence values folded from the working art pass. These are now part of the primary hero stylesheet. */
.page-home .cv-homehero__destination{
  width:clamp(194px,27%,234px);
  padding:12px 34px 13px 14px;
  border-radius:10px;
  border-color:rgba(255,255,255,.14);
  background:linear-gradient(145deg,rgba(14,23,18,.58),rgba(6,11,8,.42));
  -webkit-backdrop-filter:blur(12px) saturate(108%);
  backdrop-filter:blur(12px) saturate(108%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 7px 20px rgba(0,0,0,.13);
}
.page-home .cv-homehero__route{width:100%}
.page-home .cv-homehero__route i{display:none}
.page-home .cv-homehero__destination::after{
  content:"↗";
  position:absolute;
  right:12px;
  top:50%;
  transform:translateY(-50%);
  color:rgba(255,255,255,.92);
  font:500 14px/1 var(--mono);
  letter-spacing:0;
  text-shadow:0 1px 3px rgba(0,0,0,.34);
}

@media (min-width:761px){
  .page-home .cv-homehero__leaf--mech{
    filter:brightness(.84) saturate(.70) contrast(1.025);
    opacity:.90;
  }
  .page-home .cv-homehero__leaf--farms{
    filter:brightness(.79) saturate(.72) contrast(1.035);
    opacity:.86;
  }
  .page-home .cv-homehero__media--farms{
    left:45%;
    top:47%;
    width:54%;
    height:50%;
  }
  .page-home .cv-homehero__title{
    font-size:clamp(66px,5.62vw,92px);
  }
  .page-home .cv-homehero[data-active-leaf="mech"] .cv-homehero__intel-shape[data-leaf="mech"]{
    opacity:.26;
  }
  .page-home .cv-homehero__intel-shape path{
    stroke:rgba(229,244,234,.28);
  }
  .page-home .cv-homehero__destination[data-cv-hero-destination="mech"]{
    left:10%;
    top:56%;
  }
  .page-home .cv-homehero__destination[data-cv-hero-destination="advisory"]{
    left:42%;
    top:47%;
  }
  .page-home .cv-homehero__destination[data-cv-hero-destination="farms"]{
    left:49%;
    top:72%;
    width:clamp(182px,23%,204px);
  }
}

@media (min-width:761px) and (max-width:1100px){
  .page-home .cv-homehero__title{
    width:min(610px,54vw);
    font-size:clamp(52px,5.6vw,64px);
    letter-spacing:-.052em;
  }
  .page-home .cv-homehero__destination{
    width:clamp(182px,29%,214px);
    padding:11px 32px 12px 13px;
  }
  .page-home .cv-homehero__destination[data-cv-hero-destination="farms"]{
    width:clamp(174px,25%,194px);
  }
  .page-home .cv-homehero__destination-title{
    font-size:10.6px;
  }
}

@media (max-width:760px){
  .page-home .cv-homehero__destination{
    width:min(208px,58vw);
    padding:10px 31px 11px 12px;
    border-radius:10px;
    -webkit-backdrop-filter:blur(10px) saturate(106%);
    backdrop-filter:blur(10px) saturate(106%);
  }
  .page-home .cv-homehero__destination::after{
    right:10px;
    font-size:13px;
  }
}

/* Keep the two right-hand captions wholly inside the viewport while the cropped mark is still oversized. */
@media (min-width:761px) and (max-width:1300px){
  .page-home .cv-homehero__destination[data-cv-hero-destination="advisory"]{left:34%}
  .page-home .cv-homehero__destination[data-cv-hero-destination="farms"]{left:37%}
}
