.leaf-hub-page {
  font-family: 'ProximaNova-Regular', sans-serif;
  color: #333;
  width: 100%;
  overflow-x: hidden; }
  .leaf-hub-page .hub-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px; }
  .leaf-hub-page .hub-hero-section {
    position: relative;
    padding: 100px 0;
    color: #fff;
    text-align: center;
    overflow: hidden; }
    .leaf-hub-page .hub-hero-section .hub-hero-bg-img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      z-index: 0; }
    .leaf-hub-page .hub-hero-section .hub-container {
      position: relative;
      z-index: 2; }
  .leaf-hub-page .hub-hero-text {
    max-width: 900px;
    margin: 0 auto; }
    .leaf-hub-page .hub-hero-text h1 {
      font-family: 'ProximaNova-Bold', sans-serif;
      font-size: 48px;
      line-height: 1.2;
      margin-bottom: 30px;
      text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1); }
      @media screen and (max-width: 768px) {
        .leaf-hub-page .hub-hero-text h1 {
          font-size: 34px; } }
    .leaf-hub-page .hub-hero-text p {
      font-size: 18px;
      line-height: 1.6;
      margin-bottom: 25px;
      opacity: 0.95; }
  .leaf-hub-page .hub-locations-section {
    background-repeat: no-repeat;
    background-size: cover;
    margin-top: -30px;
    padding: 80px 0;
    color: #fff;
    text-align: center; }
    .leaf-hub-page .hub-locations-section h2 {
      font-family: 'ProximaNova-Bold', sans-serif;
      font-size: 36px;
      margin-bottom: 50px;
      text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1); }
    .leaf-hub-page .hub-locations-section .locations-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 15px 30px;
      text-align: left; }
      @media (max-width: 992px) {
        .leaf-hub-page .hub-locations-section .locations-grid {
          grid-template-columns: repeat(3, 1fr); } }
      @media (max-width: 768px) {
        .leaf-hub-page .hub-locations-section .locations-grid {
          grid-template-columns: repeat(2, 1fr); } }
      @media (max-width: 576px) {
        .leaf-hub-page .hub-locations-section .locations-grid {
          grid-template-columns: 1fr; } }
    .leaf-hub-page .hub-locations-section .location-item a {
      color: #fff;
      text-decoration: none;
      font-size: 15px;
      display: flex;
      align-items: center;
      transition: opacity 0.2s;
      font-weight: 600; }
      .leaf-hub-page .hub-locations-section .location-item a:hover {
        opacity: 0.8;
        text-decoration: underline; }
      .leaf-hub-page .hub-locations-section .location-item a .pin-icon {
        width: 14px;
        height: 14px;
        fill: currentColor;
        margin-right: 8px;
        flex-shrink: 0;
        opacity: 0.8; }
