:root { --space : 5px; } .global-wrapper { width: 100%; } .page-wrapper { display:grid; width: 100%; } .contact-container { position: relative; width: 100%; min-height: 100vh; padding:2rem; overflow: hidden; background-color: rgb(0, 255, 170); display:flex; align-items: center; justify-content: center; } .contact-container .form { width: 100%; background-color: white; border-radius: 15px; box-shadow: 0 0 20px 1px grey; overflow: hidden; display: grid; grid-template-columns: repeat(2, 1fr); overflow: hidden; min-height: 95vh; } .contact-info { background-color:black; } .contact-form { background-color: white; position: relative; } form{ padding: 2.25rem; overflow: hidden; position: relative; } form h3{ color: rgb(62, 190, 147); font-weight: 200; font-size: 3rem; line-height: 5rem; margin: 1rem 0 2rem 0; } form .input-container { position: relative; margin: 1rem 0; } .input-container .input { width: 100%; outline: none; border: .01em solid rgb(62, 190, 147); box-shadow: .1em .1em .1em .01em hsl(160, 50%, 70%); background-color: hsl(160, 50%, 50%); padding: 1rem 1rem; color: #333; font-weight: 400; font-family:'Lato', sans-serif; font-size: 1.5rem; letter-spacing: .1em; transition: .5s; } .input-container.textarea .input { padding: 2rem 2rem; resize: none; overflow-y: auto; } ::placeholder { top: 50%; font-size: 1.5rem; color:white; font-weight: 600; pointer-events: none; transition: .5s; opacity: 90%; } form .btn { padding: .75rem 1.5rem; background-color: #000; border: none; font-size: 1.5rem; color: white; font-family:'Lato', sans-serif; line-height: 1rem; border-radius: 25px; font-weight: 300; cursor: pointer; margin-top: 1rem; margin-left: .25rem; transition: ease.5s; } form .btn:hover, .btn:active{ background-color: hsl(160, 49%, 60%); } .contact-info { padding: 2.5rem 5rem 3rem 5rem; position: relative; display: flex; flex-direction: column; justify-content: space-around; } .adress-info { color: white; margin-bottom: 2rem; } .adress-info h3 { color: hsl(160, 49%, 60%); font-size: 2rem; font-weight: 300; padding: 1vh 1vw 4vh 1vw; } .adress-info h5 { color: #eee; font-size: 1.15rem; font-weight: 300; letter-spacing: .115em; text-transform: uppercase; padding: 1vh 0 1vh 1.5vh; } .adress-info p { font-size: 1.15rem; line-height: 4vh; padding: 1vh 0 1vh 1vw; } .phone-info { color:white; } .phone-info h3 { color: hsl(160, 49%, 60%); font-size: 2rem; font-weight: 300; padding: 4vh 1vw 2vh 1vw; } .phone-info p { font-size: 1.15rem; line-height: 4vh; padding: 1vh 0 1vh 1vw; } .social-info { color: white; } .social-info figure { display: grid; grid-template-columns: repeat(2, 1fr); grid-template-rows: repeat(2, 1fr); grid-gap: 0 5vw; } figure #pixelfed { grid-column: 1; grid-row: 1; display: flex; align-self: center; } figure #pixelfed-adress { grid-column: 1; grid-row: 2; display: flex; align-self: flex-end; } figure #peertube { grid-column: 2; grid-row: 1; display: flex; align-self: center; } figure #peertube-adress { grid-column: 2; grid-row: 2; display: flex; align-self: flex-end; } .social-info h3 { color: hsl(160, 49%, 60%); font-size: 2rem; font-weight: 300; padding: 4vh 1vw 2vh 1vw; } .social-info h5 { color: #eee; font-size: 1.05rem; font-weight: 300; letter-spacing: .115em; text-transform: uppercase; padding: 1vh 0 1vh 1.5vh; } .social-info a { text-decoration: none; color: #eee; padding-top: 1vh; transition: .5s; } .social-info a:hover { color: hsl(160, 49%, 60%); } .info h1 { color:rgb(62, 190, 147); font-size: 3rem; font-family:'IBM Plex Sans', sans-serif; font-weight: 300; text-transform: uppercase; justify-self: center; align-self: center; margin-bottom: 1.5rem; } .info p { color: black; } .info p span { color: rgb(62, 190, 147); font-weight: 500; } @media screen and (min-width:769px) { .page-wrapper { grid-template-columns: 100%; grid-template-rows: auto auto; grid-template-areas: "info" "page-content"; width: 100%; } .info { width:100%; height: 65vh; grid-area: info; display: grid; grid-template-columns: repeat(2, 50%); grid-template-rows: 45% 55%; } .info h1 { grid-column: 1; grid-row: 1; font-size: 5rem; font-weight: 300; margin-bottom: 0; padding-top: 7.5vh; } .info p { grid-column: 1; grid-row: 2; display: flex; flex-direction: column; align-items: center; text-align: center; font-size: 1.25rem; line-height: 4rem; padding: .5vh 7.5vw 0 7.5vw; } .info p span { font-size: 1.35rem; padding-top: 2vh; } .info img { max-height: 50vh; width: auto; grid-column: 2; grid-row: 1/4; display:flex; justify-self: flex-start; align-self: flex-end; margin: 0 0 5vh 5vw; } .contact-container { width: 100%; height: 100vh; grid-area: page-content; padding:2rem; background-color:rgb(0, 255, 170); overflow: hidden; } } @media (max-width: 480px){ .page-wrapper { grid-template-columns: 100%; grid-template-rows: auto auto; grid-template-areas: "info" "page-content"; width: 100%; } .info { width:100%; height: 80vh; grid-area: info; display: flex; flex-direction: column; padding-top: 10vh; } .info h1 { margin: 0 0 1rem 0; } .info p { font-size: 1rem; font-weight: 300; line-height: 4.5vh; text-align: center; padding: 3vh 7.5vw; } .info p span { font-weight: 400; font-size: 1.05rem; } .info img { max-height: 25vh; height: auto; align-self: center; } .contact-container { width: 100%; grid-area: page-content; padding: 1rem; padding-top: 1.5rem; } .contact-container .form { height: auto; grid-template-columns: 1fr; grid-template-rows: .65fr 1fr; } .contact-info { grid-row: 2; align-items: flex-start; padding: 7.5vh 5vw; } .adress-info h3 { font-size: 1.8rem; } .adress-info p { font-weight: 300; font-size: 1.05rem; letter-spacing: 0.03em; padding: 1vh 0 1vh 2vw; } .phone-info h3 { font-size: 1.8rem; padding: 3vh 1vw 2vh 1vw; } .phone-info p { font-weight: 300; font-size: 1.05rem; padding: 0 0 1vh 2vw; letter-spacing: 0.03em; } .social-info h3 { font-size: 1.75rem; } .social-info figure { display: flex; flex-direction: column; } figure h5 { display: flex; align-self: flex-start !important; color: #eee; font-size: 1.15rem; font-weight: 300; letter-spacing: .115em; text-transform: uppercase; padding: 5vh 0 0 0; margin: 1vh 0 0 0; } figure #peertube { padding-top: 3vh; } figure a { display: flex; align-self: flex-start !important; color: #eee; font-size: 1.05rem; font-weight: 300; text-decoration: none; margin: 1vh 0 ; padding-left: 2vw; transition: .5s all ease; } .contact-form { grid-row: 1; max-width: 90vw; margin-top: 2rem; } form { padding: .75rem .65rem 1.5rem .75rem; } form h3 { font-size: 2rem; line-height: 4rem; margin-top: 0; } form .input-container { margin: 1.5rem 0; } .input-container .input{ padding: .5rem .5rem; font-size: 1.25rem; } #phone { display: none; } }