@import url('https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css');
@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,300,600,700,800);
@import url(https://fonts.googleapis.com/icon?family=Material+Icons);
@import url(https://fonts.googleapis.com/css?family=Raleway:500,700,400);

*::before, *::after { box-sizing: border-box; }
*::before, *::after { box-sizing: border-box; }
body *, body *:after, body *:before { box-sizing: border-box; transition: all 0.3s linear 0s; }
body { background: #031634 url("../images/bg-james3.jpg") no-repeat fixed center top / cover; font-family: "Century Gothic",sans-serif; padding: 10px;
	position: relative !important; color: #333; font-size: 14px; line-height: 1.42857; margin: 0 auto; }
p { color: #333333; }
html h2, html h3, html h4, body h2, body h3, body h4 { font-weight: 600; }
html h4, body h4 { font-size: 31px; line-height: 110%; margin: 1.14rem 0 0.912rem; color:#000; }
html h1, html h2, html h3, html h4, html h5, html h6, html span, body h1, body h2, body h3, body h4, body h5, body h6, body span {
	font-family: "Century Gothic",sans-serif; }
html p, html a, html li, body p, body a, body li { font-weight: 400; }
html h6, body h6 { font-size: 1.4em; }
html .btn, body .btn { padding-top: 8px; }
.side-menu { background: #fff none repeat scroll 0 0; color: #fafafa; height: 100%; left: -250px;  opacity: 0.9; padding: 60px 22px; position: fixed;
    top: 0; width: 250px; z-index: 888; }
.side-menu-hover{ width: 100px; z-index: 1; height: 100%; left: 0; position: fixed; top: 0; }
#side-menu {box-shadow: none;}
#side-menu-close { color: #000; cursor: pointer; font-size: 18px; opacity: 0.5; position: absolute; right: 8px; top: 3px; 
	transition: all 0.2s ease-in-out 0s; }
#side-menu-close:hover{ opacity: 1; }
.side-menu-name { border: 2px solid #000; color: #000; font-size: 18px; font-weight: 200; opacity: 0.9; padding: 8px 2px; text-align: center;
    text-transform: uppercase; margin-bottom: 30px}
.side-menu-job { color: #d8d8d8; font-size: 12px; font-weight: 200; /*margin-bottom: 40px;*/ margin-top: 5px; text-align: center; }
.side-menu-nav { list-style: outside none none; margin-bottom: 45px; width: 100%; border-bottom: 1px solid #616161; }
.nav > li { display: block; position: relative; }
.side-menu-nav li { background: rgba(255, 255, 255, 0) none repeat scroll 0 0 !important; border-bottom: 1px solid #616161; display: block; font-size: 14px;
    width: 100%; }
.side-menu a, .side-menu p { color: #000; }
.nav > li > a { display: block; padding: 10px 15px; position: relative; }
.side-menu-nav li a { background: rgba(255, 255, 255, 0) none repeat scroll 0 0 !important; color: #000; display: block; font-weight: 200; height: auto;
    line-height: 1.5em; padding: 8px 0 !important; text-transform: uppercase; transition: all 0.3s ease-in-out 0s; width: 100%; letter-spacing: -0.5px; }
.nav > li > a { padding: 0; }
.side-menu-nav li.active a { background: rgba(255, 255, 255, 0) none repeat scroll 0 0 !important; color: #fff; font-weight: 300; padding-left: 5px !important;
    text-decoration: none; }
.side-menu-nav li.active a { color: #000; }
.side-menu-nav li a:hover{ color: #000; font-weight: 300; padding-left: 5px !important; text-decoration: none; }
#content-body { margin-bottom: 10px; margin-top: 80px; position: relative; }
.resume-container{ background-color: rgba(187, 224, 209, 0.9); border-radius: 3px; }
#v-card { background: #2c4b24 none repeat scroll 0 0; height: 400px; margin: 0 3px 0 0; overflow: hidden; position: relative; width: 100%;
    z-index: 1; border-radius: 2px; }
.card{ box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12); }
.card { background-color: #fff; border-radius: 2px; margin: 50px 0 0; position: relative; }
.right { float: right !important; }
#v-card #profile { position: absolute; right: 0; z-index: 1; }
#v-card #profile img { height: auto; width: 400px; }
#v-card #profile .slant { border-color: transparent transparent transparent #2c4b24; border-style: solid; border-width: 400px 0 0 100px; height: 100%; 
	position: absolute; top: 0; width: 100%; }
#content-body > .row > .col-md-12 > .col-md-10{ padding-right: 0; padding-left: 0; }
.card .card-content { border-radius: 0 0 2px 2px; padding: 40px; }
#v-card .info-headings { max-width: 514px; }
#v-card .info-headings h4 { color: #fff; display: block; font-weight: 900; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.29); width: 100%; }
#v-card .info-headings h6 { color: #f5f5f5; display: block; font-size: 1.2em; font-weight: 500; margin-bottom: 30px; margin-top: -5px;
	text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.29); width: 100%; }
#v-card .infos { margin-top: 99px; max-width: 515px; }
#v-card .infos .profile-list .title { color: #f5f5f5; display: block; float: left; line-height: 26px; }
#v-card .infos .profile-list .content { color: #f5f5f5; display: block; font-size: 13px; font-weight: 500; line-height: 20px; margin-left: 30px; }
#v-card .infos .profile-list .title i { font-size: 23px; }
#v-card .links { height: 100%; margin-left: -12px; margin-top: 12px; max-width: 500px; }
#v-card .links .social { margin-bottom: 4px; margin-left: 12px; }
#v-card .links .social i { font-size: 15px; padding-bottom: 15px; vertical-align: middle; }
.card .card-content { border-radius: 0 0 2px 2px; padding: 40px; }
.card .card-content p { color: inherit; margin: 0; text-align: center; }
.card .card-action { border-top: 1px solid rgba(160, 160, 160, 0.2); padding: 20px; }
.about-btn { animation-delay: 1s; height: auto; margin-left: auto; margin-right: auto; text-align: center;}
.about-btn .btn { background: #2c4b24 none repeat scroll 0 0; border-radius: 2px; color: #ffffff; margin: 7px; width: 180px; }
.section { background-color: transparent; padding-bottom: 30px;  padding-top: 15px; position: relative; }
#src1 { margin-bottom: 20px; }
.section .section-title { margin-bottom: 30px; }
.section .section-title .title-icon { margin-right: 20px; }
#timeline-education { position: relative; }
#timeline-education::before, #timeline-profesional::before, #timeline-nodocente::before { background: #e79821 none repeat scroll 0 0; bottom: 23px; content: ""; height: 99.5%; left: 50%; opacity: 0.3;
	position: absolute; top: 0; width: 4px; }
#timeline-profesional::before {top: 105px; height: 60.5%}
#timeline-nodocente::before {top: 100px; height: 45.5%}
#timeline-education::before { background: #e79821 none repeat scroll 0 0; height: 75%; left: 50%; margin-left: -2px; opacity: 0.4; }
.timeline-block::after { clear: both; content: ""; display: table; }
.timeline-block:first-child{ margin-top: 0; }
.timeline-block{ margin-top: 25px; position: relative; }
.timeline-block .timeline-dot { background: #e79821 none repeat scroll 0 0; border-radius: 100%; color: #fff; position: absolute; right: 2%;
	text-align: center; box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12); }
.timeline-block .timeline-dot { height: 50px; left: 50%; margin-left: -24px; top: 0; width: 50px; z-index: 2; }
.timeline-block .timeline-dot h6 { font-size: 30px; font-weight: bold; margin-top: 8px; padding: 0; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.29); }
.timeline-block .timeline-content::before { background: #e79821 none repeat scroll 0 0; content: ""; height: 4px; left: 100%; opacity: 0.4;
    position: absolute; top: 26px; width: 58px; z-index: -2; }
.timeline-block:nth-child(2n) .timeline-content::before { left: auto; right: 100%; }
.timeline-block:nth-child(2n) .timeline-content{ float: right; }
.timeline-block .timeline-content { background: #fff none repeat scroll 0 0; border-left: 5px solid #2c4b24; margin-bottom: 5px; margin-right: 0;
    position: relative; z-index: 1; }
.timeline-block .card { margin: 0; }
.timeline-block .timeline-content { width: 44%; }
.card .card-content { border-radius: 0 0 2px 2px; padding: 50px; }
.timeline-block .card-content { padding: 20px; }
.timeline-block .timeline-content .timeline-title { font-weight: normal; max-width: 84%; }
.timeline-block .timeline-content .timeline-title { max-width: 100%; }
.timeline-block .timeline-content .timeline-info h6 { line-height: 12px; }
.timeline-block .timeline-content .timeline-info h6 small {
	color: inherit;
	font-size: 0.8em;
}
.card .card-content p { color: #000; font-size:15px; margin: 0; text-align: center; font-family: "Century Gothic", sans-serif; }
.timeline-block .card-content p {
	margin-top: 13px;
	text-align: left;
	font-size: 14px;
}
.container-inner{ width: 100%; padding-right: 15px; padding-left: 15px; }
.timeline-block .date { background: #2c4b24 none repeat scroll 0 0; color: #fff; display: inline-block; float: right; font-weight: bold; right: 33%;
    padding: 8px 16px; position: relative; text-transform: uppercase; top: 6px; }
.timeline-block:nth-child(2n) .date{ float: left; right: auto; left: 33%; }
.timeline-block .date::after, .timeline-block .date::before { content: ""; position: absolute; transform: rotate(45deg); }
.timeline-block .date::before { background: #2c4b24 none repeat scroll 0 0; height: 12px; top: 13px; width: 12px; z-index: 1; left: -6px; }
.timeline-block:nth-child(2n) .date::before{ left: auto; right: -6px; }
.skills-container{ background-color: #2c4b24; padding: 40px; width: 100%; display: inline-block; border-left: 5px solid #fff; 
	border-right: 5px solid #fff; box-shadow: 0 0 10px -3px #2e3d42; }
.skill-item{ float: left; padding-right: 15px; margin-bottom: 20px; width: 50%; }
.skill-item:nth-child(2n){ padding-left: 15px;  }
.text-skill-item{ display: inline-block; width: 100%; }
.percent-skill-item{ margin-left: 0; margin-right: 0; width: 2.8em; display: inline-block; }
.percent-skill-item-inner{ color: #fff; font-size: 1.3em; font-weight: bold; }
.cap-skill-item{ display: inline-block; }
.cap-skill-item > h3{ text-transform: uppercase; color: #eee; font-size: 15px; }
.skill-progress-bg{ height: 5px; position: relative; margin-top: 0.5em; background-color: rgba(82,152,221,1); }
.skill-progress-inner{ height: 100%; background: #fff; transition: width 1.4s ease-in-out 0.5s; width: 0; }
.extra-container, .carta-container, .ref-container{ background-color: #fff; padding: 40px; width: 100%; display: inline-block; border-left: 5px solid #2c4b24; 
	border-right: 5px solid #2c4b24; box-shadow: 0 0 10px -3px #2e3d42; }
.extra-container-inner, .carta-container-inner{ border-left-style: solid; border-left-width: 2px; position: relative; width: 100%; border-color: #bbb; padding-left: 25px; }
.extra-item{ position: relative; display: inline-block; margin-bottom: 30px; width: 100%; }
.extra-item:last-child{ margin-bottom: 0; }
.extra-item-point{ border-radius: 50%; height: 10px; left: -31px; position: absolute; top: 5px; width: 10px; 
	background: #e79821 none repeat scroll 0 0; box-shadow: 0 0 0 6px #fff; }
.extra-item-content{ padding: 0; }
.extra-item-date, .extra-item-title{
	font-size: 14px;
	color: #000;
	font-weight: 500;
	margin: 0 0 0.3em;
}
.extra-item-heading{
	color: #1e1e1e;
	font-size: 14px;
	font-weight: 600;
	margin: 0.2em 0;
	text-transform: uppercase;
}
.interest-container{ background: #fff none repeat scroll 0 0; box-shadow: 0 0 10px -3px #2e3d42; display: inline-block; margin-bottom: 0; width: 100%; }
.interest-container .card-content { border-bottom: 1px solid rgba(160, 160, 160, 0.2); border-radius: 0 0 2px 2px; padding: 40px; }
.interest-container .card-content > p{ font-weight: 300; color:#000000; font-size:16px; text-align: center; }
.box-container{ width: 100%; margin: 0 auto; }
.box-container .box { height: 105px; width: 16.6667%; float: left; }
.box-container .box .interest-icon { background: #2c4b24 none repeat scroll 0 0; color: #fff; display: block; height: 105px; text-align: center; }
.box-container .box .interest-icon.white{ background: #fff; color: #2c4b24;  }
.box-container .box .interest-icon i { font-size: 2.2em; margin-top: 29px; }
.box-container .box .interest-icon span { display: block; }
.portfolio-container{ background: #fff none repeat scroll 0 0; box-shadow: 0 0 10px -3px #2e3d42; display: inline-block; margin-bottom: 30px;
	width: 100%; padding: 30px 10px; border-left: 5px solid #2c4b24; border-right: 5px solid #2c4b24; }
.portfolio-item{ width: 33.3333%; float: left; margin: 10px 0; padding-left: 15px; padding-right: 15px; position: relative; }
.work-img { overflow: hidden; }
.work-img img { width: 100%; padding: 8px; background-color: #fff; border: 1px solid #ddd; display: inline-block; height: auto; line-height: 1.42857;
    max-width: 100%; max-height: 270px; min-height: 242px; }
.rex-featured-description{ background-color: rgba(77, 191, 217, 0.9); bottom: 20%; cursor: pointer; left: 20%; margin-right: 10px; opacity: 0;
    position: absolute; right: 20%; text-align: center; top: 20%; }
.rex-portfolios-title { left: 50%; min-width: 140px; position: absolute; top: 50%; }
.rex-portfolios-title h6 { line-height: 30px; color: #fff; font-size: 22px; font-weight: 400; margin: 0; }
.rex-featured-description span { color: #4dbfd9; padding-bottom: 10px; }
.rex-portfolios-title span { color: #fff; font-size: 13px; }
.portfolio-modal{ display: none; }
.portfolio-item:hover .animated .rex-portfolios-title { -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
.portfolio-item:hover .work-img { overflow: hidden; }
.portfolio-item:hover .work-img img { transform: scale(1.2); }
.portfolio-item:hover .animated { top: 0 !important; left: 15px !important; right: 5px !important; bottom: 0 !important; opacity: 1 !important; }
.portfolio-item:hover .animated .rex-portfolios-title h6 { -webkit-transition: 0.5s; transition: 0.5s; }
.rex-overlay { background: rgba(0, 0, 0, 0.8) none repeat scroll 0 0; height: 100%; left: 0; opacity: 0; position: fixed;
    top: 0 !important; transition: all 0.3s ease 0s; display: none; width: 100%; z-index: 1000; }
.rex-overlay.active { opacity: 1; display: inherit; }
.rex-modal { display: none; background-color: #fff; height: auto; left: 50%; max-width: 960px; position: fixed; top: 50%; width: 90%; z-index: 2000;
	transform: translateX(-50%) translateY(-50%); }
.rex-modal.active{ display: inherit; }
.rex-modal .rex-content { padding: 0; background: #fff none repeat scroll 0 0; display: flex; position: relative; }
.rex-modal img { width: 50%; float: left; }
.rex-modal figcaption { background-color: #fff; padding: 40px 30px; width: 50%; float: left; margin: 0 auto; }
.rex-modal .rex-portfolios-title { position: static; text-align: left; }
.rex-modal .rex-portfolios-title h6 { color: #404040; font-size: 20px; font-weight: 600; }
.rex-modal .rex-portfolios-title span { color: #4dbfd9; font-weight: 500; font-size: 15px; }
.rex-modal figcaption p { line-height: 1.5em; margin: 0; text-align: left; font-size: 14px; margin: 10px 0; }
.rex-modal button.rex-close-modal { background-color: rgba(0, 0, 0, 0.1); border: medium none; color: #fff; outline: medium none; padding: 10px;
    position: absolute; right: 0; top: 0; cursor:pointer; }
.rex-modal button.rex-close-modal:hover{ background: rgba(0,0,0,0.2); color: #404040; }
.rex-modal .portfolio-modal{ display: inherit; }
.contact-container{ background: #fff none repeat scroll 0 0; box-shadow: 0 0 10px -3px #2e3d42; display: inline-block; margin-bottom: 30px;
	width: 100%; padding: 30px; border-left: 5px solid #2c4b24; border-right: 5px solid #2c4b24; }
.map { border-color: #d6d6d6; border-style: solid; border-width: 1px; margin: 0 auto; width: 100%; position: relative; }
.map img { width: 100%; }
.address { background: #fff url("../images/contact-bar-bg.png") repeat-y scroll 0 0; border-color: #d6d6d6; border-style: solid; border-width: 0 1px 1px 0;
    border-color: transparent; box-shadow: 1px 1px 2px 2px rgba(238, 238, 238, 0.8); left: 65px; position: absolute; top: 55px; padding: 30px; }
.address::before { background: rgba(0, 0, 0, 0) url("../images/contact-bar-bg2.png") repeat scroll 0 0; content: ""; height: 55px; position: absolute;
    right: 15px; top: 25px; width: 133px; }
.list-group { margin-bottom: 20px; padding-left: 0; }
.address ul { margin-bottom: 0; }
.list-group-item { background-color: #fff; border: 1px solid #ddd; display: block; margin-bottom: -1px; padding: 10px 15px; position: relative; }
.address ul li { background: transparent none repeat scroll 0 0; border: 0 none; border-radius: 0; margin-bottom: 15px; padding: 0; }
.list-group-item:first-child { border-top-left-radius: 0; border-top-right-radius: 0; }
.address h6, .address p { margin: 0; font-size: 1em; font-weight: 600; }
.address p{ font-weight: 400; }
.address a{ color: inherit; }
.address a:hover{ text-decoration: none; color: #2c4b24; }
.free-contact{ width: 100%; display: inline-block; }
.free-contact .title { margin-bottom: 30px; margin-top: 30px; font-size: 2em; font-weight: 400; }
.form-control { background-color: #fff; background-image: none;  border-radius: 0; box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset; min-height: 30px;
    color: #555555; display: block; font-size: 13px !important; line-height: 1.42857; padding: 6px 12px !important; border: 1px solid #ccc !important;
    transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s; width: 100%; height: 32px; }
.form-control:focus{ border-color: #2c4b24 !important; box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(25, 118, 210, 0.6) !important; outline: 0 none; }
.btn-custom{ text-align: right; }
.btn-contact-custom{ border: 1px solid #404040; color: #404040; padding: 10px 30px; border-radius: 4px; margin: 0 10px; }
.btn-contact-custom.a{ background: #fff; }
.btn-contact-custom.b, .btn-contact-custom.a:hover{ background: #afb745; color: #fff; border: 0 none; border: 1px solid #2c4b24; }
.btn-contact-custom.b:hover{ box-shadow: 0 0 10px -3px #2e3d42; }
.side-menu-responsive{ background-color: rgba(0,0,0,0.3); display: inline-block; margin: 0 auto; text-align: center; padding: 5px 10px;
    border-radius: 4px; border: 2px solid #fff; position: fixed; z-index: 2; top: 20px; left: 20px; display: none; cursor: pointer; }
.side-menu-responsive i:before{ color: #2c4b24; font-weight: 800; font-size: 1.1em; }
.side-menu-hover .btn { -moz-user-select: none; background-image: none; border: 1px solid transparent; border-radius: 4px; cursor: pointer; display: inline-block;
    font-size: 14px; font-weight: 400; line-height: 1.42857; margin-bottom: 0; padding: 6px 12px; text-align: center; vertical-align: middle;
    white-space: nowrap; }
.side-menu-hover .btn-default { background-color: #fff; border-color: #ccc; color: #333; }
.side-menu-hover .btn { height: 30px; line-height: 30px; margin-right: 3px; padding-top: 0; transition: all 0.3s ease-in-out 0s; }
.side-menu-hover .btn-default { background: #3b658a none repeat scroll 0 0; border: medium none #3b658a; color: #fafafa; }
.side-menu-hover .side-menu-button { background: #333 none repeat scroll 0 0; border-radius: 0; display: block; font-weight: 700; height: 60px; line-height: 60px;
    margin-top: 60px; opacity: 0.9; padding-left: 20px; padding-right: 20px; top: 80px; }
.side-menu-hover .side-menu-button { background: #fff none repeat scroll 0 0; opacity: 0.8; color:#000; }
.cover-title, .signature h4 { font-size: 16px; }
.ref-container { padding: 50px; position: relative; }
.ref-container h1{ font-size: 15px; line-height: 1.3em; margin: 0; padding: 0; font-style: italic; }
.ref-container h2.first.subtitle{ font-size: 17px; margin-bottom: 45px; margin-top: 5px; }
.picture-reference{ position: absolute; top: -75px; right: -75px; box-shadow: 3px 3px 5px 0 rgba(0, 0, 0, 0.75); border-radius: 50%; overflow: hidden; }
.picture-reference > img { height: 150px; }

/* Alexsys @bksoft */
#timeline-education .timeline-block .date {right: 35%}
#timeline-education .timeline-block:nth-child(2n) .date { left: 36% }
#timeline-profesional .timeline-block .date, #timeline-nodocente .timeline-block .date{right: 27%}
#timeline-profesional .timeline-block:nth-child(2n) .date, #timeline-nodocente .timeline-block:nth-child(2n) .date{ left: 27% }
.side-menu-nav li {border-bottom: 2px solid #CCC}
.side-menu-nav {border-bottom:none}
.side-menu {max-height: 600px}
.side-menu-job {font-size: 11px; text-transform: initial}


@media screen and (max-width: 1300px) {
    .container{ max-width: 1024px; }
    .address{ top: 20px; width: 50%; }
    .form-control{ min-height: 22px; height: auto !important; }
    html h4, body h4{ font-size: 2em; }
}

@media screen and (max-width: 1160px) {
    .container{ max-width: 900px; }
    .timeline-block .date{ right: 30%; }
    .timeline-block:nth-child(2n) .date{ left: 30%; }
    .portfolio-item{ width: 50%; }
    .address { top: 5px; width: 55%; }
    .contact-container .form-control{ box-sizing: border-box !important; }
    .btn-custom { margin-top: 20px; }
}

@media screen and (max-width: 1100px) {
    .container{ max-width: 98%; }
    .resume-container{ margin: 0 auto; width: 100%; }
    .side-menu-responsive{ display: inherit; top: 10px; left: 10px; }
    .side-menu-hover{ display: none; }
    .side-menu{ left: -250px !important;  }
    .side-menu.responsive{ left: 0 !important; }
    .picture-reference{ top: -25px; right: -25px; }
}

@media screen and (max-width: 760px) {
    .address{ padding: 10px; top: 20px; left: 30px; }
    #v-card #profile { position: absolute; right: 0; z-index: 1; left: 0; width: 40%; border-radius: 50%; overflow: hidden; margin: 0 auto;
        margin-top: -200px; }
    #v-card{ overflow: visible; margin-top: 150px; }
    #src1 .card .card-content{ width: 100%; text-align: center; padding-top: 80px; }
    #v-card #profile .slant{ display: none; }
    #v-card .info-headings, #v-card .infos, #v-card .links { max-width: 100%; }
    #v-card .infos li{ margin: 0 auto; width: 41%; }
    .timeline-block .timeline-content { width: 100%; }
    #timeline-education::before{ height: 90%; }
    .timeline-block .timeline-dot{ display: none; }
    .timeline-block .date, .timeline-block:nth-child(2n) .date{ float: right; left: auto; right: 20px; z-index: 10; top: 10px; position: absolute; }
    .timeline-block .date::before, .timeline-block .timeline-content::before{ display: none; }
    .address{ width: 90%; }
}

@media screen and (max-width: 640px) {
    #src1 .card .card-content{ padding-top: 40px; }
    #v-card .infos li{ width: 55%; }
    .skill-item, .skill-item:nth-child(2n){ width: 100%; padding-left: 0; padding-right: 0; }
    .box-container .box{ width: 33.33%; }
    .address{ top: 0; left: 0; right: 0; margin: 0 auto; position: relative; }
    .map img{ position: absolute; }
    .rex-modal { left: 0; max-height: 95%; max-width: 90%; overflow: hidden; right: 0; top: 5%; transform: none; width: 90%; margin: 0 auto; }
}

@media screen and (max-width: 560px) {
    #v-card .infos li{ width: 65%; }
    #v-card #profile{ margin-top: -180px; width: 45%; }
    .side-menu-job{ margin-bottom: 15px; }
}

@media screen and (max-width: 480px) {
    #v-card #profile{ width: 52%; }
    #v-card .infos li{ width: 75%; }
    html h4, body h4{ font-size: 1.5em; }
    .portfolio-item { width: 100%; }
    .timeline-block .card-content{ padding-top: 50px; }
    .side-menu-nav li a{ padding: 5px 0 !important; }
    .picture-reference > img { height: 80px; }
}
@media screen and (max-width: 400px) {
    #v-card #profile { width: 65%; } 
    #v-card .infos li { width: 100%; }
    .btn-contact-custom{ width: 100%; margin: 5px 0; }
    .skills-container, .extra-container, .interest-container .card-content, .contact-container, .ref-container, .carta-container{ padding: 40px 20px; }
    .box-container .box { width: 50%; }
    .portfolio-container{ padding: 30px 0; }
    .rex-modal figcaption{ padding: 35px 10px 15px; }
    .carta-container p, .ref-container p{ text-align: center; }
}

@media screen and (max-width: 320px) {
    .container { max-width: 100%; }
    #v-card #profile { width: 85%; } 
    #src1 .card .card-content{ padding: 50px 10px 10px; }
    #v-card .info-headings, #v-card .infos, #v-card .links{ margin: 0 auto; }
    #v-card .links .social { margin: 3px 2px; }
}
