/*
 * web portfolio 02
 */


@font-face {
  src: url("../fonts/Roslindale-DisplayNarrowRegular.woff") format("woff");
  font-family: "Roslindale Display Narrow Regular";
  font-style: normal;
  font-weight: normal;
}

@font-face {
  src: url("../fonts/Roslindale-DisplayNarrowLight.woff") format("woff");
  font-family: "Roslindale Display Narrow Light";
  font-style: normal;
  font-weight: normal;
}

@font-face {
  src: url("../fonts/Roslindale-DisplayNarrowBold.woff") format("woff");
  font-family: "Roslindale Display Narrow Bold";
  font-style: normal;
  font-weight: normal;
}


body {
  font-family: "Lato", "Helvetica Neue", sans-serif;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  line-height: 120%;
  color:#1d1f49;
  font-weight: 400;
  background-color: #ffffff;
  background-image: url("../images/bg.png");
  /*background-attachment: fixed;*/
  background-repeat: no-repeat;
  /*cursor:url('../images/ico-fingers-purple-56.png') 28 28, auto;*/
}

.purple-bg { background-color: #4B0B99 !important; }
.dark-bg { background-color: #1E182E !important; }
.light-bg { background-color: #F2F3FA !important; }

.light-txt { color:#ffffff; }
.dark-txt { color:#1d1f49; }


/********/

header {
  padding: 24px;
}

.logo-image {
  margin-right: 8px;
}

.logo-name {
  display: inline-block;
  font-family: Roslindale Display Narrow Light, serif;
  font-weight: 700;
  font-size: 22px;
  line-height: 120%;
  position: relative;
  top: -16px;
  margin-right: 4px;
}

.header-nav {
  margin-right: 16px;
  position: relative;
  top: -16px;
  font-family: Roslindale Display Narrow Light, serif;
  font-weight: 700;
  font-size: 32px;
  line-height: 120%;
}

.header-link {
  /*position: relative;*/
  /*top: -16px;*/
  /*color: #666 !important;*/
  /*text-decoration: none;*/
  font-size: 22px;
  font-weight: 700;
}

.header-cta {
  display: inline-block;
  background-color: #7512F0;
  color: #ffffff;
  font-size:16px;
  font-weight: 600;
  line-height: 100%;
  text-decoration: none;
  padding: 8px 16px;
  border-radius: 6px;

  position: relative;
  top: -16px;
}


main { 
  /*padding: 160px 80px 48px 160px;*/
  /*border: 1px solid red;*/
}

/*#header { 
  padding: 160px 80px 32px 160px;
}*/

.section {
  display: flow-root;
  padding: 48px 80px 48px 160px;
  /*border: 1px solid green;*/

}

.no-padding {
  padding-top: 0;
  padding-bottom: 0;
}

.no-padding-top { padding-top: 0; }
.no-padding-bottom { padding-bottom: 0; }

.more-margin-top { margin-top:48px; }
.more-margin-bottom { margin-bottom:48px; }

section.intro { padding-top: 160px }


/*#section-expertise {
  padding: 48px 80px 48px 160px;
  background-color: #F2F3FA;
}*/

section.expertise {
  background-color: #F2F3FA;
  background-color: #1E182E;
}

/*section.light {
  background-color: #F2F3FA;
}*/


/*#section-work-milestones {
  padding: 48px 80px 48px 160px;
}*/

/*#section-approach {
  padding: 48px 80px 48px 160px;
  background-color: #4B0B99;
  background-image: url("../images/bg.png");
}*/

section.approach {
  background-color: #4B0B99;
  background-image: url("../images/bg.png");
}

/*#section-about {
  padding: 48px 80px 48px 160px;
  border: 1px solid green;
}*/

section.about {
  /*border: 1px solid green;*/
}

section.section-full-bleed { 
  padding:0;
  text-align: center;
}


h1 {
  font-family: Roslindale Display Narrow Light, serif;
  font-size: 48px;
  font-weight: normal;  
  line-height: 120%;
  max-width: 920px;

  /*margin:8px 0 24px 0;*/
}

h1 .color {
  font-family: Roslindale Display Narrow Regular, serif;
}

h1 strong {
  font-family: Roslindale Display Narrow Bold, serif;
  font-weight: normal;
}

h2 {
  font-family: Roslindale Display Narrow Regular, serif;
  font-weight: 700;
  font-size: 32px;
  line-height: 120%;
  /*color: #7512F0;*/
  margin-bottom: 48px;
}

h2.big { 
  font-size: 64px;
  font-weight: normal;
  margin-bottom: 80px;
}

section.contact h2 {
  font-size: 48px;
  font-weight: 400;
  margin: 0;
}

.stefano:hover {

  cursor:url('../images/ico-fingers-purple-56.png') 28 28, auto;
  /*cursor: help;*/
}


.color {  
  color: #7512F0;
 }

 p {
  font-size: 24px;
  line-height: 150%;
  max-width: 880px;
}

ul {
  font-size: 24px;
  line-height: 150%;
  max-width: 80%;
}

p.large {
  font-size: 28px;
  line-height: 130%;
}

.small { 
  font-size:22px; 
  line-height: 150%;
 }

 .very-small { 
  font-size:18px; 
  line-height: 150%;
 }

 .very-very-small { 
  font-size:16px; 
  line-height: 150%;
 }


a, a:visited { 
  /*font-weight:bold;*/
  font-weight: 800;
  color:#7512F0; 
}

h2 a { font-weight: 400; }

.emphasis {}

strong { font-weight:800; }

.content-box {
  /*width: 70%;*/
  max-width: 560px;
  padding: 16px;
  border-radius: 8px;
  background-color: #F2F3FA;
  /*background-color: #4B0B99;*/
  /*background-image: url("../images/bg.png");*/
  /*color: #ffffff;*/
  margin-bottom: 32px;
}

.title-box {
  /*display: inline-block;*/
  font-family: Roslindale Display Narrow Regular, serif;
  font-weight: 700;
  font-size: 26px;
  line-height: 100%;
  margin: 8px 0 32px 4px;
  /*vertical-align: top;*/
  /*margin-left: 8px;*/

}

ul#milestones { 
  margin:24px 0 0 0; 
  padding:0;
  font-size: 18px;
  line-height: 120%;
  max-width: 920px;
  color: white;
 }

 section.work-milestones ul#milestones {
  color: #1d1f49;
 }

ul#milestones li {
  list-style: none;
  margin: 0 0 16px 8px;
}

ul#milestones li.first { 
  border-bottom: 1px solid #CCCCCC;
}

ul#milestones .company-details {
  display: inline-block; 
  font-size: 18px; 
  margin-left: 8px; 
  position: relative;
  vertical-align: top;
  top: 4px;
  /*width: 80%;*/
}


dl.expertise {
  max-width: 920px;
}


dl.expertise dt {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 24px;
  /*border-top: 1px solid #D2D3D9;*/
  /*border-top: 1px solid rgba(255,255,255,0.2);*/
  padding-top: 24px;
  color: #ffffff;
}

dl.expertise dt.first {

  border-top: none;
  padding-top: 0px;
}

dl.expertise dd {
  font-size: 16px;
  color: #ffffff;
  display: inline-block;
  padding: 6px 8px;
  border-radius: 4px;
  /*background-color: #ffffff;*/
  background-color: #9069DC;
  margin-inline-start: 0px;
  margin-right: 16px;
  margin-bottom: 16px;
}


ul#approach {
  margin:24px 0 0 0; 
  padding:0;
  font-size: 32px;
  line-height: 150%;
  max-width: 920px;
  color: #ffffff;
}

ul#approach li {
  list-style-type: none;
  margin-bottom: 48px;
}

.approach-text {
  display: inline-block ;
  max-width: 680px;
  vertical-align: top;
  margin-left: 16px;
  width: 90%;
}

#content-about {
  /*background-color: lightblue;*/
  max-width: 920px ;
}

#image-me {
  display: inline-block;
  width: 40%;
  vertical-align: top;
  text-align: center;
  /*border: 1px solid red;*/
}

#about-text {
  /*border: 1px solid green;*/
  display: inline-block;
  width: 45%;
  vertical-align: top;
  padding-right: 80px;
}


.role {
  font-size: 16px;
  line-height: 120%;
  margin: 0 0 32px 0;

}


/* **********
 * project list
 */

.project-list { 
  background-color: #F2F3FA;
  color: #ffffff; 
  border-radius:8px;
  padding: 24px;
  margin-bottom: 24px; 
  display: flex;
  align-items: flex-start;
  gap: 24px;
  max-width: 1000px;
}

.project-list img { 
  border-radius:4px;
  flex: 1 1 55%;
  height: auto;
  width: 480px;
}

.project-title { 
  flex: 1 1 40%;
  min-width: 0;
  color:#1d1f49;

}

.project-title a { 
  /*color: #4224BC;*/
  /*font-family: Roslindale Display Narrow Regular, serif;*/
  /*font-weight: 700;*/
  font-size: 24px; 
  font-weight: 800; 
  line-height: 120%;
}


/* **********
 * **********
 */


.img-full-bleed { width:100%; }
.img-medium { 
  max-width:880px; 
  width:100% 
}
.img-inside-section {  }

.caption-img { 
  margin: 0;
  max-width: none; 
}
.caption-img span {
  /*display: inline-block;*/
  padding: 4px 8px;
  margin: 0;
  /*color:#ffffff;*/
  font-size: 16px;
  background-color: rgba(255, 255, 255, .4);
}






/* *************
 * Media queries
 */


@media (max-width: 992px) {
  #header { }

  .section { padding: 48px; }

  .content-box { width: 90%; }
  .img-inside-section { width:100%; }
}

@media (max-width: 768px) {
  
  .section { padding: 32px; }
  .approach-text { width:80%; }

  .project-list { flex-direction: column; align-items: stretch; }
  .project-list img { flex: 1 1 auto; width: 100%; }

  .img-inside-section { width:100%; }
  
}

@media (max-width: 576px) {
  .hide-mobile { display:none; }
  header { padding: 8px 0 0 8px; }
  .header-cta { font-size:14px; padding:8px 12px; }

  h1 { font-size: 40px; }
  h2.big { font-size: 56px; margin-bottom: 48px; }
  section.contact h2 { font-size: 40px; }
  section.intro { padding: 80px 24px 24px 24px; }
  .section { padding: 24px;  }
  .content-box { padding: 16px; }

  ul#approach { font-size: 28px; }

  ul#milestones .company-details { width: ; }
  .approach-text { width:80%; }

  #image-me, #about-text { display: block; width: 100%;}
  #image-me img { width:100%; height:auto; }

  .project-list { margin-bottom: 40px; padding: 16px; }

  
}



