button,hr,input{overflow:visible}audio,canvas,progress,video{display:inline-block}progress,sub,sup{vertical-align:baseline}html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0} menu,article,aside,details,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{}button,select{text-transform:none}[type=submit], [type=reset],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}[hidden],template{display:none}

:root {
  --color-gray-light-1: #f8f8f8;
  --color-gray-light-2: #e9e9e9;
  --color-gray-light-3: #dedede;
  --color-gray-dark-1: #545454;
  --color-gray-dark-2: #737373;
  --color-gray-dark-3: #9a9a9a;
  --color-blue-dark-1: #00387f;
  --color-tiffany: #00a6a6;
  --profile-theme: #4682bf;
  --timeline-circle-theme: #14253e;
}

html {
  font-size: 100%;
  font-family: 'PT Sans', sans-serif;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  padding: 3rem 1rem;
  min-height: 100vh;
  background-color: var(--color-gray-light-3);
}

.wrapper {
  margin: 0 auto;
  max-width: 70rem;
  background-color: var(--color-gray-light-2);
  display: flex;
  box-shadow: 0px 0px 15px 4px #b3b3b3;
}

.intro {
  flex: 0 0 300px;
  background-color: var(--color-gray-light-1);
  box-shadow: 5px 0px 15px 0px #b3b3b3;
  z-index: 5;
}

.profile {
  position: relative;
  background-color: var(--profile-theme);
  padding: 2rem 1rem;
  margin-bottom: 50px;
  text-align: center;
}

.bio .name {
  font-size: 1.5rem;
  text-align: center;
  color: var(--color-gray-light-1);
  margin: 0;
  margin-top: 1rem;

}

.bio .profession {
  font-size: 1rem;
  text-align: center;
  color: var(--color-gray-light-1);
  margin: 0;
  margin-bottom: 1rem;
}

.intro-section {
  padding: 0 1rem;
  color: var(--color-gray-dark-1);
}

.intro-section .title {
  font-size: 1rem;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.about .paragraph {
  text-align: justify;
}

.info-section {
  margin: 1rem 0;
}

.info-section span {
  position: relative;
}

.info-section i {
  color: var(--profile-theme);
  width: 20px;
  height: 20px;
}

.link span::after {
  position: absolute;
  content: '';
  left: 50%;
  bottom: -3px;
  width: 0;
  height: 2px;
  background-color: var(--profile-theme);
  transform: translate(-50%, 0);
}

.detail {
  flex: 1 0 0;
  background-color: white;
  padding: 2rem;
}

.detail-section:not(:last-of-type) {
  padding-bottom: 1rem;
}

.detail-title {
  display: flex;
  align-items: center;
}

.detail-section>.detail-content {
  padding: 1.5rem;
  padding-left: 2rem;
}

.title-icon+span {
  font-size: 1.5rem;
}

.title-icon {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 1rem;
  margin-right: 1rem;
  width: 2.5rem;
  height: 2.5rem;
  background-color: var(--profile-theme);
  border-radius: 50%;
}

.title-icon i {
  color: white;
  line-height: 1rem;
  font-size: 1rem;
  text-align: center;
}

.timeline-block {
  position: relative;
  padding-left: 30px;
}

.timeline-block:not(:last-of-type) {
  margin-bottom: 1rem;
}

.timeline-block h1 {
  font-size: 1rem;
  margin: 5px 0;
}

.timeline-block p {
  font-size: 0.8rem;
  margin: 5px 0;
}

.timeline-block time {
  font-size: 0.8rem;
  color: var(--color-gray-dark-2);
}

.timeline-block::before {
  position: absolute;
  content: '';
  width: 15px;
  height: 15px;
  background-color: white;
  border: 3px solid var(--timeline-circle-theme);
  border-radius: 50%;
  left: -10px;
  top: -5px;
}

.timeline-block::after {
  position: absolute;
  content: '';
  width: 3px;
  height: 100%;
  background-color: var(--timeline-circle-theme);
  left: -1px;
  top: 13px;
}

.timeline-block:last-child::after {
  content: none;
}

.job-title {
  font-size: 0.8rem;
  color: var(--color-gray-dark-1);
  font-style: italic;
  margin-left: 10px;
}

.detail-subtext {
  margin-top: 4px;
  margin-left: 10px;
  font-size: 0.9em;
  color: #555;
}

a {
  color: var(--color-tiffany);
  text-decoration: none;
}

.outer-frame {
  border: 1px solid var(--color-gray-dark-3);
  border-radius: 5px;
}

.favor-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 1rem;
  padding: 0;
  margin: 0;
  list-style: none;
}

.favor-list>li {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: var(--profile-theme);
  padding: 1rem;
  border: 1px solid var(--color-gray-dark-3);
  border-radius: 5px;
  background-color: var(--color-gray-light-1);
  flex: 1 1 calc(33.333% - 1rem);
  box-sizing: border-box;
}

.favor-list>li>i {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 40px;
  width: 50px;
  height: 50px;
}

.favor-list>li>span {
  letter-spacing: 1px;
}

.favor-list>li>a {
  letter-spacing: 1px;
  font-weight: bold;
  margin-top: 0.5rem;
}

.favor-list>li>.description {
  color: black;
  font-size: 0.9rem;
  margin-top: 0.25rem;
  text-align: center;
}

.chip {
  display: inline-block;
  padding: 10px 15px;
  margin: 5px;
  background-color: #f1f1f1;
  border-radius: 25px;
  font-size: 16px;
  color: #333;
  font-weight: bold;
}

.chip span {
  color: green;
  margin-right: 10px;
}

@media (max-width: 1024px) {
  .wrapper {
    flex-direction: column;
  }

  .intro,
  .detail {
    flex: 0 0 100%;
    box-shadow: none;
  }

  .intro-section {
    padding: 0 2rem;
  }

  .profile {
    margin-bottom: 1rem;
  }

  .profile::after {
    display: none;
  }
}

@media (max-width: 500px) {
  body {
    padding: 0px;
  }
}
