
@font-face{font-family:'KaiseiT';src:url('/a/kaisei-400.99f77f7859.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'KaiseiT';src:url('/a/kaisei-700.6429c6dbae.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:'RedditS';src:url('/a/reddit.fc15ffcd4a.woff2') format('woff2');font-weight:200 900;font-display:swap}
:root{
 --es-paper:#dee8d2;--es-ink:#232a1c;--es-ground:#2c3524;
 --es-onground:#eef3e8;--es-accent:#84144b;--es-rule:#a9b69c;
 --es-rail:16rem;--es-gap:3.25rem;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--es-paper);color:var(--es-ink);
 font:400 1.0625rem/1.65 'RedditS',system-ui,-apple-system,'Segoe UI',sans-serif}
h1,h2,h3,.es-mast{font-family:'KaiseiT',Georgia,'Times New Roman',serif;font-weight:700;
 line-height:1.18;letter-spacing:-.005em}
h1{font-size:clamp(1.95rem,1.2rem + 2.4vw,3.1rem);margin:0 0 .6rem}
h2{font-size:clamp(1.35rem,1.05rem + .95vw,1.85rem);margin:2.6rem 0 .7rem}
h3{font-size:1.1rem;margin:1.8rem 0 .45rem}
p{margin:0 0 1.05rem;overflow-wrap:break-word}
a{color:var(--es-accent);text-underline-offset:.18em;text-decoration-thickness:.07em}
a:hover,a:focus-visible{text-decoration-thickness:.14em}
:focus-visible{outline:3px solid var(--es-accent);outline-offset:2px}
img{max-width:100%;height:auto;display:block}
.es-skip{position:absolute;left:-9999px}
.es-skip:focus{left:.5rem;top:.5rem;z-index:9;background:var(--es-ground);
 color:var(--es-onground);padding:.6rem .9rem;border-radius:2px}

/* ── шапка ── */
.es-top{border-bottom:1px solid var(--es-rule);background:var(--es-paper)}
.es-topin{max-width:78rem;margin:0 auto;padding:.85rem 1.25rem;
 display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;align-items:baseline}
.es-mast{font-size:1.22rem;text-decoration:none;color:var(--es-ink);white-space:nowrap}
.es-topnav ul{list-style:none;display:flex;flex-wrap:wrap;gap:.45rem 1.15rem;margin:0;padding:0}
.es-topnav a{color:var(--es-ink);text-decoration:none;font-size:.905rem;
 border-bottom:1px solid transparent;padding-bottom:1px}
.es-topnav a:hover,.es-topnav a:focus-visible{border-bottom-color:var(--es-accent)}
.es-topnav a[aria-current]{border-bottom-color:var(--es-ink)}
.es-tel{margin-left:auto;font-size:.905rem;color:var(--es-ink);text-decoration:none;
 white-space:nowrap;border-bottom:1px solid var(--es-rule)}

/* ── АРХЕТИП: полоса во всю ширину, под ней узкий рельс и широкая колонка ── */
.es-banner{width:100%;background:var(--es-ground);overflow:hidden}
/* ⚠️ §9 требует героя НЕ МЕНЬШЕ 55vh. Прежний потолок 42vh был перестраховкой ради
   того, чтобы h1 вошёл в первый экран; замер показал, что при шапке ~123px и 55vh
   заголовок входит и на 1280×720, и на 1440×900. */
/* ⚠️ min-height ЛОМАЛ ЗАЯВЛЕННУЮ ПРОПОРЦИЮ: при 55vh полоса рендерилась как 3.81,
   а в реестре и SPEC объявлено 2.79. Замер показал, что одна aspect-ratio уже даёт
   ≥55vh на всех обычных ширинах (1440/2.79 = 516px = 57vh при высоте 900), то есть
   min-height был лишним и вредным. */
.es-banner img{width:100%;aspect-ratio:2.79;object-fit:cover;max-height:70vh}
.es-body{max-width:78rem;margin:0 auto;padding:2.1rem 1.25rem 3.5rem;
 display:grid;grid-template-columns:var(--es-rail) minmax(0,1fr);gap:var(--es-gap);
 align-items:start}
.es-rail{position:sticky;top:1.25rem;font-size:.87rem;line-height:1.5;
 border-top:3px solid var(--es-ink);padding-top:.7rem}
.es-brow{text-transform:uppercase;letter-spacing:.1em;font-size:.735rem;
 color:var(--es-ink);opacity:.82;margin:0 0 1.1rem}
.es-railitem{margin:0 0 1.05rem}
.es-raillabel{display:block;font-size:.715rem;text-transform:uppercase;
 letter-spacing:.085em;opacity:.72;margin-bottom:.2rem}
.es-col{min-width:0}
.es-stand{font-family:'KaiseiT',Georgia,'Times New Roman',serif;font-weight:400;
 font-size:1.19rem;line-height:1.5;margin:0 0 1.9rem;max-width:44rem}
.es-col p,.es-col li{max-width:44rem}

/* ── метка кодировки №31 ── */
.es-mark{display:inline-flex;align-items:center;gap:.55rem;white-space:nowrap}
.es-rule{display:inline-flex;width:30px;flex:0 0 30px;gap:4px}
.es-rule .es-seg{height:3px;flex:1 1 auto;background:var(--es-ink);border-radius:0}
.es-markword{font-size:.82rem;white-space:normal}

/* ── двери развилки ── */
.es-doors{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));
 gap:1.4rem;margin:2.1rem 0 2.4rem;max-width:52rem}
.es-door{border:2px solid var(--es-ink);padding:1.15rem 1.2rem 1.3rem;
 text-decoration:none;color:var(--es-ink);background:transparent;display:block}
.es-door:hover,.es-door:focus-visible{background:var(--es-ground);color:var(--es-onground)}
.es-door:hover .es-seg,.es-door:focus-visible .es-seg{background:var(--es-onground)}
.es-doorq{display:block;font-size:.735rem;text-transform:uppercase;letter-spacing:.09em;
 opacity:.76;margin-bottom:.35rem}
.es-doora{display:block;font-family:'KaiseiT',Georgia,serif;font-weight:700;
 font-size:1.25rem;line-height:1.24;margin-bottom:.4rem}
.es-doorn{display:block;font-size:.865rem;opacity:.88}

/* ── список недель: широкий блок выходит из текстовой колонки ── */
.es-weeks{list-style:none;margin:1.9rem 0 2.4rem;padding:0;max-width:none;
 border-top:1px solid var(--es-rule)}
.es-weeks li{max-width:none;border-bottom:1px solid var(--es-rule)}
/* ⚠️ Страна и ночи стоят ПОД названием, а не в своей колонке: четыре колонки
   на 1280px оставляли названию 231px, и каждое имя ломалось на две строки. */
.es-wk{display:grid;grid-template-columns:minmax(0,1fr) auto 13.5rem;
 align-items:baseline;gap:.2rem 1.4rem;
 padding:.95rem .2rem;text-decoration:none;color:var(--es-ink)}
.es-wk:hover,.es-wk:focus-visible{background:rgba(0,0,0,.045)}
.es-wkname{font-family:'KaiseiT',Georgia,serif;font-weight:700;font-size:1.075rem;
 min-width:0;white-space:normal;overflow-wrap:anywhere;grid-row:1}
.es-wkmeta{font-size:.855rem;opacity:.82;white-space:normal;grid-column:1;grid-row:2}
.es-wkprice{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap;
 grid-column:2;grid-row:1 / span 2;align-self:center}
.es-wk .es-mark{grid-column:3;grid-row:1 / span 2;align-self:center;align-items:flex-start}
.es-wk .es-markword{font-size:.79rem;line-height:1.35}

/* ── кадр внутри текста ── */
.es-tiles{list-style:none;margin:2.2rem 0 2.6rem;padding:0;max-width:none;
 display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:1.15rem}
.es-tiles li{max-width:none}
/* ⚠️ §9: плитки направлений несут текст ПОВЕРХ изображения, иначе каталог
   выглядит списком, а не каталогом. */
.es-tile{position:relative;display:block;text-decoration:none;
 color:var(--es-onground);border:1px solid var(--es-rule);overflow:hidden}
.es-tile img{width:100%;aspect-ratio:1.69;object-fit:cover;display:block}
.es-tiletext{position:absolute;left:0;right:0;bottom:0;padding:2.6rem .8rem .7rem;
 /* ⚠️ ЗАТЕМНЕНИЕ СЧИТАНО ПО САМОЙ СВЕТЛОЙ ПЛИТКЕ, А НЕ НА ГЛАЗ: под подписью
    яркость исходников гуляет от 63 до 150, и градиент, достаточный для тёмной
    картинки, на светлой давал белое по светлому. */
 background:linear-gradient(to top,rgba(20,26,16,.96) 0%,rgba(20,26,16,.90) 58%,rgba(20,26,16,0) 100%)}
.es-tilename{display:block;font-family:'KaiseiT',Georgia,serif;font-weight:700;
 font-size:1.02rem;line-height:1.22;margin:0 0 .12rem;color:var(--es-onground)}
.es-tilemeta{display:block;font-size:.82rem;color:var(--es-onground);opacity:.94}
.es-tile:hover .es-tilename,.es-tile:focus-visible .es-tilename{
 text-decoration:underline;text-decoration-thickness:.09em}
.es-country{border-top:2px solid var(--es-ink);padding-top:.75rem;margin:0 0 2rem;
 max-width:none}
.es-country h2{margin:0 0 .1rem;font-size:1.32rem}
.es-countrymeta{font-size:.86rem;opacity:.82;margin:0 0 .7rem}
.es-countrylist{list-style:none;margin:0;padding:0}
.es-countrylist li{display:flex;flex-wrap:wrap;align-items:baseline;gap:.3rem .9rem;
 padding:.4rem 0;border-bottom:1px solid var(--es-rule);max-width:none}
.es-countrylist a{font-family:'KaiseiT',Georgia,serif;font-weight:700;font-size:1.02rem;
 flex:1 1 15rem;min-width:0}
.es-plate{margin:2.3rem 0 2.4rem;max-width:none}
.es-plate img{width:100%;aspect-ratio:1.69;object-fit:cover;border:1px solid var(--es-rule)}
.es-cap{font-size:.8rem;opacity:.78;margin:.45rem 0 0;max-width:44rem}

/* ── факты и цена: ТРЕТИЙ ФОН СТРАНИЦЫ. §9 требует не меньше трёх разных
   фонов секций, а было два — бумага и подвал. ── */
.es-facts{background:var(--es-ground);color:var(--es-onground);
 border:none;padding:1.3rem 1.4rem 1.15rem;margin:1.9rem 0 2.2rem;max-width:44rem}
.es-facts .es-seg{background:var(--es-onground)}
.es-band{background:var(--es-rule);margin:2.4rem 0;padding:1.5rem 1.4rem 1.1rem;
 max-width:none}
.es-band h2{margin-top:0}
.es-facts dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.4rem 1.2rem}
.es-facts dt{font-size:.735rem;text-transform:uppercase;letter-spacing:.085em;opacity:.75;
 align-self:baseline;display:flex;align-items:center;gap:.42rem}
.es-ico{flex:0 0 20px;fill:none;stroke:currentColor;stroke-width:1.5;
 stroke-linecap:round;stroke-linejoin:round;opacity:.85}
.es-points{list-style:none;margin:1.6rem 0 2rem;padding:0;max-width:44rem}
.es-points li{display:flex;align-items:flex-start;gap:.65rem;margin:0 0 .62rem;
 font-size:.955rem;line-height:1.5}
.es-points .es-ico{margin-top:.16rem}
.es-facts dd{margin:0;font-size:.98rem}
.es-facts .es-small{margin:1rem 0 0;padding-top:.8rem;
 border-top:1px solid rgba(238,243,232,.34);opacity:.9}
.es-big{font-family:'KaiseiT',Georgia,serif;font-weight:700;
 font-size:clamp(1.65rem,1.2rem + 1.5vw,2.35rem);font-variant-numeric:tabular-nums;
 line-height:1.1;margin:0}

/* ── форма ── */
.es-form{max-width:40rem;margin:2rem 0 1rem}
.es-f{margin:0 0 1.15rem}
.es-f label{display:block;font-weight:600;margin-bottom:.3rem;font-size:.95rem}
.es-hint{display:block;font-weight:400;font-size:.845rem;opacity:.8;margin-bottom:.35rem}
.es-f input,.es-f select,.es-f textarea{width:100%;font:inherit;font-size:1rem;
 padding:.6rem .65rem;border:2px solid var(--es-ink);background:var(--es-paper);
 color:var(--es-ink);border-radius:0}
.es-f textarea{min-height:9.5rem;resize:vertical}
.es-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.es-send{font:inherit;font-weight:700;font-size:1.02rem;padding:.72rem 1.5rem;
 background:var(--es-ground);color:var(--es-onground);border:2px solid var(--es-ground);
 border-radius:0;cursor:pointer}
.es-send:hover,.es-send:focus-visible{background:var(--es-accent);border-color:var(--es-accent)}
.es-small{font-size:.855rem;opacity:.86;max-width:40rem}

/* ── FAQ ── */
.es-faq{margin:2.5rem 0 0;max-width:44rem}
.es-faq h3{margin:1.55rem 0 .3rem}

/* ── ПОДВАЛ №17: выходные данные сверху, нумерованная навигация снизу ── */
.es-foot{background:var(--es-ground);color:var(--es-onground);margin-top:3rem}
.es-footin{max-width:78rem;margin:0 auto;padding:2.3rem 1.25rem 2.6rem}
.es-imp{font-size:.9rem;line-height:1.6;max-width:52rem;margin:0 0 1.9rem}
.es-imp p{margin:0 0 .55rem;max-width:none}
.es-impname{font-family:'KaiseiT',Georgia,serif;font-weight:700;font-size:1.06rem;
 display:block;margin-bottom:.4rem}
.es-addr{font-style:normal;display:block;margin:0 0 .55rem;max-width:none}
.es-foot a{color:var(--es-onground)}
.es-footnav ol{list-style:decimal;margin:0;padding:0;display:flex;flex-wrap:wrap;
 gap:.4rem 1.6rem;font-size:.855rem}
.es-footnav li{margin-left:1.4rem;max-width:none}
.es-footnav a{color:var(--es-onground);text-decoration:none;
 border-bottom:1px solid rgba(238,243,232,.42)}
.es-footnav a:hover,.es-footnav a:focus-visible{border-bottom-color:var(--es-onground)}

@media (max-width:70rem){
 .es-wk{grid-template-columns:minmax(0,1fr) auto}
 .es-wkprice{grid-column:2;grid-row:1}
 .es-wk .es-mark{grid-column:1 / -1;grid-row:3;align-self:start;margin-top:.3rem}
}
@media (max-width:60rem){
 /* ⚠️ ЗАГОЛОВОК РАНЬШЕ РЕЛЬСА: на телефоне рельс отжимал h1 вниз за меню,
    полосу и четыре подписи, и первое, что видел читатель, было не название
    страницы, а служебные пометки. */
 .es-body{grid-template-columns:minmax(0,1fr);gap:1.5rem;padding-top:1.5rem}
 .es-col{order:1}
 .es-rail{order:2;position:static;border-top-width:2px;border-bottom:2px solid var(--es-ink);
  padding-bottom:.9rem}
 .es-brow{margin-bottom:.8rem}
 .es-banner img{aspect-ratio:2.1;max-height:34vh}
 .es-topnav ul{gap:.3rem .85rem}
 .es-topnav a{font-size:.85rem}
 .es-wk{grid-template-columns:minmax(0,1fr)}
 .es-wkname,.es-wkmeta,.es-wkprice{grid-column:1}
 .es-wkprice{grid-row:3;justify-self:start}
 .es-wk .es-mark{grid-column:1;grid-row:4}
}
@media (max-width:34rem){
 .es-topin{padding:.7rem .9rem}
 .es-tel{margin-left:0}
 .es-body{padding-left:.9rem;padding-right:.9rem}
 .es-footin{padding-left:.9rem;padding-right:.9rem}
 .es-banner img{aspect-ratio:1.6}
 .es-wkname{flex:1 1 100%}
}
@media print{.es-topnav,.es-footnav{display:none}}
/* the flight box: ONE card on the paper, not three slabs inside a fourth */
.es-fb-wrap{margin:38px 0}
.es-fb-card{background:#fff;border:1px solid var(--es-rule);border-radius:12px;
padding:clamp(17px,1.2vw + 12px,28px);
box-shadow:0 1px 2px rgba(35,42,28,.05),0 18px 34px -26px rgba(35,42,28,.5)}
.es-fb{margin:0;padding:0 0 21px;border-bottom:1px solid var(--es-rule)}
.es-fb-head{font-family:'KaiseiT',Georgia,serif;font-weight:700;font-size:22px;line-height:1.22;
margin:0 0 17px;padding:0 0 13px;border-bottom:1px solid var(--es-rule)}
.es-fb-grid{display:grid;gap:19px}
.es-fb-set{border:0;padding:0;margin:0;min-width:0}
.es-fb-set + .es-fb-set{border-top:1px solid var(--es-rule);padding-top:19px}
.es-fb-set legend{display:block;width:100%;padding:0;margin:0 0 11px;font-size:11px;
letter-spacing:.14em;text-transform:uppercase;color:var(--es-accent);font-weight:700}
/* align-items:end сажает поля ряда на одну линию; без него подпись в две строки уводит своё
   поле вниз, и ряд читается как сломанный */
.es-fb-row{display:grid;gap:15px 16px;align-items:end;
grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.es-fb-box{position:relative;display:flex;flex-direction:column;justify-content:flex-end;
gap:6px;min-width:0}
.es-fb-box label{font-size:14px;font-weight:700;line-height:1.32}
.es-fb-aside{display:block;font-size:12px;font-weight:400;line-height:1.3;opacity:.7}
.es-fb-box input,.es-fb-box select{font:inherit;font-size:15px;line-height:1.35;
min-height:47px;padding:9px 13px;width:100%;border:1px solid var(--es-rule);border-radius:7px;
background:#fff;color:inherit;accent-color:var(--es-accent);
transition:border-color .14s ease,box-shadow .14s ease}
.es-fb-box input::placeholder{opacity:.6}
.es-fb-box input:hover,.es-fb-box select:hover{border-color:var(--es-accent)}
/* общее правило страницы рисует толстый outline; здесь он заменён кольцом того же цвета,
   чтобы индикатор фокуса не разрывал скруглённую рамку */
.es-fb-box input:focus,.es-fb-box select:focus,
.es-fb-box input:focus-visible,.es-fb-box select:focus-visible{outline:0;
border-color:var(--es-accent);box-shadow:0 0 0 3px rgba(132,20,75,.24)}
.es-fb-box.is-short input{border-color:var(--es-accent);
box-shadow:0 0 0 3px rgba(132,20,75,.16)}
.es-fb-say{margin:0;font-size:13px;line-height:1.4;color:var(--es-accent);font-weight:700}
.es-fb-offer{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:30;margin:0;
padding:4px;list-style:none;background:#fff;border:1px solid var(--es-rule);border-radius:9px;
max-height:272px;overflow:auto;box-shadow:0 14px 32px -6px rgba(35,42,28,.3)}
.es-fb-offer li{margin:0}
.es-fb-offer button{display:block;width:100%;text-align:left;font:inherit;font-size:14px;
line-height:1.35;padding:8px 10px;border:0;border-radius:5px;background:none;color:inherit;
cursor:pointer}
.es-fb-offer button:hover,.es-fb-offer [aria-selected="true"] button{
background:var(--es-paper)}
.es-fb-offer [aria-selected="true"] button{box-shadow:inset 2px 0 0 var(--es-accent)}
.es-fb-code{display:inline-block;min-width:46px;font-weight:700;color:var(--es-accent);
font-variant-numeric:tabular-nums}
.es-fb-forks{margin:19px 0 0;padding:12px 15px;font-size:14px;line-height:1.55;
background:var(--es-paper);border:1px solid var(--es-rule);
border-left:3px solid var(--es-accent);border-radius:0 8px 8px 0}
.es-fb-go{display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin-top:20px}
.es-fb-go button{font:inherit;font-weight:700;font-size:15px;letter-spacing:.01em;
min-height:47px;padding:12px 24px;border:0;border-radius:7px;background:var(--es-accent);
color:#fff;cursor:pointer;box-shadow:0 1px 2px rgba(35,42,28,.16);
transition:box-shadow .14s ease,transform .1s ease,filter .14s ease}
.es-fb-go button:hover{box-shadow:0 5px 14px -4px rgba(132,20,75,.55);filter:brightness(.88)}
.es-fb-go button:active{transform:translateY(1px)}
.es-fb-go button[disabled],.es-fb-go button[disabled]:hover{background:var(--es-rule);
color:inherit;opacity:.7;box-shadow:none;cursor:not-allowed;transform:none;filter:none}
.es-fb-status{margin:0;font-size:14px;line-height:1.45;color:var(--es-accent);
font-weight:700}
.es-fb-note{margin:19px 0 0;font-size:14px;font-weight:400;line-height:1.62;opacity:.82;
max-width:80ch}
@media(max-width:560px){
.es-fb-card{padding:16px;border-radius:10px}
.es-fb-row{grid-template-columns:1fr}
.es-fb-go button{width:100%}}

