:root {
--main-accent-color: #A89038;
--font-color: #FFFFFF;
--font-accent-color: #F2DB87;
--main-background: #272727;
--second-background: #2D2D2D;
--red-color-map: #B85656;
}
* {
margin: 0px;
padding: 0px;
box-sizing: border-box;
font-family: 'Bodoni 72';
transition: .3s;
}
html {
scroll-behavior: smooth;
scroll-padding-top: 80px;
overflow-x: hidden;
}
body {
background: var(--main-background);
overflow-x: hidden;
}
p,
a,
button {
color: var(--font-color);
}
h2,
h3,
h4 {
color: var(--font-accent-color);
}
a:hover {
color: var(--font-accent-color);
}
button {
border: none;
background: transparent;
cursor: pointer;
}
.cta-button {
background: var(--main-accent-color);
width: 100%;
max-width: 230px;
height: 55px;
padding: 0 1rem;
text-transform: uppercase;
font-weight: 400;
font-size: 21px;
line-height: 34px;
letter-spacing: 0%;
text-align: center;
}
.container {
max-width: 1200px;
width: 100%;
margin: auto;
padding: 4rem 2rem;
}
.animate-on-scroll {
opacity: 0;
transition: transform .8s ease-out, opacity .8s ease-out;
}
.fade-up {
transform: translateY(100%);
}
.fade-down {
transform: translateY(-100%);
}
.fade-left {
transform: translateX(-100%);
}
.fade-right {
transform: translateX(100%);
}
.animate-on-scroll.is-visible {
opacity: 1;
transform: translate(0, 0);
}
@media (max-width: 1024px) {
.container {
padding: 2rem;
}
}.homepage-header {
background: linear-gradient(180deg, #000000 0%, rgba(9, 9, 9, 0.52) 48%, rgba(0, 0, 0, 0) 100%);
height: 93px;
width: 100%;
display: flex;
justify-content: center;
align-items: center;
position: fixed;
top: 0px;
left: 0px;
z-index: 10;
.header-content {
width: 100%;
max-width: 1440px;
display: flex;
justify-content: space-between;
align-items: center;
padding: 0px 10px;
.logo {
width: 330px;
height: auto;
img {
width: 100%;
}
}
.menu {
display: flex;
justify-content: space-around;
align-items: center;
gap: 40px;
a {
font-size: 21px;
line-height: 34px;
font-weight: 400x;
text-decoration: none;
color: #fff;
transition: 0.3s;
&:hover {
text-decoration: underline;
}
}
.contact-button-container {
position: relative;
.contact-hover {
background-color: #a89038;
height: 55px;
width: 230px;
display: flex;
justify-content: center;
align-items: center;
font-size: 21px;
line-height: 34px;
font-weight: 700;
color: #fff;
}
.contact-button-content {
position: absolute;
max-width: 230px;
width: 100%;
background-color: #3E3D3DB2;
backdrop-filter: blur(2px);
display: flex;
flex-direction: column;
justify-content: center;
text-align: center;
top: 55px;
overflow: hidden;
max-height: 0px;
padding: 0px;
transition: 0.3s;
a {
color: #fff;
font-size: 21px;
line-height: 34px;
&:nth-child(2) {
font-size: 17px;
}
}
}
.show {
max-height: 150px;
padding-bottom: 15px;
padding-top: 15px;
}
}
}
.menu-mobile {
display: none;
}
}
}
@media (max-width: 1150px) {
.homepage-header {
.header-content {
.logo {
width: 250px;
}
.menu {
gap: 30px;
}
}
}
}
@media (max-width: 1024px) {
.homepage-header {
z-index: 3;
.header-content {
height: 100%;
padding: 0px;
.logo {
padding-left: 20px;
}
.menu {
display: none;
}
.menu-mobile {
display: flex;
position: relative;
height: 100%;
z-index: 8;
.hamburger-menu-buttom {
display: flex;
flex-direction: column;
gap: 3px;
justify-content: center;
z-index: 20;
padding-right: 20px;
span.hamburger-span {
display: block;
width: 17px;
height: 2px;
background-color: var(--main-accent-color);
}
}
.hamburger-menu-content {
width: 400px;
background-color: #343434CC;
backdrop-filter: blur(13px);
height: 100%;
transform: translateX(400px);
position: fixed;
top: 0px;
right: 0px;
display: flex;
flex-direction: column;
align-items: center;
justify-content: space-between;
padding: 50px;
z-index: 10;
.hamburger-first-container {
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
gap: 50px;
.menu-links {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
gap: 40px;
a {
text-decoration: none;
}
}
}
.contact-button-container {
position: relative;
.contact-click {
background-color: var(--main-accent-color);
height: 55px;
width: 230px;
display: flex;
justify-content: center;
align-items: center;
font-size: 21px;
line-height: 34px;
font-weight: 700;
color: var(--font-color);
}
.mobile-button-content {
position: absolute;
max-width: 230px;
width: 100%;
display: flex;
flex-direction: column;
justify-content: center;
text-align: center;
bottom: 55px;
overflow: hidden;
max-height: 0px;
padding: 0px;
transition: 0.3s;
a {
color: #fff;
font-size: 21px;
line-height: 34px;
text-decoration: none;
&:nth-child(2) {
font-size: 17px;
}
}
}
.show-contact {
max-height: 150px;
padding-bottom: 15px;
padding-top: 15px;
bottom: 55px;
}
}
}
.hamburger-menu-content.open-menu {
transform: translate(0px);
}
}
}
}
.page-blur {
position: fixed;
width: 100%;
height: 100%;
top: 0px;
left: 0px;
z-index: 1;
background-color: #00000033;
backdrop-filter: blur(8px);
display: none;
}
.page-blur.show-page-blur {
display: block;
}
.black-header {
background-color: #000;
}
}
@media (max-width: 768px) {
.homepage-header {
.header-content {
.menu-mobile {
.hamburger-menu-content {
width: 100vw;
transform: translateX(100%);
.hamburger-first-container {
gap: 70px;
}
}
.hamburger-menu-content.open-menu {
transform: translate(0%);
}
}
}
}
.page-blur.show-page-blur {
display: none;
}
}.site-footer {
width: 100%;
display: flex;
justify-content: center;
align-items: center;
padding-bottom: 40px;
.footer-content {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
width: 100%;
max-width: 1440px;
gap: 40px;
.f-line {
width: 100%;
max-width: 900px;
height: 3px;
border-radius: 3px;
background-color: var(--font-accent-color);
}
.logo {
img {
width: 475px;
height: auto;
}
}
.f-section-contact, .f-section-nota {
display: flex;
flex-direction: column;
gap: 20px;
h3.f-header-text {
font-size: 34px;
line-height: 55px;
font-weight: 700;
color: var(--font-accent-color);
text-align: center;
}
.f-text {
color: var(--font-color);
font-size: 21px;
line-height: 34px;
max-width: 1000px;
text-align: center;
display: flex;
flex-direction: column;
a {
text-decoration: none;
&:hover {
text-decoration: underline;
}
}
}
}
.f-section-nota {
padding: 20px 0px;
}
.f-policy-designed-by {
color: var(--font-color);
display: flex;
justify-content: space-between;
align-items: center;
width: 100%;
max-width: 1000px;
span.stellar {
display: flex;
gap: 10px;
a {
text-decoration: none;
display: flex;
align-items: center;
gap: 5px;
&:hover {
text-decoration: underline;
}
}
}
}
}
}
@media (max-width: 1024px) {
.site-footer {    
.footer-content {
.f-line {
max-width: 500px;
}
.f-section-contact, .f-section-nota {
h3.f-header-text {
font-size: 21px;
line-height: 34px;
}
.f-text {
color: var(--font-color);
font-size: 18px;
line-height: 21px;
max-width: 600px;
}
}
.f-policy-designed-by {
max-width: 600px;
span {
font-size: 15px;
line-height: 21px;
text-align: center;
}
}
}
}
}
@media (max-width: 768px) {
.site-footer {
.footer-content {
.logo {
img {
width: 300px;
}
}
.f-section-contact, .f-section-nota {
.f-text {
max-width: 350px;
}
}
.f-policy-designed-by {
flex-direction: column;
gap: 20px;
}
}
}
}.gallery {
display: flex;
flex-direction: column;
align-items: center;
gap: 30px;
width: 100%;
#mainImage {
width: 100%;
max-width: 1440px;
}
.thumbs {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 10px;
img {
width: 260px;
height: 145px;
object-fit: contain;
&:hover {
transform: scale(1.05);
cursor: pointer;
}
}
.lightbox-button {
width: 260px;
height: 145px;
border: 5px solid var(--font-accent-color);
color: var(--font-accent-color);
font-size: 34px;
line-height: 55px;
&:hover {
transform: scale(1.05);
cursor: pointer;
}
}
}
}
#lightbox {
display: none;
position: fixed;
top: 0px;
left: 0px;
width: 100%;
height: 100%;
background-color: rgba(0,0,0,0.8);
backdrop-filter: blur(2px);
justify-content: center;
align-items: center;
flex-direction: column;
gap: 30px;
z-index: 999;
.close {
position: absolute;
top: 30px;
right: 30px;
color: white;
font-size: 30px;
cursor: pointer;
z-index: 999;
padding: 20px;
}
.lightbox-content {
position: relative;
width: 100%;
max-width: 1440px;
max-height: 80%;
display: flex;
justify-content: center;
align-items: center;
.lightbox-item {
width: 100%;
max-width: 1200px;
max-height: 800px;
height: 100%;   
object-fit: contain;
display: none;
}
.lightbox-item.active {
display: block;
}
.nav {
position: absolute;
top: 50%;
transform: translateY(-50%);
color: white;
font-size: 20px;
cursor: pointer;
user-select: none;
padding: 0 20px;
}
.nav.left {
left: 10px;
}
.nav.right {
right: 10px;
}
}
.lightbox-thumbs {
display: flex;
flex-wrap: wrap;
max-width: 1440px;
width: 100%;
justify-content: center;
gap: 10px;
img {
width: 120px;
height: 80px;
object-fit: cover;
cursor: pointer;
border: 2px solid var(--font-color);
&:hover {
transform: scale(1.05);
cursor: pointer;
}
}
img.active {
border: 2px solid var(--font-accent-color);
}
}
}
#lightbox.open {
display: flex;
}
@media (max-width: 1024px) {
#lightbox {
.lightbox-thumbs {
height: 150px;
overflow-y: scroll;
img {
width: 80px;
height: 60px;
}
}
.close {
padding: 10px;
right: 0;
font-size: 50px;
}
}
}