.flag {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    border-radius: 0 0 300px 0; /* Top-left corner rounded */
    height: 33.3%;
    object-fit: cover;
    border: 5px solid #000000;
  }

  .map {
    width: 33.3%;
    height: auto;
    object-fit: cover;
    filter: brightness(0);
    margin-left: 33.3%;
    margin-right: 33.3%;
    margin-top: 33.3%;
  }
  
  .parent {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    }
    
    .div1 { grid-area: 1 / 1 / 2 / 2; }
    .div2 { grid-area: 2 / 1 / 3 / 2; }

    .profiles{
      --size: 200px;
      --img-clip: "M 0 -50 L 200 -50 L 200 150 C 100 150 0 250 0 150 Z"; /* unfortunatly it isn't possible (as far as I know) to use custom properties in clip paths */
      --img-shadow: drop-shadow(5px 5px 2px rgba(0 0 0 / 0.5));
      --name-txt-clr: #9c6868;
      --bg-blur: 0;         /* background image default blur */
      --bg-blur-hover: 5px; /* background image blur on hover */
      font-family: 'Ubuntu', sans-serif;
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 25%;
      margin: auto auto;
      width: auto;
    }
    @media (min-width: 500px){
      .profiles{
        --grid-cols: 3 ;
        margin: 23px 20%;
      }
    }

    .avatar{
      position: relative;
      width: var(--size);
      height: var(--size); /* for older browsers */
      aspect-ratio: 1;
    }
    .avatar-img {
      clip-path: path(var(--img-clip));
    }
    
    .avatar-img::before{
      content: '';
      position: absolute;
      display: blocl;
      inset: 50% 0 0 0;
      z-index: -1;
      border-radius: 20px;
      background-color: var(--bg-clr); /* fallback if image not defined as custom property */
      background-image: var(--bg-img);
      background-size: cover;
      background-position: center;
      filter: blur(var(--bg-blur));
      transition: filter 300ms ease-in-out;
    }
    .avatar-img > img{
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: scale 300ms, filter 300ms;
      transform-origin: bottom;
      scale: var(--img-scale, .9);
      filter: var(--img-shadow);  
    }
    
    .avatar > p{
      text-align: right;
      font-size: .9rem;
      color: var(--name-txt-clr);
      bottom: .5rem;
      right: 0;
      translate: 0 var(--name-y,-50px);
      opacity: var(--name-opacity,0);
      z-index: -1;
      transition-name: translate, opacity;
      transition-delay: 150ms;
      transition-duration: 300ms;
      transition-timing-function: cubic-bezier(0.47, 1.64, 0.41, 0.8), ease-in-out;
    }
    
    /* all hover effects as custom properties */
    .avatar:hover{
      --img-scale: 1.2;
      --img-shadow: drop-shadow(10px 15px 4px rgba(0 0 0 / 0.5));
      --name-y: 0;
      --name-opacity: 1;
      --bg-blur: var(--bg-blur-hover);
    }
    

    