/* RESET */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

address{
    font-style: normal;
}

.visually-hidden{
position:absolute !important;
width:1px !important;
height:1px !important;
padding:0 !important;
margin:-1px !important;
overflow:hidden !important;
clip:rect(0 0 0 0) !important;
clip-path:inset(50%) !important;
white-space:nowrap !important;
border:0 !important;
}

/* BODY */

body{
background:#f5f2ec;
font-family:'Inter',sans-serif;
color:#2f2f2f;
line-height:1.8;
overflow-x:hidden;
}

/* HEADER */

header{
padding:35px 8%;
background:#d8d0c2;
border-bottom:1px solid rgba(0,0,0,0.05);
}

/* LOGO */


.logo{
    display:flex;
    justify-content:center;
    align-items:center;
    padding:20px 0;
}

.logo a{
    display:flex;
    justify-content:center;
    align-items:center;
}

.logo img{
width:50%;
height:auto;
display:block;
}

/* ABOUT SECTION */

.about-section{
padding:95px 7% 100px;
background:#f5f2ec;
}

/* TEXT GRID */

.about-text-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:48px;
align-items:start;
margin-bottom:75px;
}

/* TEXT */

.about-text h2{
font-family:'Cormorant Garamond',serif;
font-size:38px;
font-weight:400;
margin-bottom:20px;
letter-spacing:2px;
}

.about-text h3{
font-family:'Cormorant Garamond',serif;
font-size:24px;
font-weight:400;
margin-top:35px;
color:#8c7450;
}

.about-text p{
font-size:16px;
margin-bottom:22px;
color:#4b4b4b;
line-height:1.85;
}

/* GALLERY */

.gallery-grid{
display:grid;
grid-template-columns:repeat(5,1fr);
gap:26px;
align-items:end;
}

.gallery-item{
margin:0;
}

.gallery-item img{
width:100%;
aspect-ratio:4/3;
object-fit:cover;
border-radius:4px;
box-shadow:0 10px 30px rgba(0,0,0,0.08);
display:block;
}

.gallery-item figcaption{
font-family:'Cormorant Garamond',serif;
font-decoration:italic;
font-size:15px;
letter-spacing:1px;
color:#8c7450;
line-height:1.2;
margin-top:12px;
text-align:center;
}

/* FOOTER */

.luxury-footer{
padding:55px 4%;
background:#f5f2ec;
}

/* FOOTER LINE */

.footer-line{
width:100%;
height:1px;
background:#c7a26a;
margin-bottom:35px;
opacity:0.7;
}

/* FOOTER GRID */

.footer-grid{
display:grid;
grid-template-columns:repeat(5,1fr);
gap:10px;
align-items:center;
}

/* FOOTER ITEMS */

.footer-item,
.footer-logo{
padding:0 18px;
position:relative;
min-height:90px;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
text-align:center;
gap:10px;
}

/* DIVIDERS */

.footer-item::after,
.footer-logo::after{
content:"";
position:absolute;
right:0;
top:50%;
transform:translateY(-50%);
width:1px;
height:70%;
background:rgba(199,162,106,0.5);
}

/* REMOVE LAST DIVIDER */

.footer-item:last-child::after,
.footer-logo:last-child::after{
display:none;
}

/* FOOTER LOGO */

.footer-logo img{
width:336px;
height:auto;
display:block;
}

/* ICONS */

.footer-icon img{
width:34px;
height:34px;
object-fit:contain;
display:block;
}

/* FOOTER TEXT */

.footer-text{
text-align:center;
}

.footer-text p{
font-size:15px;
color:#10203a;
margin-bottom:4px;
line-height:1.3;
}

.footer-text a{
color:inherit;
text-decoration:none;
}

.footer-text a:hover,
.footer-text a:focus{
color:#8c7450;
text-decoration:underline;
}

.footer-text span{
font-size:13px;
letter-spacing:1px;
color:#3e3e3e;
display:block;
margin-top:4px;
}

/* WEBSITE COLUMN - adjust these values manually if needed */

.footer-website p{
margin-bottom:0;
}

.footer-url{
display:block;
font-size:14px;
letter-spacing:3.7px;
line-height:1.2;
}

.footer-cadastur{
display:block;
font-size:5px;
letter-spacing:-0.4px;
line-height:0.8;
margin-top:6px;
}

/* CONTACT TITLE */

.footer-title{
font-size:14px;
letter-spacing:2px;
text-transform:uppercase;
color:#8c7450;
margin-bottom:8px;
}

/* CONTACT LINES */

.contact-line{
display:flex;
align-items:center;
justify-content:center;
gap:12px;
width:auto;
}

.contact-line:first-child{
margin-bottom:8px;
}

/* RESPONSIVE */

@media(max-width:1100px){

.footer-grid{
grid-template-columns:1fr 1fr;
gap:30px;
}

.footer-item::after,
.footer-logo::after{
display:none;
}

.footer-item,
.footer-logo{
border-bottom:1px solid rgba(199,162,106,0.3);
padding-bottom:25px;
}

}

/* MOBILE */

@media(max-width:900px){

.logo img{
width:42%;
}

.about-section{
padding:75px 8% 85px;
}

.about-text-grid{
grid-template-columns:1fr;
gap:48px;
margin-bottom:60px;
}

.gallery-grid{
grid-template-columns:repeat(2,1fr);
gap:18px;
}

.about-text h2{
font-size:34px;
}

.about-text h3{
font-size:24px;
}

.about-text p{
font-size:16px;
}

}

/* SMALL MOBILE */

@media(max-width:700px){

.gallery-grid{
grid-template-columns:1fr;
}

.footer-grid{
grid-template-columns:1fr;
}

.footer-item,
.footer-logo{
border-bottom:none;
}

}
