
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:Arial,Helvetica,sans-serif;background:#fff;color:#111;line-height:1.65}
.site-header{background:linear-gradient(135deg,#f6f1e7,#ece7dd);border-bottom:1px solid #ded6ca;padding:30px 6%}
.header-inner{max-width:1220px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:34px}
.brand{text-decoration:none;color:#111;border:1px solid #111;padding:10px 28px;font-size:22px;font-weight:800;line-height:1.25;text-align:center;background:rgba(255,255,255,.42);min-width:150px}
.brand span{display:block}
.nav{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;background:rgba(255,255,255,.68);padding:0 14px}
.nav a{text-decoration:none;text-transform:uppercase;font-size:14px;font-weight:800;letter-spacing:.45px;padding:20px 17px;color:#111}
.hero{background:linear-gradient(135deg,#f6f1e7,#ece7dd);min-height:700px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:80px 20px 100px}
.main-logo{width:min(560px,88vw);margin-bottom:58px;display:block}
h1{font-size:clamp(42px,6vw,78px);line-height:1.04;letter-spacing:-2px;max-width:1000px;margin:0 auto 26px}
.hero p,.page-hero p{max-width:880px;font-size:20px;color:#5e5953;margin:0 auto 18px}
.buttons{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:30px}
.btn{display:inline-block;padding:16px 30px;text-decoration:none;font-weight:800;text-transform:uppercase;letter-spacing:1px;border-radius:4px;font-size:13px;border:none;cursor:pointer}
.btn-dark{background:#111;color:#fff;border:1px solid #111}
.btn-light{background:rgba(255,255,255,.58);color:#111;border:1px solid #111}
.section{padding:95px 7%}.alt{background:#f6f1e7}.section-inner{max-width:1180px;margin:auto}
.two-col{display:grid;grid-template-columns:1fr 1.25fr;gap:64px;align-items:start}
.eyebrow{font-size:12px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:#8a7b69}
h2{font-size:clamp(34px,4vw,54px);line-height:1.1;letter-spacing:-1px;margin:12px 0 22px}
h3{font-size:24px;line-height:1.2;margin-bottom:12px}
p{font-size:18px;color:#5e5953;margin-bottom:18px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.card{background:#fff;border:1px solid #ece4d8;border-radius:16px;padding:34px;box-shadow:0 14px 42px rgba(0,0,0,.045)}
.card p{font-size:16px}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:38px}
.gallery-item{min-height:275px;border-radius:14px;display:flex;align-items:flex-end;padding:24px;color:#fff;font-weight:800;position:relative;overflow:hidden}
.gallery-item:before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.66),rgba(0,0,0,.05))}
.gallery-item span{position:relative;z-index:2}
.texture-one{background:linear-gradient(135deg,#c58d7a,#3a2b2a)}
.texture-two{background:linear-gradient(135deg,#f0dcc9,#5f5047)}
.texture-three{background:linear-gradient(135deg,#d8a18c,#231c1b)}
.texture-four{background:linear-gradient(135deg,#2f2a27,#0d0d0d)}
.texture-five{background:linear-gradient(135deg,#cf9984,#382a27)}
.texture-six{background:linear-gradient(135deg,#0f0f0f,#53493f)}
.page-hero{background:linear-gradient(135deg,#f6f1e7,#ece7dd);padding:90px 7%;text-align:center}
.page-hero h1{font-size:clamp(42px,6vw,72px)}
.review-card p{font-style:italic}.review-card strong{display:block;margin-top:20px;text-transform:uppercase;letter-spacing:1px;font-size:14px}
.contact-box{max-width:860px;margin:auto;text-align:center}
.contact-form{max-width:780px;margin:42px auto 0;text-align:left;background:#fff;border:1px solid #ece4d8;border-radius:18px;padding:38px;box-shadow:0 14px 42px rgba(0,0,0,.045)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.contact-form label{display:block;font-size:13px;text-transform:uppercase;font-weight:800;letter-spacing:1px;margin-bottom:8px;color:#111}
.contact-form input,.contact-form textarea{display:block;width:100%;padding:16px 18px;border:1px solid #d8d0c5;border-radius:6px;font-size:16px;margin-bottom:22px;background:#fbfaf7;color:#111;font-family:Arial,Helvetica,sans-serif}
.contact-form textarea{min-height:190px;resize:vertical}
.contact-form .btn{width:100%;text-align:center;margin-top:4px}
.form-note{font-size:14px;color:#777;margin-top:18px;text-align:center}
footer{background:#111;color:#ddd;padding:60px 7%;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:28px}
footer p,footer a{color:#cfcfcf;text-decoration:none;font-size:14px}.footer-links{display:flex;flex-direction:column;gap:8px}
.copyright{grid-column:1/-1;border-top:1px solid #333;padding-top:24px;margin-top:10px}
@media(max-width:900px){.header-inner{flex-direction:column}.nav a{font-size:13px;padding:10px}.hero{min-height:auto}.main-logo{margin-bottom:38px}.two-col,.cards,.gallery-grid,footer,.form-row{grid-template-columns:1fr}h1{font-size:42px}.contact-form{padding:24px}}
.gallery-item{
  position:relative !important;
  overflow:hidden !important;
  border-radius:20px !important;
  height:320px !important;
  background:none !important;
}

.gallery-item img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
  z-index:0 !important;
}

.gallery-item span{
  position:absolute !important;
  bottom:22px !important;
  left:22px !important;
  right:22px !important;
  color:white !important;
  font-size:24px !important;
  font-weight:800 !important;
  text-shadow:0 2px 8px rgba(0,0,0,.85) !important;
  z-index:2 !important;
}

.gallery-item::after{
  content:'' !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(to top, rgba(0,0,0,.72), rgba(0,0,0,.08)) !important;
  z-index:1 !important;
}