
/* Applied ornate texture from approved reference-derived assets */
:root{
  --texture-dark:url('assets/ui/texture-dark.png');
  --texture-light:url('assets/ui/texture-light.png');
}

/* HOME: replace minimal vector ornaments with actual textured panels */
main{position:relative;overflow:hidden}
.public,.rooms,.gallery,.contacts,.footer,
.room-intro,.room-gallery,.room-experience,.room-price,.room-footer{position:relative;isolation:isolate}
.public>*,.rooms>*,.gallery>*,.contacts>*,.footer>*,
.room-intro>*,.room-gallery>*,.room-experience>*,.room-price>*,.room-footer>*{position:relative;z-index:1}

.public::before,.rooms::before,.gallery::before,.contacts::before,.footer::before,
.room-intro::before,.room-gallery::before,.room-experience::before,.room-price::before,.room-footer::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background-repeat:repeat;background-position:center top;
}

/* home sections */
.public::before{background-image:var(--texture-dark);background-size:960px 960px;opacity:.20}
.rooms::before{background-image:var(--texture-light);background-size:980px 980px;opacity:.48}
.gallery::before{background-image:var(--texture-dark);background-size:960px 960px;opacity:.24}
.contacts::before{background-image:var(--texture-light);background-size:980px 980px;opacity:.52}
.footer::before{background-image:var(--texture-dark);background-size:960px 960px;opacity:.20}

/* detail pages */
.room-intro{background:#f3eee4;color:#14120f}
.room-intro::before{background-image:var(--texture-light);background-size:980px 980px;opacity:.52}
.room-gallery{background:#181614;color:#f5efe6}
.room-gallery::before{background-image:var(--texture-dark);background-size:960px 960px;opacity:.24}
.room-experience{background:#161411;color:#f2ece2}
.room-experience::before{background-image:var(--texture-dark);background-size:960px 960px;opacity:.22}
.room-price{background:#f2ede3;color:#15120e}
.room-price::before{background-image:var(--texture-light);background-size:980px 980px;opacity:.54}
.room-footer{background:#12100e;color:#efe8de}
.room-footer::before{background-image:var(--texture-dark);background-size:960px 960px;opacity:.20}

/* improve readability over texture */
.room-gallery .room-kicker,.room-experience .room-kicker,.room-footer .room-kicker{color:rgba(239,232,222,.55)}
.room-gallery p,.room-experience p,.room-footer p,.room-gallery span,.room-experience span,.room-footer span{color:rgba(239,232,222,.72)}
.room-intro .room-kicker,.room-price .room-kicker{color:#8f7a62}
.room-intro p,.room-price p,.room-intro li,.room-price li,.room-intro span,.room-price span{color:#595147}
.room-gallery .room-photo,.room-gallery .price-line,.room-price .price-line,.room-intro .room-facts,.room-experience .ritual-row{
  backdrop-filter:saturate(1.02);
}
.room-gallery .room-photo,.room-intro .room-hero-panel,.room-price .price-table,.room-experience .ritual-row,.room-footer .room-footer-inner{
  box-shadow:0 10px 28px rgba(0,0,0,.04);
}

/* Only keep the single hero → first section transition from home-visual-fixes.css.
   All other inter-section gradients are removed. */
.public::after,.rooms::after,.gallery::after,.contacts::after,
.room-intro::after,.room-gallery::after,.room-experience::after,.room-price::after{display:none!important;content:none!important;background:none!important;height:0!important}

@media (max-width: 900px){
  .public::before,.rooms::before,.gallery::before,.contacts::before,.footer::before,
  .room-intro::before,.room-gallery::before,.room-experience::before,.room-price::before,.room-footer::before{
    background-size:760px 760px;
  }
}
