
:root{--navy:#07172B;--navy2:#11263C;--gold:#C6A369;--goldlight:#E9D7B5;--ivory:#F7F1E5;--white:#FFFEFC;--burgundy:#8B3E54;--ink:#273744;--muted:#67717A;--line:#DED4C3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(43px,5.2vw,78px);line-height:1.07;letter-spacing:-.025em}h2{font-size:clamp(36px,4.1vw,62px);line-height:1.14;letter-spacing:-.018em}h3{font-size:clamp(24px,2.5vw,34px)}p{line-height:1.8}button:focus-visible,a:focus-visible{outline:3px solid var(--burgundy);outline-offset:4px}.container{width:min(1230px,calc(100% - 70px));margin:auto}.eyebrow{font-size:11px;letter-spacing:.27em;text-transform:uppercase;color:var(--burgundy);font-weight:700}.gold{color:#A77B43}.accent{color:var(--burgundy)}.header{position:sticky;top:0;z-index:50;background:var(--navy);border-bottom:2px solid var(--gold);color:#fff;box-shadow:0 6px 22px #112d4520}.header-in{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:14px;min-width:250px}.brand img{width:92px;height:56px;object-fit:contain}.brand-title{display:block;font-family:Georgia,serif;font-size:23px;letter-spacing:.16em;color:#F2DEB9}.brand-caption{display:block;font-size:9px;letter-spacing:.27em;margin-top:6px;color:#fff}.nav{display:flex;gap:26px;align-items:center}.nav a{font-size:11px;letter-spacing:.15em;text-transform:uppercase;white-space:nowrap;transition:color .2s}.nav a:hover,.nav a[aria-current]{color:var(--goldlight)}.book{border:0;background:var(--burgundy);color:#fff;padding:16px 21px;font-size:11px;letter-spacing:.13em;text-transform:uppercase;display:inline-flex;gap:25px;align-items:center;justify-content:center;transition:background .2s,transform .2s;white-space:nowrap}.book:hover{background:#a44b65;transform:translateY(-1px)}.book.secondary{background:var(--navy)}.book.secondary:hover{background:var(--navy2)}.book.gold-btn{background:var(--goldlight);color:var(--navy)}.book.gold-btn:hover{background:#fff}.menu-btn{display:none;background:transparent;border:1px solid #fff8;color:#fff;padding:9px 12px;font-size:22px}.mobile-menu{display:none}.video-hero{position:relative;background:var(--navy);overflow:hidden;min-height:360px;aspect-ratio:16/8.1;max-height:760px}.video-hero video,.video-hero .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.video-hero .poster{background:url('assets/frame4.jpg') center/cover}.video-hero video{z-index:1}.video-hero:after{content:'';position:absolute;z-index:2;inset:0;background:linear-gradient(90deg,#091c2c85 0%,#091c2c24 64%,#091c2c1a),linear-gradient(0deg,#091c2c8a,transparent 43%);pointer-events:none}.video-hero-content{position:absolute;z-index:3;bottom:10%;left:max(calc((100% - 1230px)/2),35px);color:#fff;max-width:700px}.video-hero-content .eyebrow{color:var(--goldlight)}.video-hero-content h1{font-size:clamp(44px,5.2vw,76px);margin:18px 0 12px;text-shadow:0 2px 15px #091c2c5e}.video-hero-content p{font-size:15px;max-width:480px;color:#f9f1e4;margin-bottom:22px}.video-controls{position:absolute;z-index:4;bottom:22px;right:28px;display:flex;gap:9px}.video-controls button{background:#07172Bbb;border:1px solid #e9d7b588;color:#fff;padding:11px 14px;font-size:12px}.intro{background:var(--white);padding:68px 0;border-bottom:1px solid var(--line)}.intro-grid{display:grid;grid-template-columns:1fr 280px;gap:8%;align-items:center}.intro h2{margin:16px 0 17px}.intro p{color:var(--muted);font-size:15px;max-width:670px}.intro-side{border-left:1px solid var(--line);padding-left:35px;display:flex;flex-direction:column;gap:14px}.intro-side .book{width:100%}.small-note{font-size:11px;line-height:1.65;color:var(--muted)}.section{padding:105px 0}.section-head{text-align:center;max-width:750px;margin:0 auto 42px}.section-head h2{margin:14px 0 17px}.section-head p{color:var(--muted);font-size:15px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.tile{position:relative;overflow:hidden;background:#eee;min-height:410px}.tile img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .55s}.tile:hover img{transform:scale(1.035)}.tile:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#10283dc9,transparent 60%);pointer-events:none}.tile-caption{position:absolute;z-index:2;bottom:28px;left:26px;right:26px;color:#fff}.tile-caption span{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#ecd7b4}.tile-caption h3{margin:8px 0 0}.split{display:grid;grid-template-columns:1.06fr .94fr;gap:8%;align-items:center}.split.reverse{grid-template-columns:.94fr 1.06fr}.split img{width:100%;height:550px;object-fit:cover}.split .eyebrow{margin-bottom:16px}.split h2{margin:0 0 20px}.split p{font-size:15px;color:var(--muted);margin-bottom:25px}.light-section{background:var(--white)}.warm-section{background:#F1E4CE}.text-link{font-size:11px;text-transform:uppercase;letter-spacing:.15em;border-bottom:1px solid var(--burgundy);padding-bottom:8px;color:var(--navy);display:inline-block}.banner{background:var(--navy);color:#fff;padding:84px 0;text-align:center;border-top:4px solid var(--gold)}.banner .eyebrow{color:var(--goldlight)}.banner h2{margin:18px 0}.banner p{color:#e6e5e2}.footer{background:#061323;color:#e9e4dc;padding:55px 0 25px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:30px}.footer h3{font-size:27px;color:var(--goldlight)}.footer p,.footer a{font-size:13px;color:#e9e4dc}.footer a:hover{color:var(--goldlight)}.footer-links{display:flex;flex-direction:column;gap:14px}.footer-bottom{margin-top:45px;padding-top:19px;border-top:1px solid #ffffff36;display:flex;justify-content:space-between;gap:25px;font-size:11px;color:#d2d7d8}.page-hero{position:relative;min-height:450px;background:var(--navy);color:#fff;display:flex;align-items:end;padding:80px 0 55px}.page-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0d233dd1,#0d233d30),var(--bg) center/cover}.page-hero .container{position:relative}.page-hero h1{margin:18px 0 0}.page-hero .eyebrow{color:var(--goldlight)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.gallery button{padding:0;border:0;background:none;overflow:hidden}.gallery img{width:100%;height:300px;object-fit:cover;transition:transform .3s}.gallery button:hover img{transform:scale(1.04)}.info-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.info-card{background:#fff;padding:33px;border-top:3px solid var(--gold)}.info-card h3{font-size:27px}.info-card p{font-size:14px;color:var(--muted)}.notice{padding:20px 23px;background:#f2e6d1;border-left:3px solid var(--burgundy);font-size:13px;color:#50565a;line-height:1.8}.modal{position:fixed;z-index:100;inset:0;background:#0b1e30dd;display:none;align-items:center;justify-content:center;padding:18px}.modal.open{display:flex}.modal-panel{position:relative;background:var(--white);padding:48px;width:min(560px,100%);max-height:90vh;overflow:auto}.modal-panel h2{font-size:38px;margin:14px 0}.modal-panel p{font-size:14px;color:var(--muted)}.close{position:absolute;top:15px;right:20px;border:0;background:transparent;font-size:29px;color:var(--navy)}.modal-panel .book{margin-top:8px}.lightbox{position:fixed;inset:0;background:#081827ef;z-index:110;display:none;align-items:center;justify-content:center;padding:55px 25px}.lightbox.open{display:flex}.lightbox img{max-width:95vw;max-height:82vh;object-fit:contain}.lightbox button{position:absolute;right:20px;top:15px;background:transparent;border:0;color:white;font-size:35px}.muted{color:var(--muted)}
@media(max-width:1050px){.nav{display:none}.menu-btn{display:block}.header-in{min-height:78px}.header .book{margin-left:auto}.mobile-menu.open{display:flex;flex-direction:column;gap:20px;background:var(--navy);border-top:1px solid #ffffff44;padding:24px 35px}.mobile-menu a{font-size:13px;letter-spacing:.13em;text-transform:uppercase}.video-hero{aspect-ratio:16/9}.video-hero-content{left:35px}.cards{grid-template-columns:repeat(2,1fr)}.cards .tile:last-child{grid-column:span 2}.info-cards{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.container{width:calc(100% - 36px)}.header-in{min-height:72px;gap:10px}.brand{min-width:0;gap:7px}.brand img{width:48px;height:39px}.brand-title{font-size:14px;letter-spacing:.09em}.brand-caption{font-size:7px;letter-spacing:.13em}.header .book{padding:12px 9px;font-size:9px;letter-spacing:0;gap:0}.header .book .arrow{display:none}.menu-btn{padding:6px 9px;font-size:19px}.video-hero{aspect-ratio:4/5;min-height:430px;max-height:660px}.video-hero video,.video-hero .poster{object-fit:cover}.video-hero-content{left:22px;right:22px;bottom:17%}.video-hero-content h1{font-size:45px}.video-hero-content p{font-size:13px}.video-controls{right:14px;bottom:12px}.video-controls button{padding:9px;font-size:10px}.intro{padding:48px 0}.intro-grid,.split,.split.reverse{grid-template-columns:1fr;gap:28px}.intro-side{border-left:0;border-top:1px solid var(--line);padding:22px 0 0}.section{padding:65px 0}.section-head{margin-bottom:30px}.cards,.info-cards,.gallery{grid-template-columns:1fr}.cards .tile:last-child{grid-column:auto}.tile{min-height:350px}.split img{height:330px}.split.reverse img{order:-1}.gallery img{height:260px}.footer-grid{grid-template-columns:1fr;gap:16px}.footer-bottom{flex-direction:column;gap:8px}.page-hero{min-height:340px;padding:55px 0 35px}.modal-panel{padding:34px 25px}.modal-panel h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Cheval Blanc-inspired editorial refinement: less UI, more image and breathing room. */
.header{box-shadow:none;border-bottom:1px solid #C6A36988}
.header-in{min-height:108px}
.brand{gap:17px}.brand img{width:105px;height:65px;object-fit:contain}
.brand-title{font-family:Georgia,'Times New Roman',serif;font-size:23px;letter-spacing:.11em;color:#F0D6A8}
.nav a{font-size:11px;letter-spacing:.17em}
.video-hero{max-height:850px;aspect-ratio:16/9}
.video-hero:after{background:linear-gradient(90deg,#061323aa 0%,#06132311 75%),linear-gradient(0deg,#061323aa,transparent 50%)}
.video-hero-content{bottom:11%;max-width:800px}.video-hero-content h1{font-size:clamp(52px,6vw,91px);line-height:1.08}
.video-hero-content p{font-size:15px;letter-spacing:.02em}
.intro{padding:100px 0}.section{padding:125px 0}.section-head{margin-bottom:60px}
.editorial-cards{grid-template-columns:1.12fr .88fr;gap:24px}.editorial-cards .tile{min-height:520px}.editorial-cards .tile:last-child{grid-column:span 2;min-height:460px}
.tile-caption{bottom:42px;left:42px}.tile-caption h3{font-size:40px}
.banner{padding:115px 0}.footer h3{font-size:25px}
@media(max-width:1050px){.header-in{min-height:82px}.editorial-cards{grid-template-columns:1fr 1fr}.editorial-cards .tile{min-height:370px}}
@media(max-width:650px){.header-in{min-height:75px}.brand img{width:49px;height:43px}.brand-title{font-size:14px;letter-spacing:.05em}.video-hero{aspect-ratio:4/5}.video-hero-content h1{font-size:45px}.intro{padding:60px 0}.section{padding:75px 0}.editorial-cards{grid-template-columns:1fr}.editorial-cards .tile{min-height:340px}.editorial-cards .tile:last-child{grid-column:auto;min-height:340px}.tile-caption{left:25px;bottom:25px}.tile-caption h3{font-size:31px}}

/* Кинематографичное вступление: снежинки -> эмблема -> плавное растворение */
body.intro-playing{overflow:hidden}
.cinematic-intro{position:fixed;inset:0;z-index:200;background:radial-gradient(ellipse at 50% 43%,#1b3048 0%,#07172b 63%,#030c19 100%);display:grid;place-items:center;color:#f1dfbc;isolation:isolate;opacity:1;visibility:visible;transition:opacity 1.55s ease,visibility 1.55s ease}
.cinematic-intro.intro-dissolve{opacity:0;visibility:hidden;pointer-events:none}
.intro-snow{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.snowflake{position:absolute;top:-9vh;left:var(--left);width:var(--size);height:var(--size);border-radius:50%;background:#f6f5f3;opacity:0;filter:blur(var(--blur));box-shadow:0 0 9px #ffffff66;animation:introSnow var(--duration) linear var(--delay) infinite}
@keyframes introSnow{0%{transform:translate3d(0,-8vh,0);opacity:0}12%{opacity:var(--opacity)}85%{opacity:var(--opacity)}100%{transform:translate3d(var(--drift),110vh,0);opacity:0}}
.intro-emblem{text-align:center;z-index:2;opacity:0;transform:translateY(20px) scale(.97);animation:introEmblem 2.2s ease 1.05s forwards;padding:20px}
.intro-emblem img{width:clamp(220px,36vw,470px);height:auto;margin:0 auto 22px;object-fit:contain;filter:drop-shadow(0 5px 26px #c6a3692e)}
.intro-wordmark{font-family:Georgia,'Times New Roman',serif;font-size:clamp(27px,4.5vw,56px);font-weight:400;letter-spacing:.23em;margin-left:.23em}
.intro-location{font-size:clamp(10px,1vw,13px);letter-spacing:.32em;color:#e5d2b1;margin-top:18px}
@keyframes introEmblem{0%{opacity:0;transform:translateY(20px) scale(.97)}100%{opacity:1;transform:translateY(0) scale(1)}}
.intro-skip{position:absolute;z-index:4;right:clamp(18px,4vw,60px);bottom:clamp(24px,5vh,52px);border:1px solid #e9d7b58c;background:#07172b7a;color:#f5e8d1;padding:13px 18px;text-transform:uppercase;letter-spacing:.15em;font-size:11px}
.intro-skip:hover{background:#20334b}
@media(prefers-reduced-motion:reduce){.cinematic-intro{display:none}body.intro-playing{overflow:auto}}

/* Восстановлена нижняя маска оригинального видео: скрывает вшитые подписи,
   сохраняя видимость видео над полосой и текст сайта поверх маски. */
.video-hero::before{
 content:"";position:absolute;z-index:2;pointer-events:none;
 left:0;right:0;bottom:0;height:32%;
 background:linear-gradient(to bottom,transparent 0%,rgba(7,23,43,.82) 25%,#07172b 58%,#07172b 100%);
}
.video-hero-content{z-index:3}
.video-controls{z-index:4}

/* Возвращён оригинальный смысловой блок с 20 таунхаусами — поверх нижней части видео */
.video-hero{min-height:650px}
.video-hero::before{height:40%;background:linear-gradient(to bottom,transparent 0%,rgba(7,23,43,.58) 19%,rgba(7,23,43,.95) 56%,#07172b 100%)}
.video-hero-content{bottom:29%;max-width:700px}
.hero-info-panel{position:absolute;z-index:3;bottom:29px;left:max(calc((100% - 1230px)/2),35px);right:max(calc((100% - 1230px)/2),35px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:23px 26px;border:1px solid rgba(233,215,181,.44);background:rgba(7,23,43,.87);box-shadow:0 12px 42px #0005;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.hero-info-item{display:flex;align-items:center;justify-content:center;gap:14px;color:#fff;padding:5px 15px;border-right:1px solid rgba(233,215,181,.25)}
.hero-info-item:last-child{border-right:0}
.hero-info-item b{font:normal clamp(27px,3vw,43px)/1 Georgia,serif;color:#e9d7b5;white-space:nowrap}
.hero-info-item span{font:11px/1.6 Arial,sans-serif;letter-spacing:.045em;color:#f2e9dc}
.video-controls{bottom:142px}
@media(max-width:800px){.video-hero{min-height:720px}.video-hero-content{bottom:36%}.hero-info-panel{left:18px;right:18px;bottom:20px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:18px 12px}.hero-info-item{justify-content:flex-start;padding:6px 8px;border-right:0;gap:9px}.hero-info-item b{font-size:26px}.hero-info-item span{font-size:10px}.video-controls{bottom:190px}}
@media(max-width:650px){.video-hero{min-height:760px;max-height:none;aspect-ratio:auto}.video-hero-content{bottom:35%;left:22px;right:22px}.video-hero-content h1{font-size:clamp(34px,9vw,45px)}.hero-info-panel{bottom:16px}.video-controls{bottom:185px;right:15px}}

/* v27: полноширинная архитектурная золотая панель как в раннем дизайне */
@media(min-width:801px){
.hero-info-panel{left:0;right:0;bottom:0;width:100%;border:0;border-top:2px solid #d8b67a;border-bottom:3px solid #c6a369;padding:28px max(34px,calc((100vw - 1230px)/2));background:linear-gradient(90deg,rgba(7,23,43,.97),rgba(16,38,60,.92) 50%,rgba(7,23,43,.97));box-shadow:inset 0 5px 0 rgba(233,215,181,.09),0 -14px 44px rgba(0,0,0,.19);backdrop-filter:blur(14px)}
.hero-info-panel::before{content:"";position:absolute;left:0;right:0;top:5px;height:1px;background:linear-gradient(90deg,transparent,#c6a36991 12%,#e9d7b5 50%,#c6a36991 88%,transparent)}
.hero-info-item{min-height:68px;border-right:1px solid rgba(216,182,122,.5)}
.hero-info-item b{color:#ebcf96;text-shadow:0 1px 8px rgba(198,163,105,.17)}
.video-hero-content{bottom:190px}
.video-controls{bottom:163px}
}
@media(max-width:800px){.hero-info-panel{border:2px solid #c6a369;box-shadow:inset 0 0 0 4px rgba(198,163,105,.08),0 12px 42px #0005}.hero-info-item b{color:#ebcf96}}

/* v28: летнее видео вместо повторяющейся фотографии бассейна */
.summer-video-frame{width:100%;height:550px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#0c2233;border:1px solid rgba(198,163,105,.45);box-shadow:0 15px 45px #07172b22}
.summer-video{display:block;height:100%;width:100%;object-fit:contain;background:#0c2233}
@media(max-width:650px){.summer-video-frame{height:auto;aspect-ratio:9/13}.summer-video{height:100%;width:100%;object-fit:contain}}

/* Премиальная, но бережная цветокоррекция для существующих видео */
.video-hero video,.summer-video{filter:contrast(1.10) saturate(1.10) brightness(1.035) sepia(.035)}
.tile img,.gallery img,.split img{filter:contrast(1.035) saturate(1.045)}
.premium-services{background:#07172b}
.premium-block{width:100%;height:clamp(360px,44vw,640px);position:relative;overflow:hidden;border-top:2px solid #c6a369}
.premium-block>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.premium-block:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,16,28,.83) 0%,rgba(5,16,28,.40) 35%,transparent 70%);pointer-events:none}
.premium-block-copy{position:absolute;z-index:1;left:clamp(25px,5vw,90px);top:50%;transform:translateY(-50%);max-width:440px;color:#fff}
.premium-block-copy .eyebrow{color:#d9b57b;letter-spacing:.21em}
.premium-block-copy h2{font-family:Georgia,serif;font-size:clamp(32px,3.6vw,58px);line-height:1.1;color:#eac587;font-weight:400;margin:16px 0 21px}
.premium-block-copy p{font-size:clamp(15px,1.35vw,19px);line-height:1.7;color:#f1ece5;text-shadow:0 1px 4px #0006}
@media(max-width:700px){.premium-block{height:500px}.premium-block>img{object-position:62% center}.premium-block:after{background:linear-gradient(0deg,rgba(5,16,28,.95) 0%,rgba(5,16,28,.38) 60%,transparent 100%)}.premium-block-copy{top:auto;bottom:16px;left:23px;right:23px;transform:none;max-width:none}.premium-block-copy h2{font-size:33px;margin:10px 0}.premium-block-copy p{font-size:15px;line-height:1.5}}

/* v31: подлинная фотография фасадов в блоке европейской атмосферы */
.intro-photo-section{padding:78px 0;background:#faf7f1}.intro-photo-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(30px,5.5vw,84px)}.intro-photo-copy{padding:26px 0}.intro-photo-copy h2{font-size:clamp(34px,4.2vw,62px);line-height:1.12}.intro-photo-copy p{max-width:510px;line-height:1.8}.intro-cta{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:30px}.intro-cta .book{min-width:186px}.intro-photo-figure{position:relative;margin:0;height:clamp(340px,36vw,560px);overflow:hidden;background:#17273a;box-shadow:0 20px 55px #091e2d2a}.intro-photo-figure::after{content:"";position:absolute;inset:0;border:1px solid #c6a3699e;pointer-events:none}.intro-photo-figure img{width:100%;height:100%;object-fit:cover;object-position:center 51%;display:block}.intro-photo-figure figcaption{position:absolute;bottom:0;left:0;right:0;padding:30px 25px 15px;letter-spacing:.25em;color:#f9f1e2;font-size:11px;background:linear-gradient(transparent,#07172be0);text-align:right}@media(max-width:830px){.intro-photo-grid{grid-template-columns:1fr}.intro-photo-section{padding:42px 0}.intro-photo-copy{padding:0}.intro-photo-figure{height:480px}}@media(max-width:520px){.intro-photo-figure{height:385px}.intro-cta{gap:15px}}
/* v33: Аккуратная объёмная тень у снимка домиков на кремовом фоне */
.intro-photo-figure{box-shadow:0 13px 24px rgba(17,34,48,.16),0 32px 60px rgba(17,34,48,.18);}
/* v33: видео обработано по кадрам; не дублируем сильную CSS-коррекцию */
.video-hero video{filter:none;}

/* v34: аккуратное оформление обновлённых карточек главной страницы */
.editorial-cards .tile:first-child img{object-position:center 50%}
.editorial-cards .tile:nth-child(2) img{object-position:center 59%}
.light-section .split>img{object-position:center 53%;box-shadow:0 12px 30px rgba(7,23,43,.13)}
.section-head h2{font-size:clamp(37px,4.5vw,64px)}

/* v35 polished photography and conversion */
.editorial-cards .tile,.light-section .split>img,.premium-block,.summer-video-frame{box-shadow:0 16px 38px rgba(7,23,43,.20),0 3px 8px rgba(7,23,43,.12)}
.editorial-cards .tile{transition:box-shadow .25s ease,transform .25s ease}.editorial-cards .tile:hover{transform:translateY(-3px);box-shadow:0 24px 45px rgba(7,23,43,.26)}
.editorial-cards .tile:nth-child(2) img{object-position:center 47%}.editorial-cards .tile:last-child img{object-position:center 56%}
.light-section .split>img{object-position:center 45%}.offers-section{background:#0b2035;color:#fff;border-top:3px solid var(--gold)}.offers-section .section-head p{color:#d9d8d4}.offers-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:24px}.offer-feature,.offer-small{padding:clamp(30px,4vw,60px);border:1px solid #c6a36980;background:linear-gradient(140deg,#17334e,#0a1b2e)}.offer-small{background:#f7f1e5;color:#10263c}.offers-grid h3{font-size:clamp(30px,3vw,48px);line-height:1.15;margin:18px 0 25px}.offers-grid p{font-size:15px;line-height:1.75}.offer-note{opacity:.75;font-size:12px!important}.offers-grid .eyebrow{color:#d9b57b}.offer-small .eyebrow{color:#8b3e54}.offer-small .book{margin-top:8px}
@media(max-width:750px){.offers-grid{grid-template-columns:1fr}.offer-feature,.offer-small{padding:28px}}

/* Leisure page: deep midnight-blue palette, gallery and photo captions remain legible. */
body.leisure-page{background:#07172b;color:#f7f1e5}
.leisure-page .page-hero.leisure-hero{min-height:clamp(390px,46vw,680px);background:#07172b}
.leisure-page .page-hero.leisure-hero:before{background:linear-gradient(0deg,rgba(3,13,26,.78),rgba(3,13,26,.1) 60%),var(--bg) center 53%/cover no-repeat}
.leisure-page .light-section,.leisure-page .warm-section,.leisure-page main>.section:not(.page-hero){background:#0c2239;color:#f8f1e7}
.leisure-page .warm-section{background:#102940}
.leisure-page .section p,.leisure-page .split p{color:#e0e5e9}
.leisure-page .section .eyebrow{color:#d9b57b}
.leisure-page .section .gold{color:#dfbc81}
.leisure-page .section .text-link{color:#f5e4c6;border-bottom-color:#c6a369}
.leisure-page .split>img,.leisure-page .gallery img{box-shadow:0 22px 45px rgba(0,0,0,.38);border:1px solid rgba(198,163,105,.22)}
.leisure-page .gallery button{overflow:visible}
@media (max-width:650px){.leisure-page .page-hero.leisure-hero{min-height:350px}.leisure-page .page-hero.leisure-hero:before{background-position:center center}}

/* v43: мягкий объём фотографий */
.editorial-cards img, .gallery img, .split>img, .intro-photo-figure img {filter:contrast(1.035) saturate(1.035);}
.split>img,.intro-photo-figure{box-shadow:0 20px 44px rgba(0,0,0,.19);}

/* Photo gallery entry on homepage */
.gallery-feature-link{display:block;position:relative;overflow:hidden;border-radius:16px;min-height:350px;max-height:500px;box-shadow:0 20px 45px rgba(7,23,43,.2);text-decoration:none;background:#07172b}
.gallery-feature-link img{display:block;width:100%;height:clamp(350px,45vw,500px);object-fit:cover;object-position:center 55%;transition:transform .35s ease}
.gallery-feature-link:hover img{transform:scale(1.025)}
.gallery-feature-link:focus-visible{outline:3px solid #cbaa68;outline-offset:4px}
.gallery-feature-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,23,43,.82),transparent 68%);display:flex;flex-direction:column;justify-content:end;align-items:start;padding:clamp(22px,4vw,52px);color:#fff}
.gallery-feature-title{font-size:clamp(30px,4vw,54px);font-family:Georgia,serif;color:#fff;line-height:1.1}
.gallery-feature-action{margin-top:14px;display:inline-block;background:#9d2946;padding:14px 22px;border-radius:4px;color:white;font-weight:600}
@media(max-width:600px){.gallery-feature-link img{height:340px}.gallery-feature-overlay{padding:22px}}

/* Restaurant portrait: keep chef face and dish visible on cards */
.editorial-cards .tile:last-child img{object-position:50% 34%;}

/* v59: Chef face and plate remain fully visible in wide restaurant feature */
.editorial-cards .tile:last-child img{object-position:center center;}

/* v60: two independent image cards, short then long, underneath existing two cards */
.editorial-cards{grid-template-columns:1.12fr .88fr}
.editorial-cards .tile.restaurant-chef-card{grid-column:1;min-height:420px}
.editorial-cards .tile.winter-evening-card{grid-column:2;min-height:420px}
.editorial-cards .restaurant-chef-card img{object-position:center center}
.editorial-cards .winter-evening-card img{object-position:center center}
.editorial-cards .restaurant-chef-card .tile-caption{left:22px;bottom:19px;right:14px}
.editorial-cards .restaurant-chef-card .tile-caption h3{font-size:clamp(24px,2.6vw,34px)}
.editorial-cards .winter-evening-card .tile-caption h3{font-size:clamp(25px,2.8vw,38px)}
@media(min-width:651px){.editorial-cards{grid-template-columns:1.12fr .88fr}.editorial-cards .tile.restaurant-chef-card{grid-column:1;min-height:390px}.editorial-cards .tile.winter-evening-card{grid-column:2;min-height:390px}}
@media(max-width:650px){.editorial-cards{grid-template-columns:1fr}.editorial-cards .tile.restaurant-chef-card,.editorial-cards .tile.winter-evening-card{grid-column:auto;min-height:320px}}

/* v61: independent lower row, left narrow / right wide; top row unchanged */
.editorial-cards .bottom-feature-pair{grid-column:1/-1;display:grid;grid-template-columns:.88fr 1.12fr;gap:24px}
.editorial-cards .bottom-feature-pair .tile.restaurant-chef-card,.editorial-cards .bottom-feature-pair .tile.winter-evening-card{grid-column:auto;min-height:390px}
@media(max-width:650px){.editorial-cards .bottom-feature-pair{grid-template-columns:1fr}.editorial-cards .bottom-feature-pair .tile{min-height:320px}}


/* Compact combination of the two home-page introductions */
.combined-atmosphere{background:#faf7f1;padding:70px 0 62px}
.combined-atmosphere-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.combined-atmosphere-item h2{font-size:clamp(29px,3.1vw,43px);line-height:1.18;margin:14px 0 24px}
.combined-atmosphere-item img{width:100%;height:330px;object-fit:cover;box-shadow:0 14px 36px rgba(7,23,43,.16)}
.combined-atmosphere-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:27px}
.combined-atmosphere-bottom p{margin:0;max-width:730px;color:var(--muted);font-size:14px}
.combined-atmosphere-bottom .text-link{white-space:nowrap}
@media(max-width:700px){.combined-atmosphere{padding:42px 0}.combined-atmosphere-grid{grid-template-columns:1fr;gap:34px}.combined-atmosphere-item img{height:280px}.combined-atmosphere-bottom{display:block}.combined-atmosphere-bottom p{margin-bottom:18px}}

/* Real summer pool footage in the leisure section */
.summer-pool-video{display:block;width:100%;height:550px;object-fit:cover;object-position:center center;background:#07172b;box-shadow:0 12px 30px rgba(7,23,43,.18);border-radius:2px}
@media(max-width:700px){.summer-pool-video{height:440px;max-width:100%;object-position:center center}.split.reverse .summer-pool-video{order:-1}}
@media(prefers-reduced-motion:reduce){.summer-pool-video{animation:none}}

.offer-dates{list-style:none;padding:0;margin:12px 0 22px;font-size:clamp(15px,1.3vw,19px);font-weight:600;line-height:1.8;color:#25384d}.offer-dates li{white-space:nowrap}

/* Transfer banner: after special offers, one headline on desktop */
.transfer-after-offers .premium-block-copy{left:clamp(24px,4vw,70px);right:20px;max-width:none;width:calc(100% - 85px)}
.transfer-after-offers .premium-block-copy h2{font-size:clamp(23px,2.8vw,43px);white-space:nowrap;line-height:1.2;letter-spacing:-.025em;text-shadow:0 2px 8px rgba(0,0,0,.5)}
.transfer-after-offers .premium-block-copy p{max-width:580px}
@media(max-width:850px){.transfer-after-offers .premium-block-copy h2{font-size:clamp(24px,4.6vw,38px);white-space:normal}.transfer-after-offers .premium-block-copy{width:auto;right:24px}}

/* v68: transfer before promotions; readable copy above background lights */
.transfer-after-offers .premium-block-copy{top:27%;transform:translateY(-12%);background:linear-gradient(90deg,rgba(4,15,29,.88),rgba(4,15,29,.65) 75%,rgba(4,15,29,0));padding:18px 26px 22px 12px;border-radius:3px;}
.transfer-after-offers .premium-block-copy h2{font-weight:600;color:#ffe0a5;text-shadow:0 3px 10px rgba(0,0,0,.92);margin:12px 0 14px;}
.transfer-after-offers .premium-block-copy p{font-weight:550;text-shadow:0 2px 8px #000;}
@media(max-width:850px){.transfer-after-offers .premium-block-copy{top:18%;transform:none;left:20px;right:20px;padding:14px 16px;background:rgba(4,15,29,.80)}.transfer-after-offers .premium-block-copy h2{font-size:clamp(22px,4.2vw,34px)}}


/* Booking showcase — approved Amsterdam visual language */
.booking-page{background:#f7f3ec;color:#10243b;min-height:70vh}
.booking-intro{background:linear-gradient(110deg,#07172b,#142b45);color:#f7f2e8;padding:64px 0 85px}
.booking-intro .eyebrow{color:#cdb184}
.booking-intro h1{font-family:Georgia,serif;font-size:clamp(39px,5.5vw,66px);line-height:1.08;max-width:750px;margin:14px 0 16px;font-weight:400}
.booking-intro h1 em{font-style:normal;color:#c9aa77}
.booking-intro p{max-width:680px;color:#e7dfd4;line-height:1.7}
.booking-content{position:relative;margin-top:-43px;padding-bottom:85px}
.booking-search{display:grid;grid-template-columns:1fr 1fr .75fr auto;align-items:end;gap:17px;background:#fff;padding:24px;border:1px solid #e5dac8;box-shadow:0 14px 48px #07172b20}
.booking-search label{display:block;font-size:12px;letter-spacing:.12em;color:#556477;text-transform:uppercase;margin-bottom:8px}
.booking-search input,.booking-search select{width:100%;padding:13px;border:1px solid #d5cdbf;background:#faf9f6;color:#13283d;font:inherit;min-height:50px}
.booking-search button,.booking-primary{display:inline-flex;align-items:center;justify-content:center;padding:16px 24px;min-height:50px;background:#813b52;color:white;border:0;text-decoration:none;text-transform:uppercase;letter-spacing:.07em;font-size:12px;cursor:pointer}
.booking-search button:hover,.booking-primary:hover{background:#692c41}
.booking-caption{font-size:13px;color:#667283;margin:18px 0 0}
.booking-heading{margin:56px 0 23px}
.booking-heading h2{font-family:Georgia,serif;font-size:clamp(30px,4vw,43px);font-weight:400;margin:10px 0}
.booking-room{display:grid;grid-template-columns:1.03fr .97fr;background:#fff;box-shadow:0 12px 30px #07172b14;border:1px solid #e7dfd4}
.booking-room-photos{min-width:0}
.booking-room-main{display:block;width:100%;height:380px;object-fit:cover}
.booking-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding-top:5px}
.booking-thumbs img{display:block;width:100%;height:104px;object-fit:cover}
.booking-room-info{padding:36px 38px;display:flex;flex-direction:column;justify-content:center}
.booking-room-info h3{font-family:Georgia,serif;font-size:clamp(26px,3vw,36px);font-weight:400;line-height:1.18;margin:12px 0 16px}
.booking-specs{display:flex;flex-wrap:wrap;gap:8px;margin:13px 0 22px}
.booking-specs span{padding:8px 11px;background:#f4efe7;color:#39495b;font-size:12px}
.booking-room-info p{line-height:1.75;color:#596577;margin:0 0 22px}
.booking-price{font-weight:600;color:#24374b;margin-bottom:18px}
.booking-note{font-size:12px;color:#708092;margin-top:10px}
.booking-info-panel{margin-top:28px;border-top:1px solid #d8cdbf;padding:25px 4px;color:#4c5a6b;font-size:14px;line-height:1.7}
@media(max-width:900px){.booking-search{grid-template-columns:1fr 1fr}.booking-search button{grid-column:1/-1}.booking-room{grid-template-columns:1fr}}
@media(max-width:600px){.booking-intro{padding:38px 0 78px}.booking-search{grid-template-columns:1fr;padding:20px}.booking-room-main{height:250px}.booking-thumbs img{height:72px}.booking-room-info{padding:24px}.booking-content{padding-bottom:35px}}

.booking-room + .booking-room{margin-top:32px}
