/*! HTML5 Boilerplate v5.0 | MIT License | http://h5bp.com/
Author: Salvatore Rizzello - xper.eu
Author URI: http://xper.eu
Version: 1.0

Copyright (C) 2019 Salvatore Rizzello

CSS Rules: Sorted alphabetically for better organization.
*/

@font-face {
	font-family: 'moderat';
	src:url('../font/Moderat-Regular.eot');
	src:url('../font/Moderat-Regular.eot?#iefix') format('embedded-opentype'),
		url('../font/Moderat-Regular.woff2') format('woff2'),
		url('../font/Moderat-Regular.woff') format('woff'),
		url('../font/Moderat-Regular.ttf') format('truetype'),
		url('../font/Moderat-Regular.svg') format('svg');
	font-weight: 400;
	font-style: normal;
}

@font-face {
	font-family: 'moderat-bold';
		src:url('../font/Moderat-Bold.eot');
		src:url('../font/Moderat-Bold.eot?#iefix') format('embedded-opentype'),
			url('../font/Moderat-Bold.woff2') format('woff2'),
			url('../font/Moderat-Bold.woff') format('woff'),
			url('../font/Moderat-Bold.ttf') format('truetype'),
			url('../font/Moderat-Bold.svg') format('svg');
	font-weight: 600;
	font-style: bold;
}



html {
	color: #222;
	font-family: 'moderat', sans-serif;
	font-size: 14px;
	font-weight: normal;
	line-height: 1.4;
	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	position:relative;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

strong {font-family: 'moderat-bold'; font-weight:normal; }
h2 {font-family: 'moderat'; font-weight:normal; }
* {
    box-sizing: border-box;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

body { position:relative; text-align:center; padding:0; margin:0; background-color: #fcfcfb; }
p { margin:0 0 0.5em; }
a { color:#222; }
.visually-hidden {
    position: absolute !important;
    clip: rect(1px,1px,1px,1px);
    overflow: hidden;
    height: 1px;
    width: 1px;
    word-wrap: normal;
}

/*Building the Layout*/
.is-fixed { position: fixed; z-index: 5; }
.is-fixed--top { top: 0; left: 0; right: 0; }

.header {
    width: 100%;
    height: 0;
		padding-top: 15px;
		padding-left: 20px;
    padding-right: 20px;
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
    justify-content: space-between;
}
.header__branding {
    float: left;
	font-size:2em;
}
.fixed-navigation {
    padding: 0;
    margin: 0;
}
.header__social {
    /* display: none; */
    margin-top: 1rem;
    float: right;
    z-index: 7;
}
.social {
    display: inline-block;
    vertical-align: top;
}
.social:not(:first-child) {
    padding-right: 15px;
}
.social__link {
    text-decoration: none;
}
.social--facebook .social__svg {
    width: 13px;
    height: 13px;
}
/*#brand { position:absolute; left:45px; top:60px; }
#brand a { text-decoration:none; }
#brand h1 { margin-top:0; }
*/
#brand a { text-decoration:none; }


.fixed-navigation__item {
    position: relative;
    list-style: none;
    padding: 0;
    margin: 0;
    display: inline-block;
    line-height: 0;
}
.title-small-caps, .fixed-navigation__link {
    font-size: 0.6875rem;
    line-height: 1.0625rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #000;
    text-decoration: none;
    transition: -webkit-transform .2s ease-out;
    transition: transform .2s ease-out;
    transition: transform .2s ease-out,-webkit-transform .2s ease-out;
}
.fixed-navigation__link {
    display: inline-block;
    padding-top: 9px;
    padding-bottom: 9px;
}
.fixed-navigation__item:not(:first-child) {
    margin-right: 10px;
}

/*
.fixed-navigation li a { display: inline-block; padding-top: 9px; padding-bottom: 9px; font-size:0.9em; text-transform:uppercase; text-decoration:none; letter-spacing:0.1em; }
*/
#home-intro { position:relative; width:100%; height:100%; overflow:hidden;display: none; }
#home-intro h1 { display:block; position:absolute; width:100%; text-align:center; margin:-50px auto 0; top:40%; opacity:0;
-webkit-transition: all 1200ms;
-moz-transition: all 1200ms;
-ms-transition: all 1200ms;
-o-transition: all 1200ms;
transition: all 1200ms; }
#home-intro h1.visible { margin-top:-100px; opacity:1; }

#home-intro .contacts { display:block; position:fixed; width:100%; margin:-50px auto 0; bottom:30px; opacity:0;
-webkit-transition: all 1200ms;
-moz-transition: all 1200ms;
-ms-transition: all 12000ms;
-o-transition: all 1200ms;
transition: all 1200ms; }
#home-intro .contacts.visible { bottom:80px; opacity:1; }

#home-intro .down-icon {
    position: absolute;
    bottom: 0;
    left:0;
	width:100%;
	font-size: 18px;
    padding: 0 0 40px;
    text-align: center;
    color: rgba(255,255,255,0.90);
}
#down-icon {
    color: #cac8c8;
    color: rgba(255,255,255,0.90);
	text-decoration:none;
}
#down-icon:hover {
    color: #FFF;
    color: rgba(255,255,255,1.0);
}

.fa {
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}


.home-quote {  width: calc(100% - 2rem ); margin:50px  auto; font-size:1.5em; text-align: left; margin-top: 120px; }

/* .home-quote { display:block; position:absolute; top:30%; width:70%; left:15%; margin-top:50px; opacity:0; font-size:2em; }
.home-quote.visibile { display:block; opacity:1; margin-top:0;
-webkit-transition: all 1200ms ease;
-moz-transition: all 1200ms ease;
-ms-transition: all 1200ms ease;
-o-transition: all 1200ms ease;
transition: all 1200ms ease; } */


.titoletto { display:inline-block; position:relative; width:auto; font-size: 0.9rem; text-transform: uppercase; padding-bottom: 2px; margin:0 auto 10px;
letter-spacing:0.03em; color: #989891; text-decoration:underline; text-underline-position:under; }
.titoletto:after { position:absolute; bottom:0; left:25%; width:50%; height:2px; background:#989891; }
.infos { font-size: 0.6em; text-transform: uppercase; margin-top: 7px; letter-spacing: 0.02em; }


.page { position:relative; margin:120px 20px 40px;}


.about { text-align:left; }
.about h3 { display:inline-block; position:relative; width:auto; font-size: 0.9rem; text-transform: uppercase; padding-bottom: 2px; margin:1em 0 0;
letter-spacing:0.03em; color: #989891; text-decoration:underline; text-underline-position:under; }
.titoletto:after { position:absolute; bottom:0; left:25%; width:50%; height:2px; background:#989891; }
.about p { font-size:1.5em; line-height:1.2em; margin:0.05em 0 0.8em; }

.archive { text-align:left; }

.research { text-align:left; }
.research-entry { position:relative; padding:50px 0; border-bottom:1px solid #333; overflow:hidden; align-items: stretch; align-content: stretch;display: flex; }
.research-entry  .titling { position:relative; float:left; width:30%; padding-left:40px; }
.research-entry  .year { display:block; position:absolute; left:0; top:0.22em; margin-top:0; color:#bbafaf; }
.research-entry  h2.title { margin-top:0; margin-bottom:0.5em; }
.research-entry  .description { font-size:1.1em; }
.research-entry  .imaging { position:relative; float:left; width:65%; padding-left:100px; display: flex; align-items: flex-end; }
.research-entry  .imaging img { vertical-align: baseline; margin: 0 0.4em; }
span.tag {
    color: #beb3b3;
    text-transform: uppercase;
    font-size: 0.75em;
    border-bottom: 1px solid #ccc;
    padding: 0px 0px 2px;
    margin-right: 8px;
    font-family: "moderat-bold";
    letter-spacing: 0.05em;
}

.selection { text-align:left; }
.work { position:relative; padding:25px 0 25px 40px; border-bottom:1px solid #333; overflow:hidden; align-items: stretch; align-content: stretch;display: flex; }
.work h2 { font-size:2em; line-height:1.2em; margin:0.65em 0 0.8em; }


/* ==========================================================================
   Media Queries
   ========================================================================== */
@media (min-width: 768px) {
	.header {
	    padding-left: 40px;
	    padding-right: 40px;
        padding-top: 30px;
	}
	.page { position:relative; margin:120px 40px 80px; }

    .brand { position: relative; z-index: 7;}
	.header__social {
        margin-top: 0;
	    display: inline-block;
	    float: right;
	}
	.title-small-caps, .fixed-navigation__link {
	    font-size: 0.9rem;
	}
	.fixed-navigation__item:not(:first-child) {
	    margin-right: 22px;
	}
	.fixed-navigation__item--bottom { display:none; }
	#home-intro { display: flex; flex-direction: column; justify-content: center; align-items: center; }
	.home-quote { position: absolute; top: 30%; font-size:2em; max-width: 26em; text-align: center; margin-top: auto; }
}

@media (min-width: 992px) {
.fixed-navigation {
    position: fixed;
    z-index: 6;
    height: 0;
    width: 100%;
    top: 0;
    left: 0;
    height: 100vh;
}
.fixed-navigation__link {
    position: absolute;
	top: 50%;
    /*-webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);*/
    list-style: none;
    padding: 0;
    margin: 0;
	width:80px; text-align:center;
    margin-top: -10px;
}
.fixed-navigation__item {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
    list-style: none;
    padding: 0;
    margin: 0;
    margin-top:-10px;
}
.fixed-navigation__item--left { left: 0; -webkit-transform: rotate(-90deg); -ms-transform: rotate(-90deg); transform: rotate(-90deg); transform-origin: 40px 7px; margin-left: }
.fixed-navigation__item--right { right: 60px; -webkit-transform: rotate(90deg); -ms-transform: rotate(90deg); transform: rotate(90deg); transform-origin: 40px 7px; }
.fixed-navigation__item--bottom { display:block; position:fixed; top: auto; bottom: 30px; left:50%; margin-left:-40px; }

.fixed-navigation__link:after { display:block; content:""; position:absolute; height:1px; width:0%; left:50%; bottom:-3px; background:#333;
-webkit-transition: all 200ms ease;
-moz-transition: all 200ms ease;
-ms-transition: all 200ms ease;
-o-transition: all 200ms ease;
transition: all 200ms ease; }
.fixed-navigation__link:hover:after { width:60%; left:20%;}

.about { max-width:66%; }
.about h3 { margin:2em 0 0; }
.about p { font-size:1.66em; line-height:1.3em; }

}
/* Portrait and Landscape */
@media only screen
  and (min-device-width: 375px)
  and (max-device-width: 667px)
  and (-webkit-min-device-pixel-ratio: 2) {
#home-intro img,
#home-intro img.visible { position:relative; top:auto; margin-top:0; }
#home-intro .contacts,
#home-intro .contacts.visible { position:relative; top:auto; bottom:0; margin-top:0; }

}

@media only screen
	and (max-width: 414px) {
#home-intro img { top:35%; }
#home-intro .contacts { bottom:0;}
#home-intro .contacts.visible { bottom:30px; opacity:1; }

}

@media only screen and (min-width: 35em) {

}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {

}

/* ==========================================================================
   Helper classes
   ========================================================================== */

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   Print styles
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
