
  :root:root:root:root .home-directions { padding:64px var(--pad); background:var(--ink-soft); scroll-margin-top:var(--header-h); }
  :root:root:root:root .home-directions h2 { margin:0 0 64px; font-size:clamp(20px,3.7vw,64px); line-height:1.15; letter-spacing:-.03em; text-transform:uppercase; white-space:nowrap; }
  :root:root:root:root .home-directions-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
  :root:root:root:root .home-direction { --direction-symbol-size:96px; display:grid; grid-template-rows:120px auto 1fr; min-width:0; }
  :root:root:root:root .home-direction-symbol { display:grid; align-items:end; justify-items:center; padding-bottom:24px; }
  :root:root:root:root .home-direction-symbol img { width:var(--direction-symbol-size); height:var(--direction-symbol-size); object-fit:contain; }
  /* The broad storefront carries more visual weight than the two open-line drawings. */
  :root:root:root:root .home-direction[data-direction="store"] .home-direction-symbol img { width:calc(var(--direction-symbol-size) - 8px); height:calc(var(--direction-symbol-size) - 8px); }
  :root:root:root:root .home-direction-cover { aspect-ratio:1; overflow:hidden; }
  :root:root:root:root .home-direction-cover img { width:100%; height:100%; object-fit:contain; transition:transform .3s var(--ease-out); }
  :root:root:root:root .home-direction-copy { position:relative; padding:24px 32px 0; text-align:center; }
  :root:root:root:root .home-direction-copy h3 { margin:0 0 12px; font-size:clamp(22px,2.3vw,36px); line-height:1.15; letter-spacing:-.02em; }
  :root:root:root:root .home-direction-copy p { margin:0 auto; max-width:32ch; color:#bfccc6; font-size:18px; }
  :root:root:root:root .home-directions h2 { text-align:center; white-space:normal; text-wrap:balance; }
  :root:root:root:root .home-direction-copy .n-arrow { position:absolute; top:28px; right:4px; }
  :root:root:root:root .home-direction:focus-visible { outline:2px solid var(--lime); outline-offset:8px; }
  :root:root:root:root .home-direction:is(:hover,:focus-visible) h3 { color:var(--lime); }
  @media(hover:hover) { :root:root:root:root .home-direction:hover .home-direction-cover img { transform:scale(1.025); } }
  @media(max-width:1000px) { :root:root:root:root .home-directions h2 { margin-bottom:56px; }:root:root:root:root .home-directions-grid { gap:16px; }:root:root:root:root .home-direction { --direction-symbol-size:88px; grid-template-rows:112px auto 1fr; } }
  @media(max-width:700px) { :root:root:root:root .home-directions { padding-block:40px; }:root:root:root:root .home-directions h2 { margin-bottom:48px; font-size:clamp(16px,4.65vw,32px); }:root:root:root:root .home-directions-grid { grid-template-columns:1fr; gap:40px; }:root:root:root:root .home-direction-copy { padding-top:20px; }:root:root:root:root .home-direction-copy h3 { font-size:28px; } }
  @media(prefers-reduced-motion:reduce) { :root:root:root:root .home-direction-cover img { transition:none; }:root:root:root:root .home-direction:hover .home-direction-cover img { transform:none; } }


  :root:root:root:root .home-community { --community-title-size:clamp(22px,2vw,28px); --community-padding:32px; display:grid; grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr); align-items:stretch; background:var(--green); }
  :root:root:root:root .home-community-links { --octagon-icon-size:48px; display:grid; align-content:start; gap:24px; padding:var(--community-padding) 24px; border-left:1px solid var(--line-dark); background:var(--ink-soft); }
  :root:root:root:root .home-community-links section { min-width:0; text-align:center; }
  :root:root:root:root .home-community-links h2 { margin:0 0 16px; font-size:20px; line-height:1.2; }
  :root:root:root:root .home-community-links #home-social-title { font-size:var(--community-title-size); }
  :root:root:root:root .home-community-icons { display:flex; justify-content:center; flex-wrap:wrap; gap:16px 12px; }
  :root:root:root:root .home-community-icons a { display:flex; flex-direction:column; align-items:center; gap:4px; width:60px; font-size:12px; line-height:1.4; }
  :root:root:root:root .home-community-icons a:focus-visible { outline:2px solid var(--lime); outline-offset:4px; }
  :root:root:root:root .home-community-socials { max-width:276px; margin-inline:auto; }
  :root:root:root:root .home-community-icons a:hover { color:var(--lime); }
  :root:root:root:root .home-community-video{padding:40px var(--pad);display:flex;flex-direction:column;justify-content:center;gap:16px;min-width:0}
  :root:root:root:root .home-video-player{position:relative;aspect-ratio:16/9;border:1px solid var(--lime);background:#000}
  :root:root:root:root .home-video-player iframe{display:block;width:100%;height:100%;border:0}
  :root:root:root:root .home-video-player button{position:absolute;inset:0;display:grid;place-items:center;width:100%;height:100%;border:0;padding:0;background:#000;color:var(--lime);cursor:pointer}
  :root:root:root:root .home-video-player button>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.45}
  :root:root:root:root .home-video-player button>span{position:relative;display:grid;justify-items:center;gap:12px;padding:24px;text-align:center}
  :root:root:root:root .home-video-player strong{color:#fff;font-size:clamp(20px,2vw,32px);font-weight:500}
  :root:root:root:root .home-video-player small{color:#fff;font-size:16px}
  :root:root:root:root .home-video-player button:hover>img{opacity:.6}
  :root:root:root:root .home-community-video>a{align-self:flex-start;font-size:16px;text-decoration:underline;text-underline-offset:4px}
  @media(max-width:1000px) { :root:root:root:root .home-community { grid-template-columns:1fr; }:root:root:root:root .home-community-links { border-left:0; border-top:1px solid var(--line-dark); padding-inline:var(--pad); } }


 :root:root:root:root .home-benefits{padding:64px var(--pad);background:var(--ink-soft)}
 :root:root:root:root .home-benefits h2{margin:0 0 64px;text-align:center;text-transform:uppercase;font-size:clamp(32px,3.7vw,64px);line-height:1.15;letter-spacing:-.03em}
 :root:root:root:root .home-benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
 :root:root:root:root .home-benefit{min-width:0;text-align:center}
 :root:root:root:root .home-benefit-icon{height:144px;display:flex;justify-content:center;align-items:flex-start}
 :root:root:root:root .home-benefit-icon img{width:120px;height:120px;object-fit:contain}
 :root:root:root:root .home-benefit-cover{width:100%;aspect-ratio:1;object-fit:contain;background:var(--ink-soft)}
 :root:root:root:root .home-benefit h3{font-size:clamp(24px,2.3vw,36px);line-height:1.2;margin:24px 0 12px;letter-spacing:-.02em}
 :root:root:root:root .home-benefit p{font-size:18px;color:#bfccc6;max-width:32ch;margin:0 auto}
 :root:root:root:root a.home-benefit:is(:hover,:focus-visible) h3{color:var(--lime)}
 @media(max-width:700px){:root:root:root:root .home-benefits{padding-block:48px}:root:root:root:root .home-benefits h2{margin-bottom:48px}:root:root:root:root .home-benefits-grid{grid-template-columns:1fr;gap:40px}}
