challenge-landing-page-henr.../assets/css/main.css

433 lines
5.9 KiB
CSS

/* Mas legível quais tags eu declarei com propriedades padrão */
/* reset all tags */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
img {
display: block;
max-width: 100%;
height: auto;
}
/* Mas organização de cores, estilos, fonts, espaçamentos,etc. isso é um arquivo de configuração*/
:root {
--clr-black: #000;
--clr-gray-100: #BDBDBD;
--bg-clr-black: #000;
--bg-clr-gray: #E0E0E0;
--bg-clr-white: #fff;
--body-family: "Inter", Arial, Helvetica, sans-serif;
--title-family: "Inter", Arial, Helvetica, sans-serif;
/*----------------------*\
= Volatile Variables =
\*----------------------*/
--hs-flow-space: 1rem;
--hs-grid-space: 1rem;
--hs-flex-space: 1rem;
}
/* font styles for all body tags */
body * {
font-family: var(--body-family);
}
/* font styles for page titles */
h1,
h2,
h3,
h4,
h5,
h6,
.title {
font-family: var(--title-family);
}
/* a metodologia que vou usar será CUBE CSS <3*/
/* started styles */
/*--------*\
= HEADER =
\*--------*/
.l-header {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
padding: 1.875rem 1rem;
}
.header-logo {
display: flex;
}
/*-------------*\
= MAIN BANNER =
\*-------------*/
.main-banner-image {
width: 100%;
height: auto;
}
/*-------------*\
= INFORMATION =
\*-------------*/
.information {
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
gap: 4rem;
padding: 4.625rem 1.875rem 90px;
}
.information-texts {
text-align: center;
}
.information-subtitle,
.information-description {
line-height: 1.5rem;
}
.information-subtitle {
font-weight: 400;
}
.information-title {
font-weight: 500;
line-height: 3rem;
}
/*----------*\
= SERVICES =
\*----------*/
.services {
padding-bottom: 5.625rem;
}
.services-container {
--hs-flex-space: 1.25rem;
--hs-flow-space: 1.75rem;
padding: 0 1.625rem;
}
.services-container,
.card {
display: flex;
align-items: center;
justify-content: center;
}
.card {
flex-direction: column;
width: 100%;
min-height: 288px;
padding: 2.25rem 1.625rem 1.75rem;
}
.card-image {
width: 34.5%;
height: auto;
min-width: 103px;
}
/*---------*\
= GALLERY =
\*---------*/
.gallery {
--hs-grid-space: 1.5rem 0.875rem;
padding: 0 1.5rem;
margin-bottom: 7rem;
}
.gallery-container {
position: relative;
grid-template-columns: repeat(2, 1fr);
justify-content: center;
transform: translateY(2rem);
}
.gallery-image,
.gallery-image img {
width: 100%;
height: 100%;
}
.gallery-image-2 {
order: -1;
}
.gallery-image-3 {
grid-column: 1/2 span;
}
/*----------*\
= FEATURES =
\*----------*/
.features {
padding: 0 1.5rem;
}
.features-container {
--hs-flex-space: 1rem;
flex-direction: column;
width: 100%;
padding-bottom: 6rem;
margin: 0;
}
.features .card {
width: 100%;
min-height: 332px;
}
/*------*\
= BLOG =
\*------*/
.blog {
--hs-flex-space: 3.125rem;
width: 100%;
padding-bottom: 5.5rem;
}
.blog-images-image {
width: 100%;
}
.blog-article {
padding: 0 1.5rem;
}
.blog-title {
font-weight: 500;
font-size: 1.5rem;
}
/*--------*\
= FOOTER =
\*--------*/
.footer {
flex-direction: column;
padding: 2.375rem 0;
}
/*CUBE CSS styles*/
/*-------------*\
= COMPOSITION =
\*-------------*/
.flow *+* {
margin-top: var(--hs-flow-space);
}
.grid-box {
display: grid;
gap: var(--hs-grid-space);
}
.flex-box {
display: flex;
gap: var(--hs-flex-space);
}
.flex-box[data-type="reversed"] {
flex-direction: column-reverse;
}
/*-------*\
= UTILS =
\*-------*/
.center {
align-items: center;
justify-content: center;
}
.text-upper {
text-transform: uppercase;
}
.text-center {
text-align: center;
}
.box-shadow {
box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.23);
}
.clr-gray-100 {
color: var(--clr-gray-100);
}
.bg-clr-black {
background-color: var(--bg-clr-black);
}
.bg-clr-gray {
background-color: var(--bg-clr-gray);
}
/*---------------*\
= MEDIA QUERIES =
\*---------------*/
@media only screen and (max-width: 1024px) {
.services-container {
flex-direction: column;
}
.image-mobile {
display: flex;
}
.image-desktop {
display: none;
}
}
/*--------------------------------------*\
= MEDIA QUERIES LARGE DEVICES 1025px > =
\*--------------------------------------*/
@media screen and (min-width:1025px) {
.features,
.gallery {
padding: 0 4.5rem;
}
.information-texts,
.services,
.blog-article,
.blog-images {
margin: 0 auto;
}
.information {
padding: 4.675rem 0 9.875rem;
gap: 4.675rem;
}
.information-texts {
width: 40.5%;
text-align: initial;
}
.information-title,
.information-subtitle {
text-align: center;
}
.information-title {
font-size: 200%;
margin-bottom: 1.75rem;
}
.information-subtitle {
line-height: 2rem;
}
.information-image {
width: 17%;
height: auto;
}
.information-image img {
width: 100%;
}
.services {
width: 57%;
}
.services-container {
padding: 0;
}
.services .card {
width: 34%;
}
.gallery {
--hs-grid-space: 2.5rem;
}
.gallery-container {
grid-template-columns: repeat(3, 1fr);
transform: translateY(4rem);
}
.gallery-image {
min-height: 530px;
}
.gallery-image-2 {
order: 0;
}
.gallery-image-3 {
grid-column: auto;
}
.features-container {
flex-direction: row;
padding-bottom: 6.75rem;
}
.features-container .card {
max-height: 260px;
}
.card-image {
width: 29%;
height: auto;
}
.blog {
padding-bottom: 7.25rem;
}
.blog-title {
font-size: 2rem;
}
.blog-images-image {
margin: 0;
}
.blog .flex-box[data-type="reversed"] {
flex-direction: column;
}
.blog-article {
width: 30.5%;
}
.blog-description {
line-height: 1.5rem;
}
.blog-images {
width: 71%;
height: auto;
}
.image-mobile {
display: none;
}
.image-desktop {
display: flex;
}
}