
:root{--ink:#0f0d0b;--gold:#9a6718;--gold2:#c38d38;--cream:#fbf7ef;--line:#ded2c1;--muted:#746b60;--hero-land:url('../images/photo-10-cb9b888fee6b.jpg');--hero-port:url('../images/photo-11-5d879a8459a8.jpg')}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;color:var(--ink);background:#f7f1e7;font-family:Georgia,"Times New Roman",serif}
a{color:inherit;text-decoration:none} .wrap{width:min(1380px,94vw);margin:auto}
header{height:74px;background:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid #eee6da}
.nav{height:100%;display:grid;grid-template-columns:245px 1fr auto;align-items:center;gap:28px}
.brand img{display:block;width:210px;height:58px;object-fit:contain;object-position:left center;mix-blend-mode:multiply}
.menu{display:flex;justify-content:center;gap:34px;font-size:13px}
.menu a{padding:28px 0 22px;position:relative}
.menu a:first-child:after,.menu a:hover:after{content:"";position:absolute;height:1px;background:var(--gold);left:0;right:0;bottom:16px}
.quote{border:1px solid var(--gold);padding:12px 22px;font-size:13px;white-space:nowrap}
.mob{display:none;border:0;background:none;font-size:28px}

.hero{height:calc(100svh - 74px);min-height:610px;max-height:780px;display:grid;grid-template-rows:1fr 88px;overflow:hidden;background:#efe7da}
.hero-main{position:relative;filter:saturate(1.05) contrast(1.03);background-image:var(--hero-land);background-size:cover;background-position:center center;display:flex;align-items:center}
.cta .inner{display:flex;align-items:center;justify-content:space-between;gap:28px;width:100%} .cta h2{font-size:31px;font-weight:400;margin:0 0 4px}
.cta p{font:11px Arial,sans-serif;color:#e8ddcf;margin:0} .cta a{background:linear-gradient(90deg,#8f5d13,#c38d38);padding:13px 27px}

footer{padding:18px 0;background:#fff} .foot{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center}
.foot img{width:170px;height:48px;object-fit:contain;object-position:left;mix-blend-mode:multiply} .footnav{display:flex;gap:22px;font-size:10px}
.contact{text-align:right;font:10px Arial,sans-serif;color:#756b60}

@media(max-width:950px){
header{height:66px} .nav{grid-template-columns:1fr auto} .brand img{width:180px;height:50px}
.menu,.quote{display:none} .mob{display:block} .menu.open{display:flex;position:absolute;top:66px;left:0;right:0;background:white;flex-direction:column;padding:18px 5vw;gap:0;border-bottom:1px solid var(--line)}
.menu.open a{padding:11px 0} .hero{height:auto;max-height:none;grid-template-rows:auto} .hero-main{min-height:560px;background-position:58% center}
.hero-main:before{background:linear-gradient(90deg,rgba(255,252,246,.96),rgba(255,252,246,.82) 48%,rgba(255,252,246,.20))}
.hero-content h1{font-size:50px} .hero-features{grid-template-columns:repeat(2,1fr)} .grid4{grid-template-columns:repeat(2,1fr)} .values-grid{grid-template-columns:1fr 1fr} .values-title{grid-column:1/-1}
}
@media(max-width:620px){
.brand img{width:155px} .hero-main{min-height:570px;background-position:64% center} .hero-main:before{background:linear-gradient(90deg,rgba(255,252,246,.96),rgba(255,252,246,.88) 62%,rgba(255,252,246,.40))}
.hero-content{justify-content:flex-end;padding-bottom:48px} .hero-content h1{font-size:40px} .hero-content p{font-size:15px} .hero-note{display:none}
.hero-features,.grid4,.values-grid{grid-template-columns:1fr} .feat{border-right:0;border-bottom:1px solid var(--line)} .sec-title{font-size:34px}
.card img,.project img{height:205px} .cta .inner{flex-direction:column;align-items:flex-start;padding:24px 0} .foot{grid-template-columns:1fr;text-align:center}
.foot img{margin:auto} .contact{text-align:center}
}


/* Added responsive orientation tuning and clean hero background */
.hero-main{isolation:isolate}
.hero-main:after{content:"";position:absolute;left:0;right:0;bottom:0;height:68px;background:linear-gradient(180deg,rgba(247,241,231,0) 0%,rgba(247,241,231,.28) 48%,rgba(247,241,231,.74) 100%);z-index:1}
.hero-content,.hero-note{z-index:2}
.gallery-grid img,.card img,.project img{backface-visibility:hidden;transform:translateZ(0)}

@media (min-width:951px) and (orientation:landscape){
  .hero-main{min-height:calc(100svh - 162px);background-position:center center}
  .hero-content{padding-bottom:54px}
}

@media (max-width:1100px) and (orientation:landscape){
  .hero{height:auto;max-height:none;grid-template-rows:auto 88px}
  .hero-main{min-height:520px;background-position:center center}
}

@media (orientation:portrait){
  .hero{height:auto;max-height:none;grid-template-rows:auto auto}
  .hero-main{min-height:min(78svh,860px);background-image:var(--hero-port);background-position:center top}
  .hero-main:before{background:linear-gradient(180deg,rgba(255,252,246,.22) 0%,rgba(255,252,246,.34) 22%,rgba(255,252,246,.68) 58%,rgba(255,252,246,.93) 100%)}
  .hero-content{justify-content:flex-end;padding-bottom:36px}
  .hero-content h1{max-width:100%;font-size:46px;line-height:.98}
  .hero-content p{max-width:100%;font-size:15px}
  .hero-note{display:none}
}

@media (max-width:950px) and (orientation:portrait){
  .hero-features{grid-template-columns:1fr 1fr}
  .grid4,.gallery-grid,.values-grid{grid-template-columns:1fr 1fr}
}

@media (max-width:620px) and (orientation:portrait){
  .hero-main{min-height:72svh}
  .hero-content h1{font-size:38px}
  .hero-features,.grid4,.gallery-grid,.values-grid{grid-template-columns:1fr}
}

@media (max-width:950px) and (orientation:landscape){
  .hero-main:before{background:linear-gradient(90deg,rgba(255,252,246,.92),rgba(255,252,246,.76) 48%,rgba(255,252,246,.22))}
  .hero-content h1{font-size:48px}
  .hero-content p{font-size:15px;max-width:420px}
}

@media (min-aspect-ratio: 4/3){
  .hero-main{background-position:center 42%}
}

@media (max-aspect-ratio: 4/5){
  .hero-main{background-position:center top}
}




/* Brighter, more vibrant architectural hero; keep text legible. */
.hero-main{filter:saturate(1.22) brightness(1.10) contrast(1.03)}
.hero-main:before{background:linear-gradient(90deg,rgba(255,251,244,.85) 0%,rgba(255,251,244,.72) 26%,rgba(255,251,244,.30) 48%,rgba(255,251,244,.02) 80%)}
.language-picker{justify-self:end;display:flex;align-items:center}
.language-picker select{border:1px solid #cbbca6;background:#fffaf2;color:#3a2d1d;padding:11px 29px 11px 12px;border-radius:2px;font:13px Georgia,serif;cursor:pointer;max-width:140px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.nav{grid-template-columns:210px minmax(0,1fr) auto auto;gap:14px}
.menu{gap:22px}
@media(max-width:900px){.nav{grid-template-columns:minmax(0,1fr) auto auto auto;gap:10px}.language-picker select{padding:9px 22px 9px 8px;max-width:118px}.menu{gap:8px}}
@media(max-width:480px){.brand img{width:125px}.quote{padding:9px 10px;font-size:11px}.language-picker select{max-width:90px;font-size:11px}.nav{gap:6px}}


/* Added responsive orientation tuning and clean hero background */
.hero-main{isolation:isolate}
.hero-main:after{content:"";position:absolute;left:0;right:0;bottom:0;height:68px;background:linear-gradient(180deg,rgba(247,241,231,0) 0%,rgba(247,241,231,.28) 48%,rgba(247,241,231,.74) 100%);z-index:1}
.hero-content,.hero-note{z-index:2}
.gallery-grid img,.card img,.project img{backface-visibility:hidden;transform:translateZ(0)}

@media (min-width:951px) and (orientation:landscape){
  .hero-main{min-height:calc(100svh - 162px);background-position:center center}
  .hero-content{padding-bottom:54px}
}

@media (max-width:1100px) and (orientation:landscape){
  .hero{height:auto;max-height:none;grid-template-rows:auto 88px}
  .hero-main{min-height:520px;background-position:center center}
}

@media (orientation:portrait){
  .hero{height:auto;max-height:none;grid-template-rows:auto auto}
  .hero-main{min-height:min(78svh,860px);background-image:var(--hero-port);background-position:center top}
  .hero-main:before{background:linear-gradient(180deg,rgba(255,252,246,.22) 0%,rgba(255,252,246,.34) 22%,rgba(255,252,246,.68) 58%,rgba(255,252,246,.93) 100%)}
  .hero-content{justify-content:flex-end;padding-bottom:36px}
  .hero-content h1{max-width:100%;font-size:46px;line-height:.98}
  .hero-content p{max-width:100%;font-size:15px}
  .hero-note{display:none}
}

@media (max-width:950px) and (orientation:portrait){
  .hero-features{grid-template-columns:1fr 1fr}
  .grid4,.gallery-grid,.values-grid{grid-template-columns:1fr 1fr}
}

@media (max-width:620px) and (orientation:portrait){
  .hero-main{min-height:72svh}
  .hero-content h1{font-size:38px}
  .hero-features,.grid4,.gallery-grid,.values-grid{grid-template-columns:1fr}
}

@media (max-width:950px) and (orientation:landscape){
  .hero-main:before{background:linear-gradient(90deg,rgba(255,252,246,.92),rgba(255,252,246,.76) 48%,rgba(255,252,246,.22))}
  .hero-content h1{font-size:48px}
  .hero-content p{font-size:15px;max-width:420px}
}

@media (min-aspect-ratio: 4/3){
  .hero-main{background-position:center 42%}
}

@media (max-aspect-ratio: 4/5){
  .hero-main{background-position:center top}
}




.menu{gap:23px}.menu a{white-space:nowrap}
.card img,.project img{height:220px;object-fit:cover;object-position:center;transition:transform .4s ease;image-rendering:auto}
.card:hover img{transform:scale(1.035)}
.card-body{padding:18px 18px 20px;min-height:188px;display:flex;flex-direction:column}
.card .tt{font-size:19px;line-height:1.22}.card .row{gap:13px}
.card-desc{font:12px/1.55 Arial,sans-serif;color:#665e55;margin:11px 0 6px;flex:1}
.more{font-size:11px;display:block;margin-top:14px}
.gallery-section{background:#fff}.gallery-intro{font:14px/1.65 Arial,sans-serif;color:#645c53;margin:0 0 23px;max-width:800px}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.gallery-tile{background:#f9f5ee;padding:0;border:1px solid #e0d2bc;cursor:pointer;text-align:left;overflow:hidden;color:#211a13;font:15px Georgia,serif}
.gallery-tile img{width:100%;height:235px;object-fit:cover;display:block;transition:transform .3s ease}.gallery-tile:hover img{transform:scale(1.055)}
.gallery-tile span{display:block;padding:13px 14px}
.gallery-lightbox{width:min(900px,95vw);max-height:94vh;padding:16px;border:1px solid #c9b48d;background:#fff;color:#231b14;box-shadow:0 30px 100px #0005}
.gallery-lightbox::backdrop{background:#000b}.gallery-lightbox img{max-width:100%;width:100%;max-height:75vh;object-fit:contain}.gallery-lightbox p{font:16px Georgia,serif;margin:10px 0 0}
.gallery-close{position:absolute;top:8px;right:11px;background:#fff;border:1px solid #ddd;font-size:27px;cursor:pointer;width:40px;height:40px}
.map-contact{margin:22px auto 8px;padding:23px;border:1px solid #bd9860;background:#fcf8f0;color:#201911}
.map-contact h3{font-size:24px;font-weight:normal;margin:0 0 7px}.map-contact p{font:13px/1.7 Arial,sans-serif;margin:0 0 10px}.map-contact a{display:inline-block;color:#986617;font:13px Arial,sans-serif;border-bottom:1px solid #986617;padding-bottom:5px}
@media(max-width:950px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.gallery-grid{grid-template-columns:repeat(2,1fr);gap:9px}.gallery-tile img{height:160px}.gallery-tile span{font-size:12px;padding:10px}.card img,.project img{height:235px}}


/* Added responsive orientation tuning and clean hero background */
.hero-main{isolation:isolate}
.hero-main:after{content:"";position:absolute;left:0;right:0;bottom:0;height:68px;background:linear-gradient(180deg,rgba(247,241,231,0) 0%,rgba(247,241,231,.28) 48%,rgba(247,241,231,.74) 100%);z-index:1}
.hero-content,.hero-note{z-index:2}
.gallery-grid img,.card img,.project img{backface-visibility:hidden;transform:translateZ(0)}

@media (min-width:951px) and (orientation:landscape){
  .hero-main{min-height:calc(100svh - 162px);background-position:center center}
  .hero-content{padding-bottom:54px}
}

@media (max-width:1100px) and (orientation:landscape){
  .hero{height:auto;max-height:none;grid-template-rows:auto 88px}
  .hero-main{min-height:520px;background-position:center center}
}

@media (orientation:portrait){
  .hero{height:auto;max-height:none;grid-template-rows:auto auto}
  .hero-main{min-height:min(78svh,860px);background-image:var(--hero-port);background-position:center top}
  .hero-main:before{background:linear-gradient(180deg,rgba(255,252,246,.22) 0%,rgba(255,252,246,.34) 22%,rgba(255,252,246,.68) 58%,rgba(255,252,246,.93) 100%)}
  .hero-content{justify-content:flex-end;padding-bottom:36px}
  .hero-content h1{max-width:100%;font-size:46px;line-height:.98}
  .hero-content p{max-width:100%;font-size:15px}
  .hero-note{display:none}
}

@media (max-width:950px) and (orientation:portrait){
  .hero-features{grid-template-columns:1fr 1fr}
  .grid4,.gallery-grid,.values-grid{grid-template-columns:1fr 1fr}
}

@media (max-width:620px) and (orientation:portrait){
  .hero-main{min-height:72svh}
  .hero-content h1{font-size:38px}
  .hero-features,.grid4,.gallery-grid,.values-grid{grid-template-columns:1fr}
}

@media (max-width:950px) and (orientation:landscape){
  .hero-main:before{background:linear-gradient(90deg,rgba(255,252,246,.92),rgba(255,252,246,.76) 48%,rgba(255,252,246,.22))}
  .hero-content h1{font-size:48px}
  .hero-content p{font-size:15px;max-width:420px}
}

@media (min-aspect-ratio: 4/3){
  .hero-main{background-position:center 42%}
}

@media (max-aspect-ratio: 4/5){
  .hero-main{background-position:center top}
}



.direct-contacts{display:flex;gap:20px;align-items:center;flex-wrap:wrap;padding:28px 0 12px}.direct-contact{min-width:220px;display:flex;flex-direction:column;gap:8px}.direct-contact span{font:11px Arial,sans-serif;color:#7e6b52;letter-spacing:.1em;text-transform:uppercase}.direct-contact a{font-size:clamp(16px,1.7vw,22px);color:#221b13;overflow-wrap:anywhere}.direct-contact a:hover{color:#99681e}.direct-whatsapp{border:1px solid #b39157;padding:12px 18px;font:13px Arial,sans-serif;white-space:nowrap}@media(max-width:620px){.direct-contacts{flex-direction:column;align-items:stretch;gap:22px;padding:28px 0}.direct-contact{min-width:0}.direct-whatsapp{text-align:center;white-space:normal}}@media(max-width:900px) and (orientation:landscape){.direct-contacts{justify-content:space-between}}
/* Shared multi-page defaults */
.page-intro{padding:60px 0 20px}.page-intro h1{font-size:clamp(36px,5vw,62px);font-weight:400;margin:0 0 12px}.page-intro p{font:16px/1.6 Arial,sans-serif;color:#655b50;max-width:750px}.page-container{min-height:55vh}.section-actions{padding:28px 0 52px;display:flex;gap:16px;flex-wrap:wrap}.section-actions a{border:1px solid #b48a50;padding:12px 19px;font:13px Arial,sans-serif}.hero-note{display:none}@media (max-width:620px){.page-intro{padding:35px 0 12px}.section-actions{padding:24px 0 36px}}
