@font-face {
  font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 400 600; font-display: swap;
  src: url('/assets/fonts/cormorant-garamond-normal-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 400 600; font-display: swap;
  src: url('/assets/fonts/cormorant-garamond-normal-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Cormorant Garamond'; font-style: italic; font-weight: 400 500; font-display: swap;
  src: url('/assets/fonts/cormorant-garamond-italic-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Cormorant Garamond'; font-style: italic; font-weight: 400 500; font-display: swap;
  src: url('/assets/fonts/cormorant-garamond-italic-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Jost'; font-style: normal; font-weight: 300 600; font-display: swap;
  src: url('/assets/fonts/jost-normal-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Jost'; font-style: normal; font-weight: 300 600; font-display: swap;
  src: url('/assets/fonts/jost-normal-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --paper:#fff;
  --canvas:#f6f6f6;
  --soft:#ededed;
  --ink:#313131;
  --muted:#6a6d70;
  --quiet:#6a6d70;
  --gold:#dea43e;
  --gold-dark:#9a6412;
  --gold-hover:#c6892a;
  --gold-pale:#fbf5e9;
  --line:#e4e4e4;
  --danger:#8b3427;
  --danger-bg:#fff7f4;
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'Jost',-apple-system,BlinkMacSystemFont,sans-serif;
  --maxw:1180px
}
* { box-sizing:border-box }
html { scroll-behavior:smooth; scroll-padding-top:24px }
body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font:300 16px/1.65 var(--sans);
  font-variant-numeric:lining-nums tabular-nums;
  font-feature-settings:'lnum' 1,'tnum' 1;
  -webkit-font-smoothing:antialiased
}
body::before { content:''; display:block; height:3px; background:var(--gold) }
::selection { color:var(--ink); background:#f4dfb9 }
a { color:inherit; text-underline-offset:3px }
button,input,textarea { font:inherit }
button,a,input,textarea,summary { touch-action:manipulation }
button { cursor:pointer }
button:disabled { cursor:default; opacity:.46 }
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible {
  outline:3px solid var(--gold-dark);
  outline-offset:3px
}
input[type=checkbox],input[type=radio] {
  width:20px;
  height:20px;
  margin:0;
  flex:0 0 auto;
  accent-color:var(--gold-dark)
}
input[type=text],input[type=tel],input[type=email],input[type=date],input[type=search],textarea {
  display:block;
  width:100%;
  min-height:48px;
  border:0;
  border-bottom:1px solid #b9b9b9;
  border-radius:0;
  padding:11px 2px;
  background:transparent;
  color:var(--ink);
  font-size:16px
}
input[type=text]:focus,input[type=tel]:focus,input[type=email]:focus,input[type=date]:focus,input[type=search]:focus,textarea:focus { border-color:var(--gold-dark) }
textarea { resize:vertical }
fieldset { min-width:0; border:0; padding:0; margin:32px 0 }
legend {
  padding:0;
  margin-bottom:16px;
  font-size:12px;
  font-weight:500;
  letter-spacing:.16em;
  text-transform:uppercase
}
h1,h2,h3,p { margin-top:0 }
h1,h2 { font-family:var(--serif); font-weight:500; letter-spacing:.01em }
h1 { margin-bottom:12px; font-size:clamp(46px,6vw,72px); line-height:.98 }
h2 { margin-bottom:16px; font-size:clamp(32px,3.4vw,46px); line-height:1.08 }
h1 em,h2 em { color:var(--gold-dark); font-weight:400 }
h3 { margin-bottom:8px; font-size:18px; font-weight:500; line-height:1.35 }
.nadpis {
  margin-bottom:16px;
  color:var(--gold-dark);
  font-size:11px;
  font-weight:500;
  letter-spacing:.28em
}
.pod,.tiho { color:var(--muted); font-weight:400 }
.tiho { font-size:13px }
.shapka {
  display:flex;
  flex-wrap:wrap;
  gap:16px 28px;
  align-items:center;
  justify-content:space-between;
  width:min(100%,var(--maxw));
  min-height:88px;
  margin:auto;
  padding:18px 26px;
  border-bottom:1px solid var(--line)
}
.marka {
  color:var(--ink);
  font:600 30px/1 var(--serif);
  letter-spacing:.16em;
  text-decoration:none
}
.marka span {
  display:block;
  margin-top:6px;
  padding-left:2px;
  color:var(--gold-dark);
  font:400 9px/1.4 var(--sans);
  letter-spacing:.29em
}
.shapka-vrazki {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 24px
}
.shapka-vrazki a { white-space:nowrap }
.zapisvane {
  padding:10px 14px;
  border:1px solid var(--gold);
  color:var(--gold-dark);
  font-size:13px;
  font-weight:400;
  text-decoration:none
}
.zapisvane:hover { background:var(--gold-pale) }
.nazad-sajt {
  position:relative;
  padding:12px 0 12px 32px;
  color:var(--muted);
  font-size:13px;
  font-weight:400;
  letter-spacing:.14em;
  text-decoration:none;
  text-transform:uppercase
}
.nazad-sajt::before {
  content:'';
  position:absolute;
  left:0;
  top:50%;
  width:21px;
  height:1px;
  background:var(--gold)
}
.nazad-sajt:hover { color:var(--gold-dark) }
.ramka { width:min(100%,var(--maxw)); margin:auto; padding:64px 26px 24px }
.nachalo { margin-bottom:44px }
.nachalo .pod { margin:20px 0 0; font-size:14px; letter-spacing:.04em }
.stapki {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  padding:0;
  margin:0 0 52px;
  list-style:none;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  color:var(--quiet);
  font-size:13px;
  font-weight:400;
  letter-spacing:.1em;
  text-transform:uppercase
}
.stapki li { position:relative; display:flex; align-items:center; gap:12px; min-height:68px; padding:8px 20px }
.stapki li+li { border-left:1px solid var(--line) }
.stapki span { color:var(--quiet); font:500 27px/1 var(--serif) }
.stapki .tekushta { color:var(--ink) }
.stapki .tekushta::after {
  content:'';
  position:absolute;
  right:20px;
  bottom:-1px;
  left:20px;
  height:2px;
  background:var(--gold)
}
.stapki .tekushta span,.stapki .minala span { color:var(--gold-dark) }
.podredba { display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:64px; align-items:start }

/* Voucher form and conditions. */
.uvod {max-width:760px;margin-bottom:42px;color:var(--muted)}
.vaucher-forma label:not(.izbor) {display:block;margin:18px 0;font-size:14px;font-weight:400}
.vaucher-forma input:not([type=checkbox]):not([type=radio]),.vaucher-forma textarea {display:block;width:100%;min-height:48px;border:0;border-bottom:1px solid #b9b9b9;border-radius:0;padding:11px 2px;background:transparent;color:var(--ink);font-size:16px}
.vaucher-forma fieldset {border-bottom:1px solid var(--line);padding-bottom:24px;margin-top:0;margin-bottom:32px}
.po-dve {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}
.sumi {display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}
.suma-buton {padding:12px 20px;border:1px solid var(--line);background:white;color:var(--ink);font-weight:400}
.suma-buton:hover,.suma-buton[aria-pressed=true] {border-color:var(--gold-dark);background:var(--gold-pale)}
.izbor {display:flex;gap:12px;align-items:flex-start;margin:20px 0;font-size:14px;font-weight:400}
.izbor input {margin-top:3px}
.obobshtenie {padding:30px;background:var(--canvas);border-top:2px solid var(--gold)}
.obobshtenie h2 {font-size:36px}.obobshtenie p {font-size:14px}
.platezhno {font-weight:500}.glaven {display:block;width:100%;padding:15px 20px;border:0;background:var(--gold);color:#272727;text-align:center;font-weight:500;text-decoration:none}
.glaven:hover {background:var(--gold-hover)}
.greshka {padding:18px 22px;border-left:3px solid var(--danger);background:var(--danger-bg);color:var(--danger);margin-bottom:28px}
.med {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(100%)}
.potvarzhdenie,.usloviya {max-width:780px;margin-bottom:60px}.potvarzhdenie .vrazka {max-width:280px;margin:24px 0}
.usloviya h2 {font-size:30px;margin-top:38px}.usloviya li {margin-bottom:9px}.usloviya .marker {background:#fff0cf;font-weight:500}
.dolen {display:flex;flex-wrap:wrap;gap:12px 28px;padding:30px 26px;border-top:1px solid var(--line);max-width:1180px;margin:auto;font-size:13px;color:var(--muted)}
@media(max-width:800px){.podredba{grid-template-columns:1fr;gap:22px}.obobshtenie{position:static}.po-dve{grid-template-columns:1fr}.ramka{padding-top:38px}}
@media(max-width:540px){.shapka-vrazki{width:100%;justify-content:space-between;gap:8px 12px}}
@media print{.shapka,.dolen{display:none}.ramka{padding:0}.usloviya{max-width:none}body::before{display:none}}
