
/* Nesterov Plaza adaptation on native Kingho component vocabulary */
:root{--ink:#132338;--gold:#b6935a;--paper:#f7f4ee;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.65 Arial,sans-serif;background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.auto-container{width:min(1180px,calc(100% - 48px));margin:auto}.main-header{height:92px;background:#fff;display:flex;align-items:center;position:relative;z-index:30;border-bottom:1px solid #e9e2d6}.header-upper .auto-container{display:flex;align-items:center;gap:30px}.logo-box{flex:0 0 210px}.logo-text{font:700 23px Georgia,serif;letter-spacing:.08em}.logo-text small{display:block;font:11px Arial,sans-serif;letter-spacing:.22em;color:var(--gold)}.main-menu{margin-left:auto}.main-menu ul{display:flex;gap:24px;align-items:center;margin:0;padding:0;list-style:none}.main-menu a{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.header-btn{background:var(--gold);color:#fff;padding:13px 18px;font-weight:700;white-space:nowrap}.nav-toggler{display:none;margin-left:auto;background:none;border:0;font-size:28px}.banner-section{position:relative;min-height:680px;color:#fff;background:center/cover no-repeat}.banner-section:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,25,43,.84),rgba(9,25,43,.22))}.banner-section .content-box{position:relative;padding:115px 0 210px;max-width:760px}.banner-section h1{font:700 clamp(44px,6vw,82px)/1.02 Georgia,serif;margin:0 0 20px}.eyebrow{color:#e3c798;text-transform:uppercase;letter-spacing:.2em;font-weight:700}.lead{font-size:20px;max-width:660px}.booking-widget{position:absolute;z-index:3;left:50%;bottom:42px;transform:translateX(-50%);width:min(1180px,calc(100% - 48px));background:#fff;color:var(--ink);padding:22px;box-shadow:0 18px 50px #0004}.booking-widget form{display:grid;grid-template-columns:1fr 1fr .7fr .7fr auto;gap:12px;align-items:end}.booking-widget label{font-size:12px;text-transform:uppercase;font-weight:700}.booking-widget input,.booking-widget select{width:100%;padding:13px;border:1px solid #d8d3ca}.btn-style-one{background:var(--gold);color:#fff;border:0;padding:15px 22px;font-weight:700;cursor:pointer}.section{padding:88px 0}.section.alt{background:var(--paper)}.sec-title .sub-title{color:var(--gold);text-transform:uppercase;letter-spacing:.18em;font-weight:700}.sec-title h2{font:700 clamp(34px,4vw,54px)/1.15 Georgia,serif;margin:7px 0 24px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.fact{padding:24px;background:var(--paper);border-top:3px solid var(--gold)}.fact strong{display:block;font:700 31px Georgia,serif}.room-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}.room-block{background:#fff;box-shadow:0 12px 35px #14243a14}.room-block img{width:100%;height:320px;object-fit:cover}.room-block .inner-box{padding:26px}.room-block h3{font:700 28px Georgia,serif;margin:0 0 8px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.feature{padding:30px;border:1px solid #ded8cd;background:#fff}.feature h3{font:700 23px Georgia,serif}.page-title{min-height:420px;display:flex;align-items:end;padding:0 0 70px;color:#fff;background:center/cover no-repeat;position:relative}.page-title:before{content:"";position:absolute;inset:0;background:#10243ab8}.page-title .auto-container{position:relative}.page-title h1{font:700 clamp(42px,6vw,72px) Georgia,serif;margin:0}.prose{max-width:850px}.prose h2{font:700 36px Georgia,serif;margin-top:38px}.prose li{margin:.5em 0}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery img{height:230px;width:100%;object-fit:cover}.site-footer{background:#102238;color:#fff;padding:54px 0 24px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:35px}.footer-grid ul{list-style:none;padding:0}.footer-grid li{margin:7px 0}.copyright{border-top:1px solid #ffffff25;margin-top:34px;padding-top:20px;font-size:13px}.mobile-nav{display:none}.notice{background:#fff8e8;border-left:4px solid var(--gold);padding:15px}.map-link{display:inline-block;margin-top:15px;color:#8a6328;font-weight:700}
@media(max-width:1180px){.main-menu ul{gap:14px}.main-menu a{font-size:12px}.header-btn{padding:11px 12px}.logo-box{flex-basis:185px}}
@media(max-width:1024px){.main-menu,.header-btn{display:none}.nav-toggler{display:block}.main-header.open .mobile-nav{display:block;position:absolute;top:92px;left:0;right:0;background:#fff;padding:20px 24px;border-top:1px solid #ddd}.mobile-nav a{display:block;padding:11px 0;border-bottom:1px solid #eee;font-weight:700}.booking-widget form{grid-template-columns:1fr 1fr 1fr}.booking-widget .btn-style-one{grid-column:span 3}.banner-section .content-box{padding-top:95px}.feature-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){.auto-container{width:min(100% - 30px,1180px)}.banner-section{min-height:780px}.banner-section .content-box{padding:80px 0 350px}.booking-widget{width:calc(100% - 30px);bottom:24px}.booking-widget form{grid-template-columns:1fr 1fr}.booking-widget .btn-style-one{grid-column:span 2}.grid-2,.room-grid,.footer-grid{grid-template-columns:1fr}.facts{grid-template-columns:1fr 1fr}.feature-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}.section{padding:62px 0}.room-block img{height:260px}}
@media(max-width:390px){.logo-box{flex-basis:auto}.logo-text{font-size:19px}.booking-widget form{grid-template-columns:1fr}.booking-widget .btn-style-one{grid-column:auto}.banner-section{min-height:965px}.banner-section .content-box{padding-bottom:520px}.facts{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}}
.banner-section h1,.banner-section .lead{opacity:1!important;visibility:visible!important;transform:none!important;color:#fff!important}
.page-title h1{overflow-wrap:anywhere}
.banner-section{padding:0!important;height:calc(100vh - 92px)!important;min-height:650px!important}
.banner-section .content-box{padding:80px 0 190px}
.booking-widget{bottom:28px}
@media(max-width:768px){.banner-section{height:calc(100vh - 92px)!important;min-height:650px!important}.banner-section .content-box{padding:44px 0 330px}.booking-widget{bottom:14px;padding:14px}}
@media(max-width:390px){.booking-widget form{grid-template-columns:1fr 1fr;gap:6px}.booking-widget label{font-size:10px}.booking-widget input,.booking-widget select{padding:8px}.booking-widget .btn-style-one{grid-column:span 2;padding:11px}.banner-section .content-box{padding:32px 0 290px}.banner-section h1{font-size:42px}.lead{font-size:16px}}
