:root{--ink:#202622;--muted:#606862;--accent:#a54a2a;--accent-dark:#81371f;--soft:#f4f1eb;--line:#d9d8d2;--white:#fff;--blue:#58a9df;--max:1240px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;background:#fdfdfc;color:var(--ink);font:16px/1.5 Arial,"Segoe UI",sans-serif}
img{display:block;width:100%;object-fit:cover}
a{color:inherit}
.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}
.skip{position:fixed;left:10px;top:-80px;z-index:200;background:#fff;padding:10px}
.skip:focus{top:10px}
.demo{padding:5px 12px;background:#202622;color:#fff;text-align:center;font-size:10px}
.header{position:sticky;top:10px;z-index:80;display:flex;align-items:center;gap:22px;width:min(var(--max),calc(100% - 32px));min-height:68px;margin:10px auto;padding:9px 14px 9px 20px;background:rgba(255,255,255,.97);border:1px solid var(--line);border-radius:20px;box-shadow:0 8px 24px #20262212}
.brand{display:grid;min-width:170px;text-decoration:none}
.brand strong{font-size:23px;line-height:1}
.brand span{margin-top:4px;font-size:8px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.header nav{display:flex;gap:2px;margin-left:auto;padding:4px;background:var(--soft);border-radius:13px}
.menu-cover{display:none}
.header nav a{padding:9px 12px;text-decoration:none;font-size:12px;font-weight:800;border-radius:10px}
.header nav a:hover{color:var(--accent)}
.header nav a.active{color:var(--accent);background:var(--soft)}
.header-cta,.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 20px;text-decoration:none;font-weight:900;border:0;border-radius:14px}
.header-cta,.button.primary{background:var(--accent);color:#fff}
.header-cta:hover,.button.primary:hover{background:var(--accent-dark)}
.button.secondary{background:#fff;color:var(--ink);border:1px solid var(--ink)}
.menu-button{display:none}
.eyebrow{margin:0 0 10px;color:var(--accent);font-size:10px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
h1,h2,h3{margin-top:0;line-height:1.1}
h1{font-size:clamp(38px,4vw,58px);letter-spacing:-.035em}
h2{font-size:clamp(32px,3.4vw,46px);letter-spacing:-.03em}
h3{font-size:26px}
.hero{position:relative;width:min(1420px,calc(100% - 32px));height:680px;margin:16px auto 0;overflow:hidden;background:var(--soft);border-radius:30px}
.hero-photo{position:absolute;inset:0;height:100%}
.hero:after{position:absolute;inset:0;background:rgba(18,28,22,.06);content:""}
.hero-panel{position:absolute;left:max(32px,calc((100% - var(--max))/2));bottom:34px;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) 190px 220px;align-items:center;gap:26px;width:min(970px,calc(100% - 64px));padding:30px;background:rgba(255,255,255,.96);border-radius:24px;box-shadow:0 16px 45px #17251d32}
.hero-panel h1{max-width:620px;margin-bottom:10px;font-size:clamp(39px,4vw,57px);line-height:1.02}
.hero-intro{min-width:0}
.hero-summary{margin:0;color:var(--muted)}
.price-first{display:grid;grid-template-columns:auto 1fr;align-items:end;margin:0;padding:16px 20px;border-left:1px solid var(--line)}
.price-first span{grid-column:1/-1;font-size:12px;font-weight:800;text-transform:uppercase}
.price-first strong{font-size:48px;line-height:1;color:var(--accent)}
.price-first small{padding:0 0 4px 10px;color:var(--muted)}
.actions{display:grid;gap:9px}
.quick{display:grid;grid-template-columns:repeat(4,1fr);max-width:1240px;margin:18px auto 0;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:18px}
.quick div{padding:22px 25px;border-right:1px solid var(--line)}
.quick div:last-child{border:0}
.quick strong,.quick span{display:block}
.quick strong{font-size:23px}
.quick span{color:var(--muted);font-size:10px;text-transform:uppercase}
.section{padding:82px 0}
.section-heading{display:grid;grid-template-columns:1fr .75fr;gap:70px;align-items:end;margin-bottom:35px}
.section-heading h2{margin:0}
.section-heading>p{margin:0;color:var(--muted)}
.rooms{background:var(--soft)}
.comparison-head{display:grid;grid-template-columns:290px 1fr 120px 120px 170px;padding:10px 20px 10px 0;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}
.comparison-head span:first-child{grid-column:1/3}
.room-row{display:grid;grid-template-columns:290px 1fr 120px 120px 170px;grid-template-rows:auto auto;align-items:center;margin-bottom:18px;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:20px}
.room-row>img{grid-row:1/3;width:290px;height:280px}
.room-main{padding:24px}
.room-main h3{margin:0 0 4px}
.room-main p{margin:0;color:var(--muted);font-size:12px}
.room-price{display:grid}
.room-price small,.room-price span{font-size:11px}
.room-price strong{font-size:30px;color:var(--accent)}
.room-fact{display:grid}
.room-fact strong{font-size:18px}
.room-fact span{color:var(--muted);font-size:11px}
.room-row ul{display:grid;grid-template-columns:repeat(4,1fr);grid-column:2/5;gap:0;margin:0 24px 24px;padding:0;border-top:1px solid var(--line);list-style:none}
.room-row li{padding:10px 7px 0;font-size:11px}
.room-row .button{grid-column:5;grid-row:2;margin:0 20px 20px}
.included{display:flex;align-items:center;gap:22px;padding:18px 22px;background:var(--ink);color:#fff;border-radius:16px}
.included span{font-size:12px}
.split{display:grid;grid-template-columns:1.1fr .9fr;align-items:stretch}
.split>img{height:510px;border-radius:24px 0 0 24px}
.split>div{display:flex;flex-direction:column;justify-content:center;padding:55px;background:#fff;border:1px solid var(--line);border-left:0;border-radius:0 24px 24px 0}
.split>div>p:not(.eyebrow){color:var(--muted)}
.note{padding:16px;border-left:4px solid var(--accent);background:var(--soft)}
.practical{background:var(--soft)}
.practical-grid{display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;border:1px solid var(--line);border-radius:18px}
.practical-grid div{display:grid;min-height:105px;align-content:center;padding:18px;background:#fff;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.practical-grid span{color:var(--muted);font-size:11px;text-transform:uppercase}
.practical-grid strong{margin-top:6px;font-size:17px}
.service-photos{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}
.service-photos figure{margin:0;overflow:hidden;background:#fff;border-radius:18px}
.service-photos img{height:360px}
.service-photos figcaption{padding:13px;font-size:12px;font-weight:800}
.location-grid{display:grid;grid-template-columns:1fr .62fr;grid-template-rows:auto 400px;overflow:hidden;border:1px solid var(--line);border-radius:22px}
.location-grid>img{height:420px}
.nearby{padding:38px}
.nearby p{display:flex;justify-content:space-between;gap:25px;margin:0;padding:13px 0;border-bottom:1px solid var(--line)}
.nearby p span{color:var(--muted)}
.nearby .button{margin-top:25px}
.location-grid iframe{grid-column:1/-1;width:100%;height:400px;border:0}
.availability{background:var(--soft)}
.form-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:75px}
.form-layout>div>p:not(.eyebrow){color:var(--muted)}
.phone{display:grid;margin-top:30px}
.phone a{font-size:25px;font-weight:900;color:var(--accent)}
form{padding:32px;background:#fff;border:1px solid var(--line);border-radius:22px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
label{display:grid;gap:6px;font-size:12px;font-weight:800}
input,select,textarea{width:100%;padding:12px;border:1px solid #777;border-radius:10px;background:#fff;font:inherit}
.full{grid-column:1/-1}
.privacy{display:flex;align-items:flex-start;margin:17px 0;font-weight:400}
.privacy input{width:18px;margin:3px 8px 0 0}
.status{min-height:22px;margin:8px 0 0;font-weight:800}
.personalize-tip{position:fixed;right:0;top:55%;z-index:100;width:290px;padding:17px 34px 17px 19px;background:#fff;border:1px solid #17252c29;border-left:4px solid #00aae5;border-radius:12px 0 0 12px;box-shadow:0 8px 24px #17252c21;transform:translateY(-50%)}
.personalize-tip.hidden{display:none}
.personalize-tip button{position:absolute;right:8px;top:6px;border:0;background:transparent}
.personalize-tip>span{font-size:9px;font-weight:900;letter-spacing:.12em}
.personalize-tip strong,.personalize-tip p{display:block}
.personalize-tip p{margin:5px 0 0;font-size:11px}
footer{background:var(--ink);color:#fff}
.footer-main{display:flex;justify-content:space-between;padding:35px 0;border-bottom:1px solid #ffffff2b}
.footer-main div{display:grid}
.footer-main a,.footer-main span{color:#ced3cf}
.wainet{display:grid;justify-items:center;gap:17px;padding:35px}
.wainet p{margin:0;color:#ced3cf;font-size:12px}
.wainet-button{display:flex;align-items:center;gap:10px;padding:15px 23px;background:var(--blue);color:#fff;text-decoration:none;font-weight:900}
.wainet-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

@media(max-width:1050px){body.menu-open{overflow:hidden}
.menu-button{position:relative;z-index:110;display:flex;align-items:center;gap:9px;margin-left:auto;padding:11px 15px;border:0;border-radius:14px;background:var(--accent);color:#fff;font-weight:900;transition:background .2s,transform .2s}
.menu-button span,.menu-button span:before,.menu-button span:after{display:block;width:20px;height:2px;background:currentColor}
.menu-button span{position:relative}
.menu-button span:before,.menu-button span:after{position:absolute;left:0;content:"";transition:transform .2s,top .2s}
.menu-button span:before{top:-6px}
.menu-button span:after{top:6px}
.menu-button[aria-expanded="true"]{position:fixed;top:31px;right:31px;background:var(--ink)}
.menu-button[aria-expanded="true"] span{background:transparent}
.menu-button[aria-expanded="true"] span:before{top:0;transform:rotate(45deg)}
.menu-button[aria-expanded="true"] span:after{top:0;transform:rotate(-45deg)}
.menu-button[aria-expanded="true"] b{display:none}
.header nav{position:fixed;inset:16px;z-index:100;display:none;align-content:start;justify-items:center;gap:5px;margin:0;padding:18px 24px 30px;background:#fff;border:1px solid #ffffff55;border-radius:28px;box-shadow:0 0 0 100vmax rgba(23,31,26,.72),0 24px 70px #10171255;overflow-y:auto}
.header nav.open{display:grid}
.menu-cover{display:grid;width:min(760px,100%);margin-bottom:12px;overflow:hidden;background:var(--soft);border-radius:20px}
.menu-cover img{height:230px}
.menu-cover p{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0;padding:16px 20px}
.menu-cover p strong{font-size:20px}
.menu-cover p span{color:var(--muted);font-size:12px}
.header nav a{width:min(420px,100%);padding:15px 20px;text-align:center;font-size:27px;border-radius:14px}
.header nav a:hover{background:var(--soft)}
.header nav a.active{color:#fff;background:var(--ink);box-shadow:0 8px 22px rgba(31,38,32,.16)}
.menu-open .personalize-tip{display:none}
.header-cta{display:none}
.hero{height:650px}
.hero-photo{height:100%}
.hero-panel{left:24px;grid-template-columns:1fr 230px;width:calc(100% - 48px);gap:22px;padding:26px}
.hero-intro{grid-column:1/-1}
.price-first{border-left:0;border-top:1px solid var(--line);padding:18px 0}
.comparison-head{display:none}
.room-row{grid-template-columns:260px 1fr 110px 110px;grid-template-rows:auto auto auto}
.room-row>img{grid-row:1/4;width:260px;height:100%}
.room-row ul{grid-column:2/5}
.room-row .button{grid-column:2/5;grid-row:3}
.split,.form-layout{grid-template-columns:1fr}
.split>div{border-left:1px solid var(--line);border-top:0}
.practical-grid{grid-template-columns:1fr 1fr}
.location-grid{grid-template-columns:1fr}
.location-grid>img{height:430px}
.location-grid iframe{grid-column:auto}
.personalize-tip{inset:auto 12px 12px;width:auto;transform:none;border:1px solid #17252c29;border-top:4px solid #00aae5;border-radius:10px}
}

@media(max-width:600px){.wrap{width:calc(100% - 28px)}
.demo{font-size:8px}
.header{min-height:66px;padding-inline:14px}
.header nav{inset:10px;padding:14px 14px 24px;border-radius:24px}
.menu-cover{margin-bottom:8px;border-radius:16px}
.menu-cover img{height:180px}
.menu-cover p{align-items:flex-start;flex-direction:column;gap:2px;padding:12px 15px}
.header nav a{padding:11px 16px;font-size:23px}
.menu-button[aria-expanded="true"]{top:24px;right:24px}
.brand strong{font-size:20px}
.hero{display:flex;width:calc(100% - 20px);height:auto;overflow:visible;flex-direction:column;background:transparent;border-radius:22px}
.hero:after{display:none}
.hero-photo{position:relative;order:1;height:360px;border-radius:22px}
.hero-panel{position:relative;left:auto;bottom:auto;order:2;grid-template-columns:1fr;width:calc(100% - 20px);margin:-58px auto 0;gap:16px;padding:24px 20px;border-radius:20px}
.hero-intro{grid-column:auto}
.hero-panel h1{font-size:36px}
.actions{flex-direction:column}
.quick{grid-template-columns:1fr 1fr}
.quick div:nth-child(2){border-right:0}
.section{padding:60px 0}
.section-heading{grid-template-columns:1fr;gap:15px}
.room-row{display:block}
.room-row>img{width:100%;height:260px}
.room-main,.room-price,.room-fact{padding:14px 18px 0}
.room-price{display:flex;align-items:baseline;gap:7px}
.room-fact{display:inline-grid;width:48%}
.room-row ul{grid-template-columns:1fr 1fr;margin:16px 18px}
.room-row .button{display:flex;margin:18px}
.included{align-items:flex-start;flex-direction:column;gap:7px}
.split>img{height:330px}
.split>div{padding:34px 22px}
.practical-grid{grid-template-columns:1fr 1fr}
.practical-grid div{min-height:95px;padding:14px}
.service-photos{grid-template-columns:1fr}
.service-photos img{height:280px}
.location-grid{grid-template-rows:auto auto 360px}
.location-grid>img{height:300px}
.nearby{padding:25px 20px}
.nearby p{align-items:flex-start;flex-direction:column;gap:2px}
.location-grid iframe{height:360px}
.form-layout{gap:28px}
form{padding:24px 18px}
.form-grid{grid-template-columns:1fr}
.full{grid-column:auto}
.footer-main{flex-direction:column;gap:20px}
.wainet-button{width:min(300px,100%);justify-content:center}
}
