@import url('https://fonts.googleapis.com/css2?family=Fira+Sans:wght@200;300;400&family=Play:wght@400;700&display=swap');

*, *::before, *::after {
    -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
            box-sizing: border-box; 
  }

body {
    background-color: #f5f5f5;
    -ms-overflow-x: hidden;
        overflow-x: hidden;
}

#container {
    max-width: 1000px; 
    margin-top: 40px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 60px;
    overflow: auto;
    color:var(--darkgray);
    line-height: 1.5;
}

#title-container{
    font-family:'Fira Sans', sans-serif;
}

#profession, #specialisation{
    font-weight: 400;
}

#name {
    letter-spacing: 8.5px;
    text-transform: uppercase;
    font-weight: 300;
}

.address{
    font-family:'Fira Sans', sans-serif;
    font-style: normal;
    margin-top: 20px;
}

.phone, .email, .skype{
    text-decoration: none;
}

.summary{
    font-family:'Fira Sans', serif;
    font-style: italic;   
    font-weight: 400;
    text-justify:initial;
    max-width: 650px;
}    

.sub_title, .sub_title_2{
    font-family:'Fira Sans', serif;
    color:rgb(61,90,128);
    font-size: calc(10px + 100%);
    letter-spacing: 3px;
    font-weight: 300;
    margin-right: 10px;
}

.italic{
    font-style: italic;
}

.sub_content, .sub_content_1{
    font-family:'Fira Sans', sans-serif;
}

.sub_heading{
    font-size: calc(11px + 80%);
    margin-bottom:0.3em ;
    letter-spacing: 2px;
}

.sub_italic{
    font-family:'Fira Sans', sans-serif;
    font-style: italic;
    font-weight: 300;
    color: crimson;
    letter-spacing: 1.3px;
}

.date{ 
    font-family:'Fira Sans', serif; 
    font-weight: 300;
    float: right;
    font-style: italic;   
    color:#999185;
}

/* PDF download icon */

.link-container1 {
    padding: 0 15px 9px 15px;
}

.title_grid{
    display: grid;
    grid-template-columns: 3.3fr 0.8fr;
}

.download{
    background-image:url(../images/pdf_icon.png);
    width: 55px;
    height: 50px;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -ms-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    margin-left: auto; 
    margin-right: 0;
    margin-top: 85px;
}

.img-links .download:before {
    opacity: 0;
    content: '';
    position: absolute;
    width: 55px;
    height: 50px;
    background-color: #fadf67;
    -webkit-border-radius: 13px;
      -moz-border-radius: 13px;
       -ms-border-radius: 13px;
        -o-border-radius: 13px;
           border-radius: 13px;
    mix-blend-mode: multiply;
    -webkit-transition: opacity .25s ease;
        -moz-transition: opacity .25s ease;
          -ms-transition: opacity .25s ease;
            -o-transition: opacity .25s ease;
                transition: opacity .25s ease;
  }

  .img-links:hover .download:before {
    opacity: 1;
  }

@media screen and (min-width:1901px) {
    .sub_heading {
	    font-size: 24px;
    }
    .sub_title, .sub_title_2 {
        font-size: 24px;
    }
    .summary {
        font-size: 16px;
        margin-top: 20px;
        margin-bottom: 20px;
    }
    .project-details, p, li{
        font-size: 16px;
    }
    .date{
        font-size: 16px;
    }
}

@media screen and (max-width:1900px) {
    .sub_heading {
	    font-size: 20px;
    }
    .sub_title, .sub_title_2 {
        font-size: 22px;
    }
    .address, p, li{
        font-size: 16px;
    }
    .date{
        font-size: 16px;
    }
}

@media screen and (min-width: 862px) {
    html { 
        background:#f5f5f5; 
    }
    .link-container {
        display: flex;
        flex-wrap: nowrap;
        margin-left: 20px;
      }

    #container {
        background-color: #fff;
        padding: 80px; 
        -webkit-box-shadow:0px 0px 6px #c6c6c6;
            -moz-box-shadow:0px 0px 6px #c6c6c6;
              box-shadow:0px 0px 6px #c6c6c6;

                filter:progid:DXImageTransform.Microsoft.dropshadow(
                    OffX=0px, OffY=0px, Color='#c6c6c6', Positive='false'
                ); /* IE 5.5 */ 
                border-collapse: separate; /* Required by IE 9 */
    }
    .space{
        float: right;
        padding-bottom: 40px;
        padding-top: 30px;
        border-right: 1.5px solid crimson;   
    }

    #name {
        margin: 20px 10px 0 20px;
    }

    #profession{
        margin: 2px 10px 10px 20px;
    }
    #specialisation{
        margin: 2px 10px 30px 20px;
    }

    #specialisation{
        font-size: 16px;
        letter-spacing: 0.7px;
    }

    .summary {
        font-size: 16px;
        margin-bottom: 35px;
    }

    .sub_title{
        margin-top: 30px;
    }

    .sub_title_2{
        margin-top: 10px;
    }

    .add_sp{
        margin-bottom: 15px;
    }

    .sub_content{
        margin-top: 40px;
        margin-bottom: 20px;
    }

    #title-container{
        margin-left: 20px;
    }

  }

  @media screen and (min-width: 906px) {
    .profile-image{
        background-image:url(../images/logo.png);
        position: relative;
        width:300px;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -ms-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }
    .address{
        display:grid;
        grid-template-columns: 300px auto;
        padding-bottom: 20px;
        border-bottom: 1px solid crimson; 
    }
   
}

  @media screen and (max-width: 905px) {
    .profile-image{
        background-image:url(../images/logo-s.png);
        position: relative;
        width:200px;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -ms-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }
  }

  @media screen and (max-width: 861px) {
    body {
        background-color: #fff!important;
    }
    #container {
        padding-top: 30px; 
        padding-bottom: 30px; 
        padding-right: 27px;
        padding-left: 27px;
    }

    .link-container {
        display: flex;
        flex-wrap: nowrap;
        margin-left: 10px;
      }

    .summary {
    margin-bottom: 28px;
    }

    #specialisation{
        font-size: 16px;
        letter-spacing: 0.7px;
    }

    .sub_title{
        margin-top: 40px;
    }

    .sub_title_2{
        margin-top: 10px;
    }

    .add_sp{
        margin-bottom: 10px;
    }

    .sub_content{
        margin-top: 40px;
        margin-bottom: 10px;
    }

    .sub_content_1{
        margin-top: 7px;
    }
  }

  @media screen and (min-width: 738px) {
        .date{ 
            margin-top: -3px;
        }
    }

  @media screen and (max-width: 861px) and (min-width: 738px) {
    .space{
        float: right;
        padding-bottom: 40px;
        padding-top: 30px;
        margin-right: -15px;
        border-right: 1.5px solid crimson;   
    }  

  }
  @media screen and (max-width: 671px) {
    .profile-image{
        background-image:url(../images/logo-s1.png);
    }

    .date{ 
        margin-top: -8px;
    }
  }

  @media screen and (min-width: 650px) {
    #content{
        display: grid;
        grid-template-columns: 2fr 5fr;
    }

    #title-container{
        margin-left: 20px;
    }

    #header{
        display: grid;
        grid-template-columns: 2fr 5fr;
        background: rgb(61,90,128);
        background: linear-gradient(90deg, rgba(61,90,128,1) 0%, rgba(41,50,65,1) 100%); 
        background: -moz-linear-gradient(90deg, rgba(61,90,128,1) 0%, rgba(41,50,65,1) 100%);
        background: -webkit-linear-gradient(90deg, rgba(61,90,128,1) 0%, rgba(41,50,65,1) 100%);
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#b3d3ed",endColorstr="#dfe9f2",GradientType=1); 
        color: white;
    }
    .summary{
        text-align:justify;  
    }

    .sub_content_1{ 
        text-align:justify;  
        text-justify:inter-character;
    }

    .sub_content_1, .sub_content {
        margin-left: 30px;
    }

    #name {
        margin: 15px 8px 0 0;
    }

    #profession{
        margin: 2px 8px 8px 0;
    }
    #specialisation{
        margin: 2px 8px 15px 0;
    }
    
  }

  @media screen and (min-width:649px) and (max-width:905px){
    .address{
        display:grid;
        grid-template-columns: 200px auto;
        padding-bottom: 20px;
        border-bottom: 1px solid crimson; 
    }
      
  }

  @media screen and (max-width: 649px) {
    .address{
        padding-top: 10px;
        border-top: 1.5px solid #999; 
    }
    
    .split{
        display: block;
        margin-bottom: -22px;
    }

    .separator{
        display: none;
    }

    .sub_title, .sub_title_2 {
        border-bottom: 1.5px solid crimson;
        padding-bottom: 5px;
    }

    .sub_heading {
	    font-size: 18px;
    }

    .summary {
        font-size: 14px;
        margin-bottom: 25px;
    }

    .sub_title{
        margin-top: 20px;
    }

    .sub_title_2{
        margin-top: 10px;
    }

    .add_sp{
        margin-bottom: 0;
        display: none 
    }

    .sub_content{
        margin-top: 20px;
        margin-bottom: 20px;
    }
  }

  @media screen and (max-width: 550px) {
    .square_point{
        margin: 0;
        padding: 0;
    }
  }

  @media screen and (min-width: 450px) {
    .square_point{
        margin-top: 0.5em;
        margin-bottom: 0.9em;
        margin-left: -8px;
    }

    .lowsq_point, .summary_point{
        margin-top: 0.35em;
        margin-bottom: 0.35em;
    }

    .square_point, .lowsq_point, .summary_point{
        list-style: none; 
      }
      
      .square_point::before, .lowsq_point::before, .summary_point::before {
        content: "\25AA";  
        color: #999185; 
        font-size: 18px;
        font-weight: bold;
        width: 0.8em; 
      }
      .square_point::before, .lowsq_point::before {
        display: inline-block; 
      }
  }

@media screen and (max-width: 449px) {
    .square_point, .lowsq_point, .summary_point {
        list-style-type: square;
    }
}

@media screen and (max-width: 600px) {

    .link-container {
        display: grid;
        grid-template-columns: 1fr 1fr;
        max-width: 280px;
        margin: auto;
        padding: 5px;
    }

    .lowsq_point, .summary_point{
        margin-top: 0.18em;
        margin-bottom: 0.18em;
    }
}