@font-face {
    font-family: 'Lato-Light';
    src: url('fonts/Lato-Light.ttf') format('truetype');
}
@font-face {
    font-family: 'Poppins-Regular';
    src: url('fonts/Poppins-Regular.ttf') format('truetype');
}

:root{
      --bg: #000;
      --fg: #fff;
      --muted: #bdbdbd;
    }
    body{background:var(--bg); color:var(--fg); font-family: 'Poppins', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";}

    /* Hero */
    .brand-title{
      letter-spacing: .18em;
      font-weight: 300;
      font-size: clamp(2rem, 5vw, 5rem);
    }
    .city-list{
      color: var(--muted);
      letter-spacing: .06em;
      line-height: 1.9;
      font-size: clamp(.95rem, 1.2vw, 1.2rem);
      font-family: "Lato-Light";
    }

    /* Divider line */
    .soft-divider{opacity:1; border-color:#fff; max-width: 100%; margin: 3rem auto;}

    /* Address cards */
    .addr{line-height: 1.9; font-size: 1.05rem;font-family: "Poppins-Regular";}

    /* Vertical separators only on md+ */
    @media (min-width: 768px){
      .with-vrule{position: relative;}
      .with-vrule + .with-vrule::before{
        content: ""; position: absolute; left: -4.5rem; top: 20%; bottom: 20%; width: 2px; background: rgba(255,255,255);
      }
    }

    /* Spacing helper to center block in viewport nicely */
    .vh-pad{padding-top: 8vh; padding-bottom: 8vh;}