fara-web/css/main.css

347 lines
5.9 KiB
CSS

@import url(spectre.css);
@import url(fonts.css);
:root {
--ochre: #ccac68;
--ochre-light : #f7f4ee;
--ochre-dark: rgba(116,102,77,1);
--light-dark: #333;
--dark: rgb(26, 21, 21);
--lilac: #c852ff;
--emerald: #067d08;
}
/** General utils **/
.of-hidden {
overflow: hidden;
}
.pl-lg {
padding-left: 1rem !important;
}
.pl-xl {
padding-left: 4rem !important;
}
.pr-lg {
padding-right: 2rem;
}
.mt-lg {
margin-top: 2rem;
}
.short-hr {
width: 3.5rem;
margin-left: 0;
margin-top: 3rem;
margin-bottom: 3rem;
}
.note {
font-size: 10pt;
}
.text-14pt {
font-size: 14pt;
}
/** Font classes **/
.arvo {
font-family: 'arvoregular'/*Fallback??*/;
}
.roboto {
font-family: 'roboto_condensedregular';
}
.roboto-reg {
font-family: 'roboto_regular';
}
.roboto-med {
font-family: 'roboto_medium';
}
.robot-slab-b {
font-family: 'roboto_slabbold';
}
.roboto-slab {
font-family: 'roboto_slabregular';
}
.roboto-slab-l {
font-family: 'roboto_slablight';
}
.opensans {
font-family: 'open_sansregular';
}
/****** Custom rules ******/
body {
height: 100%;
display: flex;
flex-direction: column;
scroll-behavior: smooth;
}
main {
flex: 1 0 auto;
width: 100%;
}
/* ---- Header ----- */
header {
background-size: cover;
background-position: center;
background-attachment: fixed;
background-repeat: no-repeat;
width: 100%;
color: #fff;
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
margin: 0;
padding: 0;
}
.main-header.home {
min-height: 930px;
}
.main-header.prog {
min-height: 60vh;
background-image: url('../img/progetto_header.jpg');
}
.main-header.prog::before {
background-color: rgba(33,33,33,1);
opacity: 0.5;
content: "";
display: block;
position: absolute;
bottom: calc(100% - 60vh);
left: 0;
right: 0;
top: 0;
}
.main-header.itin {
background: none;
min-height: 25vh;
}
.main-header.itin #nav {
color: var(--dark);
}
.main-header h1 {
font-size: 3rem;
}
.main-header.itin h1 {
font-size: 36pt;
}
.main-header h1::after {
max-width: 5rem;
margin: 10px auto 0 auto;
min-height: 0.4rem;
background-color: var(--ochre);
content: '';
display: block;
}
#title {
flex: none;
min-width: 50%;
z-index: 8;
}
#title button {
min-width: 80%;
color: #fff;
background-color: transparent;
border: 1px solid #fff;
border-radius: 4px;
padding: 3px 0;
font-size: 0.9rem;
cursor: pointer;
}
#title button:hover {
background-color: rgba(254, 254, 254, 0.25);
}
/* ---- Navbar ----- */
.side-nav {
width: 280px;
opacity: 1;
padding-left: 5px;
height: 100vh;
margin: 0;
left: 0;
position: absolute;
z-index: 11;
animation-name: slidein;
animation-duration: 1s;
transition: slidein 0.5s ease-in;
}
@keyframes slidein {
from {
width: 0px;
}
to {
width: 280px;
}
}
.side-nav a {
display: block;
color: var(--light-dark);
text-decoration: none;
margin-left: 30px;
padding: 10px 0;
}
.nav-menu {
text-align: right;
}
.nav-menu a {
color: inherit;
padding: 10px;
font-size: 0.85rem;
text-decoration: none;
cursor: pointer;
}
.active {
color: #fff;
font-weight:bold;
}
#nav {
max-height: 50px;
position: fixed;
top: 0;
width: 100%;
z-index: 10;
}
#nav > div {
vertical-align: middle;
line-height: 2.3rem;
}
#nav i {
padding-top: 2rem;
vertical-align: middle;
cursor: pointer;
z-index: 10;
}
#close-nav {
padding-top: 0.7rem;
padding-left: 0;
margin: 0px 0 15px 0;
font-weight: 400;
cursor: pointer;
}
/** From css.gg **/
.icon-close {
box-sizing: border-box;
position: relative;
display: block;
width: 35px;
height: 35px;
border: 2px solid transparent;
border-radius: 40px
}
.icon-close::after,
.icon-close::before {
content: "";
display: block;
box-sizing: border-box;
position: absolute;
width: 20px;
height: 2px;
background: currentColor;
transform: rotate(45deg);
border-radius: 5px;
top: 8px;
left: 1px
}
.icon-close::after {
transform: rotate(-45deg)
}
#nav.border {
border-bottom: 1px solid rgba(204,204,204,1);
}
#logo {
max-height: 41%;
padding: 7px 0 10px 20px;
}
.nav-light a:hover {
color: #fff;
}
.nav-dark a:hover {
color: #000;
}
body.opaque::after {
z-index: 8;
content: '';
height: 100%;
width: 100%;
background-color: var(--dark);
opacity: 0.7;
position: fixed;
}
/** Footer **/
footer {
min-height: 5rem;
}
footer p {
padding: 20px;
text-align: center;
margin-bottom: 0;
}
#copy {
font-size: 0.7rem;
margin-top: 1rem;
}
.logos {
max-height: 70px;
}
/*** Section stripes ***/
.odd-stripe {
background-color: var(--ochre-light);
}
section .container {
padding-top: 1.5rem;
font-family: 'roboto_slablight', sans-serif;
line-height: 1.3rem;
font-size: 12pt;
}
@media (min-width: 1280px) {
section .container {
width: 1280px;
}
}
@media (max-width: 1280px) {
section .container {
width: 85%;
}
}
section .container a {
text-decoration: none;
}
section .container h2 {
color: var(--ochre-dark);
font-family: 'roboto_bold';
font-size: 26pt;
}
section .container ul {
list-style-type: square;
margin-left: 0;
margin-top: 2rem;
}
section .container img {
width: 100%;
}
section.prj-logos img {
max-height: 110px;
max-width: 410px;
}
section.poi .container {
max-width: 1180px;
}
#itin-c {
padding-right: 12%;
font-size: 14pt;
}
#vagg {
padding-bottom: 2rem;
}
#potlach {
max-width: 110px;
margin: 0 25%;
}
/** Text colors **/
.ochre-dark {
color: var(--ochre-dark);
}
.ochre {
color: var(--ochre) !important;
}
.green {
color: var(--emerald);
}
.lilac {
color: var(--lilac);
}