:root{--primary:#8B1E3F;--primary-dark:#6B1730;--accent:#C9A961;--accent-light:#E0C685;--ink:#0A0C10;--ink-soft:#3A3D44;--bg:#FFFFFF;--bg-soft:#F7F4EE;--bg-cream:#FAF7F0;--border:rgba(10,12,16,.08);--font-display:"Fraunces",Georgia,serif;--font-body:"Inter",-apple-system,sans-serif;--shadow-sm:0 2px 8px rgba(10,12,16,.06);--shadow-md:0 8px 32px rgba(10,12,16,.1);--shadow-lg:0 20px 60px rgba(10,12,16,.18);--ease:cubic-bezier(.4,0,.2,1)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none;transition:opacity .3s var(--ease)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:400;letter-spacing:-.02em;line-height:1.1}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;padding:20px 48px;display:flex;align-items:center;justify-content:space-between;transition:all .4s var(--ease);background:transparent}.site-header.scrolled{background:#fffffffa;backdrop-filter:blur(20px);padding:14px 48px;box-shadow:var(--shadow-sm)}.logo{display:flex;align-items:center;gap:12px;z-index:101}.logo img{height:52px;width:auto;transition:height .3s var(--ease);filter:brightness(0) invert(1)}.site-header.scrolled .logo img{filter:none;height:44px}.nav-main{display:flex;align-items:center;gap:36px}.nav-main a{font-size:13px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:#fff;position:relative;transition:color .3s var(--ease)}.site-header.scrolled .nav-main a{color:var(--ink)}.nav-main a:after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:1px;background:var(--accent);transition:width .3s var(--ease)}.nav-main a:hover:after{width:100%}.btn-book-nav{padding:12px 24px;border:1px solid currentColor;font-size:12px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:transparent;color:#fff;transition:all .3s var(--ease);font-family:var(--font-body)}.site-header.scrolled .btn-book-nav{color:var(--primary);border-color:var(--primary)}.btn-book-nav:hover{background:var(--accent);color:var(--ink);border-color:var(--accent)}.menu-toggle{display:none;background:none;border:none;color:#fff;font-size:24px;cursor:pointer;z-index:101}.site-header.scrolled .menu-toggle{color:var(--ink)}.hero{position:relative;height:100vh;min-height:720px;width:100%;overflow:hidden;display:flex;align-items:flex-end}.hero-img{position:absolute;inset:0;z-index:1}.hero-img img{width:100%;height:100%;object-fit:cover;animation:slowZoom 20s ease-out forwards}@keyframes slowZoom{0%{transform:scale(1.08)}to{transform:scale(1)}}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0a0c1080,#0a0c1033 40%,#0a0c10d9);z-index:2}.hero-content{position:relative;z-index:3;width:100%;padding:0 64px 100px;color:#fff;max-width:1400px;margin:0 auto}.hero-tag{font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);margin-bottom:24px;opacity:0;animation:fadeUp 1s var(--ease) .3s forwards}.hero-tag:before{content:"";display:inline-block;width:40px;height:1px;background:var(--accent);margin-right:16px;vertical-align:middle}.hero h1{font-size:clamp(40px,6vw,84px);font-weight:300;font-style:italic;max-width:1000px;margin-bottom:28px;opacity:0;animation:fadeUp 1s var(--ease) .5s forwards}.hero h1 em{font-style:normal;color:var(--accent)}.hero-sub{font-size:18px;max-width:580px;font-weight:300;line-height:1.7;opacity:0;animation:fadeUp 1s var(--ease) .7s forwards;color:#ffffffe6}.hero-stars{position:absolute;top:140px;right:64px;z-index:3;display:flex;gap:6px;color:var(--accent);font-size:18px;opacity:0;animation:fadeUp 1s var(--ease) .9s forwards}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.booking-bar{position:relative;z-index:10;margin:-60px auto 0;max-width:1280px;background:#fff;box-shadow:var(--shadow-lg);padding:32px 40px;display:grid;grid-template-columns:repeat(5,1fr);gap:24px;align-items:end}.bb-field{display:flex;flex-direction:column;gap:6px}.bb-field label{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-soft);font-weight:500}.bb-field input,.bb-field select{border:none;border-bottom:1px solid var(--border);padding:10px 0;font-family:var(--font-body);font-size:15px;color:var(--ink);background:transparent;outline:none;transition:border-color .3s var(--ease)}.bb-field input:focus,.bb-field select:focus{border-color:var(--primary)}.bb-submit{background:var(--primary);color:#fff;border:none;padding:16px 32px;font-family:var(--font-body);font-size:12px;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:all .3s var(--ease);font-weight:500}.bb-submit:hover{background:var(--ink);letter-spacing:.22em}section{padding:120px 64px}.section-inner{max-width:1400px;margin:0 auto}.section-head{text-align:center;max-width:780px;margin:0 auto 80px}.kicker{font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--primary);margin-bottom:20px;font-weight:500;display:inline-block;position:relative;padding:0 24px}.kicker:before,.kicker:after{content:"";position:absolute;top:50%;width:16px;height:1px;background:var(--accent)}.kicker:before{left:-8px}.kicker:after{right:-8px}.section-head h2{font-size:clamp(36px,4.5vw,60px);margin-bottom:24px;font-weight:300}.section-head h2 em{font-style:italic;color:var(--primary)}.section-lead{font-size:17px;color:var(--ink-soft);line-height:1.8;max-width:640px;margin:0 auto}.heritage{background:var(--bg-cream)}.heritage-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:80px;align-items:center}.heritage-img{position:relative;aspect-ratio:4/5;overflow:hidden}.heritage-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}.heritage-img:hover img{transform:scale(1.04)}.heritage-img:before{content:"";position:absolute;inset:-20px 30px 30px -20px;border:1px solid var(--accent);z-index:-1;pointer-events:none}.heritage-text .kicker{padding:0;margin-bottom:18px}.heritage-text .kicker:before,.heritage-text .kicker:after{display:none}.heritage-text h2{font-size:clamp(34px,4vw,54px);margin-bottom:28px;line-height:1.15}.heritage-text p{font-size:16px;color:var(--ink-soft);line-height:1.85;margin-bottom:20px}.heritage-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px;padding-top:48px;border-top:1px solid var(--border)}.stat-num{font-family:var(--font-display);font-size:48px;color:var(--primary);font-weight:300;font-style:italic;line-height:1}.stat-label{font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-soft);margin-top:8px}.guest-marquee{margin-top:36px;padding:20px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);font-family:var(--font-display);font-style:italic;font-size:15px;color:var(--ink-soft);overflow:hidden;white-space:nowrap}.guest-marquee span{display:inline-block;animation:slideMarquee 30s linear infinite;padding-left:100%}@keyframes slideMarquee{0%{transform:translate(0)}to{transform:translate(-100%)}}.rooms{background:var(--bg)}.rooms-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.room-card{position:relative;overflow:hidden;background:#fff;transition:transform .5s var(--ease)}.room-card:hover{transform:translateY(-6px)}.room-img{aspect-ratio:4/5;overflow:hidden;position:relative}.room-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.room-card:hover .room-img img{transform:scale(1.06)}.room-img:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(10,12,16,.65) 100%);pointer-events:none}.room-meta{position:absolute;top:24px;left:24px;color:#fff;font-size:11px;letter-spacing:.2em;text-transform:uppercase;background:#0006;backdrop-filter:blur(8px);padding:8px 14px}.room-body{padding:28px 4px 8px}.room-body h3{font-size:26px;margin-bottom:10px;font-weight:400}.room-body p{font-size:14px;color:var(--ink-soft);line-height:1.7;margin-bottom:20px}.room-cta{display:inline-flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--primary);font-weight:500;transition:gap .3s var(--ease)}.room-cta:hover{gap:16px}.room-cta:after{content:"→";transition:transform .3s var(--ease)}.rooms-cta{text-align:center;margin-top:72px}.btn-line{display:inline-block;padding:18px 44px;border:1px solid var(--ink);font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:500;transition:all .3s var(--ease)}.btn-line:hover{background:var(--ink);color:#fff}.split{padding:0;background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr 1fr;min-height:720px}.split-img{position:relative;overflow:hidden}.split-img img{width:100%;height:100%;object-fit:cover}.split-text{padding:100px 80px;display:flex;flex-direction:column;justify-content:center}.split-text .kicker{color:var(--accent)}.split-text h2{font-size:clamp(36px,3.5vw,52px);margin-bottom:28px;color:#fff}.split-text p{color:#ffffffbf;line-height:1.85;margin-bottom:18px;font-size:16px}.split-text .btn-line{color:#fff;border-color:#fff6;margin-top:24px;align-self:flex-start}.split-text .btn-line:hover{background:var(--accent);color:var(--ink);border-color:var(--accent)}.spa{background:var(--bg-soft);position:relative;overflow:hidden}.spa-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:center}.spa-text h2{font-size:clamp(36px,4vw,56px);margin-bottom:28px}.spa-text p{font-size:16px;color:var(--ink-soft);line-height:1.85;margin-bottom:20px}.spa-features{list-style:none;margin-top:32px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.spa-features li{font-size:14px;padding-left:24px;position:relative;color:var(--ink-soft)}.spa-features li:before{content:"";position:absolute;left:0;top:10px;width:14px;height:1px;background:var(--accent)}.spa-gallery{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:16px;aspect-ratio:1/1}.spa-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.spa-gallery a{overflow:hidden;display:block}.spa-gallery a:hover img{transform:scale(1.08)}.spa-gallery a:first-child{grid-row:span 2}.offers{background:#fff}.offers-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.offer-card{position:relative;aspect-ratio:3/4;overflow:hidden;cursor:pointer}.offer-card img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}.offer-card:hover img{transform:scale(1.05)}.offer-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0a0c1000 30%,#0a0c10e6)}.offer-body{position:absolute;left:32px;right:32px;bottom:32px;color:#fff;z-index:2}.offer-tag{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}.offer-body h3{font-size:28px;margin-bottom:12px;font-weight:400}.offer-body p{font-size:14px;line-height:1.6;color:#ffffffd9;margin-bottom:20px}.offer-link{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#fff;border-bottom:1px solid var(--accent);padding-bottom:4px;display:inline-block}.amenities{background:var(--ink);color:#fff}.amenities .section-head h2{color:#fff}.amenities .section-lead{color:#ffffffb3}.amenities-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#ffffff14;border:1px solid rgba(255,255,255,.08)}.amenity{background:var(--ink);padding:36px 24px;text-align:center;transition:background .4s var(--ease)}.amenity:hover{background:var(--primary-dark)}.amenity-icon{font-size:24px;color:var(--accent);margin-bottom:14px;font-family:var(--font-display);font-style:italic}.amenity-name{font-size:13px;letter-spacing:.06em;color:#ffffffe6}.cta-strip{padding:140px 64px;background:linear-gradient(#0a0c1099,#0a0c10b3),url(https://hss-studio.pages.dev/img/hotel-moskva/hero/2?w=1920&q=80) center/cover fixed;color:#fff;text-align:center}.cta-strip h2{font-size:clamp(40px,5vw,68px);margin-bottom:24px;font-weight:300;font-style:italic}.cta-strip p{font-size:18px;color:#ffffffd9;max-width:580px;margin:0 auto 40px;line-height:1.7}.btn-gold{display:inline-block;padding:20px 56px;background:var(--accent);color:var(--ink);font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:600;transition:all .3s var(--ease)}.btn-gold:hover{background:#fff;transform:translateY(-2px);box-shadow:var(--shadow-lg)}.site-footer{background:#06080c;color:#ffffffbf;padding:100px 64px 40px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:60px;max-width:1400px;margin:0 auto 60px}.footer-brand img{height:60px;width:auto;margin-bottom:24px;filter:brightness(0) invert(1)}.footer-brand p{font-size:14px;line-height:1.8;max-width:340px;margin-bottom:20px}.footer-col h4{font-family:var(--font-body);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin-bottom:22px;font-weight:600}.footer-col ul{list-style:none}.footer-col li{margin-bottom:12px}.footer-col a{font-size:14px;transition:color .3s var(--ease)}.footer-col a:hover{color:var(--accent)}.footer-col p{font-size:14px;line-height:1.8;margin-bottom:8px}.footer-bottom{max-width:1400px;margin:0 auto;padding-top:32px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;font-size:12px;color:#ffffff80}.reveal{opacity:0;transform:translateY(40px);transition:opacity 1s var(--ease),transform 1s var(--ease)}.reveal.in{opacity:1;transform:translateY(0)}@media(max-width:1024px){.nav-main{gap:24px}.heritage-grid,.spa-grid,.split{grid-template-columns:1fr}.split-text{padding:80px 48px}.rooms-grid,.offers-grid{grid-template-columns:repeat(2,1fr)}.amenities-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:768px){.site-header{padding:16px 20px}.site-header.scrolled{padding:12px 20px}.nav-main{position:fixed;top:0;right:-100%;width:80%;height:100vh;background:#fff;flex-direction:column;justify-content:center;gap:24px;transition:right .4s var(--ease);box-shadow:var(--shadow-lg)}.nav-main.open{right:0}.nav-main a{color:var(--ink);font-size:15px}.menu-toggle{display:block}.hero{min-height:600px}.hero-content{padding:0 24px 80px}.hero-stars{top:90px;right:24px}section{padding:80px 24px}.booking-bar{grid-template-columns:1fr 1fr;padding:24px;margin:-40px 24px 0;gap:18px}.bb-submit{grid-column:span 2}.rooms-grid,.offers-grid,.amenities-grid,.spa-features{grid-template-columns:1fr}.heritage-grid,.spa-grid{gap:48px}.split-text{padding:60px 24px}.heritage-stats{grid-template-columns:1fr;gap:20px}.footer-grid{grid-template-columns:1fr;gap:40px}.footer-bottom{flex-direction:column;gap:12px;text-align:center}.cta-strip{padding:90px 24px;background-attachment:scroll}}
