/* David Ken — стиль в духе книги «Неофит за прилавком». Мобильный в первую очередь. */
@font-face{font-family:"Kurale";src:url(/fonts/kurale.woff) format("woff");font-display:swap}
@font-face{font-family:"Ruslan Display";src:url(/fonts/ruslan.woff) format("woff");font-display:swap}
@font-face{font-family:"Lora";font-style:italic;src:url(/fonts/lora-italic.woff) format("woff");font-display:swap}

:root{
  --bg:#f6efdf; --paper:#fbf7ec; --ink:#241f19; --muted:#6b6255;
  --green:#2f4a2c; --gold:#a8782a; --red:#7a2418; --line:#e2d5b8;
  --body:"Kurale",Georgia,"Times New Roman",serif;
  --head:"Ruslan Display","Kurale",Georgia,serif;
  --ital:"Lora",Georgia,serif;
  --w:44rem; --r:10px;
  --orn:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 30'%3E%3Cpath d='M10 15H115M185 15H290' stroke='%23a8782a' stroke-width='1.5'/%3E%3Ccircle cx='10' cy='15' r='3' fill='%23a8782a'/%3E%3Ccircle cx='290' cy='15' r='3' fill='%23a8782a'/%3E%3Cellipse cx='130' cy='15' rx='9' ry='3.5' fill='%232f4a2c' transform='rotate(-15 130 15)'/%3E%3Cellipse cx='170' cy='15' rx='9' ry='3.5' fill='%232f4a2c' transform='rotate(15 170 15)'/%3E%3Crect x='143' y='8' width='14' height='14' transform='rotate(45 150 15)' fill='%23a8782a'/%3E%3Crect x='146.5' y='11.5' width='7' height='7' transform='rotate(45 150 15)' fill='%237a2418'/%3E%3C/svg%3E");
}
/* шрифты для письменностей, которых нет в Kurale: используем системные */
.s-hebrew{--body:"Frank Ruhl Libre","David","Times New Roman",serif;--head:var(--body);--ital:var(--body)}
:lang(zh).s-cjk{--body:"Noto Serif SC","Songti SC","STSong","SimSun",serif;--head:var(--body);--ital:var(--body)}
:lang(ja).s-cjk{--body:"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho","MS Mincho",serif;--head:var(--body);--ital:var(--body)}
.s-tibetan{--body:"Noto Serif Tibetan","Jomolhari","Microsoft Himalaya","Kailasa",serif;--head:var(--body);--ital:var(--body)}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:1.0625rem;line-height:1.6;
  text-rendering:optimizeLegibility}
.s-tibetan body{font-size:1.25rem;line-height:1.9}
.s-cjk body{line-height:1.8}
img{max-width:100%;height:auto;display:block}
a{color:var(--red);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--green)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.wrap{width:100%;max-width:68rem;margin-inline:auto;padding-inline:1.1rem}
.prose{max-width:var(--w)}
.small{font-size:.9rem}.muted{color:var(--muted)}.center{text-align:center}
.skip{position:absolute;inset-inline-start:-9999px}.skip:focus{inset-inline-start:1rem;top:1rem;background:#fff;padding:.5rem;z-index:9}

/* орнамент-разделитель */
.orn{height:22px;max-width:15rem;margin:.6rem auto 1.4rem;background:var(--orn) center/contain no-repeat}

/* шапка */
.top{position:sticky;top:0;z-index:5;background:rgba(246,239,223,.96);border-bottom:1px solid var(--line);
  backdrop-filter:saturate(1.2) blur(6px)}
.top-in{display:flex;align-items:center;gap:.5rem;min-height:3.4rem}
.logo{font-family:var(--head);color:var(--green);text-decoration:none;font-size:1.3rem;letter-spacing:.02em;white-space:nowrap;margin-inline-end:auto}
.logo:hover{color:var(--red)}
details>summary{list-style:none;cursor:pointer;user-select:none}
details>summary::-webkit-details-marker{display:none}
.nav-d>summary,.langs>summary{padding:.45rem .7rem;border:1px solid var(--line);border-radius:999px;font-size:.95rem;background:var(--paper)}
.nav-d>summary::after{content:" ☰"}
.nav ul,.langs ul{list-style:none;margin:0;padding:.4rem}
.nav-d[open] ul,.langs[open] ul{position:absolute;inset-inline:.6rem;top:3.4rem;background:var(--paper);border:1px solid var(--line);
  border-radius:var(--r);box-shadow:0 10px 30px rgba(60,40,10,.15)}
.nav li a,.langs li a{display:block;padding:.75rem 1rem;text-decoration:none;color:var(--ink);border-radius:8px}
.nav li a:hover,.langs li a:hover,.nav a[aria-current],.langs a[aria-current]{background:#f1e6cc;color:var(--red)}
.langs[open] ul{display:grid;grid-template-columns:1fr 1fr}
.globe{display:inline-block;width:.9em;height:.9em;margin-inline-end:.3em;vertical-align:-.1em;border-radius:50%;
  border:1.5px solid var(--green);background:linear-gradient(90deg,transparent 45%,var(--green) 45% 55%,transparent 55%),
  linear-gradient(transparent 45%,var(--green) 45% 55%,transparent 55%)}
.nav-wide{display:none}
@media (min-width:60rem){
  .nav-d{display:none}
  .nav-wide{display:flex;gap:.1rem}
  .nav li a{padding:.5rem .7rem}
  .langs{position:relative}
  .langs[open] ul{inset-inline:auto 0;width:20rem;top:2.6rem}
}
/* заголовки страниц */
h1,h2,h3{font-family:var(--head);font-weight:normal;color:var(--green);line-height:1.25;hyphens:none}
.ph{text-align:center;padding-top:2.2rem}
.ph h1{font-size:clamp(1.6rem,6vw,2.4rem);margin:.2rem 0}
.lead{font-size:1.15rem;color:var(--muted);margin:.4rem auto 0;max-width:34rem}
.crumbs{margin:0;font-size:.9rem}
.sec{text-align:center;font-size:clamp(1.3rem,4.5vw,1.8rem);margin:2.6rem 0 0}

/* текст */
.text{hyphens:auto;-webkit-hyphens:auto}
.text p{margin:0 0 1em}
.text h2{font-size:1.45rem;margin:2rem 0 .6rem}
.text h3{font-size:1.2rem;margin:1.6rem 0 .5rem}
.text blockquote{margin:1.4rem 0;padding:.6rem 1.2rem;border-inline-start:3px solid var(--gold);font-family:var(--ital);font-style:italic;background:var(--paper)}
.text ul,.text ol{padding-inline-start:1.3rem}
.text hr{border:0;height:22px;background:var(--orn) center/12rem no-repeat;margin:1.8rem 0}
/* буквица в первом абзаце */
.s-latin .initial>p:first-of-type::first-letter{
  font-family:"Ruslan Display",serif;float:inline-start;font-size:3.4em;line-height:1;color:var(--red);
  padding:.12em .14em .02em;margin-inline-end:.12em;margin-top:.06em;
  border:2px solid var(--gold);outline:1px solid var(--green);outline-offset:-6px;background:#f1e6cc;border-radius:4px}

/* главная */
.hero{position:relative;color:#fff;background:#2b2a1f;overflow:hidden}
.hero img{width:100%;height:58vh;min-height:20rem;max-height:34rem;object-fit:cover;opacity:.9}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,18,10,.15) 0%,rgba(20,18,10,.25) 45%,rgba(20,18,10,.82) 100%)}
.hero-txt{position:absolute;inset-inline:0;bottom:0;z-index:1;padding-bottom:1.6rem;text-align:center}
.hero h1{color:#f6e7bf;font-size:clamp(1.7rem,7vw,3rem);margin:0 0 .4rem;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.hero p{margin:0 auto .6rem;max-width:36rem;text-shadow:0 1px 8px rgba(0,0,0,.7);font-size:1.1rem}
.hero-btns{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;margin-top:1rem!important}
.p-home .prose{padding-top:1.6rem}

/* кнопки */
.btn{display:inline-block;padding:.7rem 1.3rem;border-radius:999px;background:var(--red);color:#fff8e6;text-decoration:none;
  border:0;font:inherit;cursor:pointer;box-shadow:0 2px 0 #4f160f}
.btn:hover{background:var(--green);color:#fff}
.btn-2{background:rgba(255,248,230,.92);color:var(--green);box-shadow:none}
.band{padding-bottom:1rem}

/* карточки статей */
.cards{list-style:none;padding:0;margin:0;display:grid;gap:.8rem}
.cards a{display:block;padding:1rem 1.1rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);text-decoration:none;color:var(--ink)}
.cards a:hover{border-color:var(--gold)}
.c-t{display:block;font-family:var(--head);color:var(--green);font-size:1.15rem}
.c-d{display:block;color:var(--muted);font-size:.95rem;margin-top:.2rem}
@media (min-width:44rem){.p-home .cards{grid-template-columns:repeat(3,1fr)}}

/* магазин */
.feature{display:grid;gap:1.2rem;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:1rem}
.feature img{width:11rem;margin-inline:auto;border-radius:4px;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.feature h3{margin:.2rem 0}
@media (min-width:40rem){.feature{grid-template-columns:auto 1fr}}
.products{list-style:none;padding:0;margin:1rem 0 0;display:grid;gap:1.2rem}
@media (min-width:44rem){.products{grid-template-columns:repeat(2,1fr)}}
@media (min-width:64rem){.products{grid-template-columns:repeat(3,1fr)}}
.product{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.product img{width:62%;max-width:15rem;aspect-ratio:2/3;object-fit:cover;margin:1.2rem auto 0;border-radius:4px;box-shadow:0 8px 22px rgba(60,40,10,.3)}
.ph-img{aspect-ratio:16/9;background:var(--orn) center/60% no-repeat,linear-gradient(160deg,#efe2c2,#e2cf9f)}
.p-body{padding:1rem 1.1rem 1.2rem;display:flex;flex-direction:column;flex:1}
.p-body h2{font-size:1.25rem;margin:0 0 .3rem}
.p-body .btn{margin-top:auto;align-self:flex-start}
.price{font-family:var(--head);color:var(--red);font-size:1.2rem;margin:.4rem 0 .8rem}

/* форма */
.form{display:grid;gap:.9rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:1.2rem;margin:1rem 0 3rem}
.form label{display:grid;gap:.3rem;font-size:.95rem}
.form input,.form select,.form textarea{font:inherit;font-size:1rem;padding:.7rem .8rem;border:1px solid #cdbb94;border-radius:8px;background:#fff;color:var(--ink);width:100%}
.form textarea{resize:vertical}
.form .btn{justify-self:start}
.opt{color:var(--muted);font-size:.85rem}
.hp{position:absolute!important;inset-inline-start:-9999px}
.form-status:empty{display:none}
.form-status{padding:.7rem .9rem;border-radius:8px;background:#eef3e6;color:var(--green)}

/* видео и аудио */
.video{margin:1.6rem 0}
.video-play{position:relative;display:grid;place-items:center;align-content:center;gap:.4rem;width:100%;aspect-ratio:16/9;border:0;border-radius:var(--r);
  cursor:pointer;color:#f6e7bf;font:inherit;padding:1rem;text-align:center;
  background:radial-gradient(circle at 50% 40%,#3f5a33 0%,#203018 70%)}
.video-play:hover .video-icon{transform:scale(1.08)}
.video-icon{width:4.2rem;height:4.2rem;border-radius:50%;background:var(--red);box-shadow:0 0 0 4px rgba(168,120,42,.6);transition:transform .2s;
  display:grid;place-items:center}
.video-icon::after{content:"";border-style:solid;border-width:.8rem 0 .8rem 1.3rem;border-color:transparent transparent transparent #fff8e6;margin-inline-start:.3rem}
[dir=rtl] .video-icon::after{transform:scaleX(-1);margin-inline-start:0;margin-inline-end:.3rem}
.video-cap{font-family:var(--head);font-size:1.1rem}
.video-note{font-size:.8rem;opacity:.8;max-width:26rem}
.video iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:var(--r);display:block}
.audio{margin:1.4rem 0;padding:.8rem 1rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--r)}
.audio figcaption{font-family:var(--head);color:var(--green);margin-bottom:.4rem}
.audio audio{width:100%}

/* подвал */
.foot{margin-top:3rem;border-top:1px solid var(--line);padding:1rem 0 2rem;text-align:center;background:var(--paper)}
.foot-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:.2rem 1rem;margin-bottom:.6rem}
.foot-nav a{color:var(--green);text-decoration:none}
.also{margin-top:2rem;border-top:1px solid var(--line);padding-top:1rem}

/* корень сайта: выбор языка */
.root{text-align:center;padding-top:15vh;max-width:40rem}
.logo-big{font-family:"Ruslan Display",serif;font-weight:normal;color:var(--green);font-size:2.6rem;margin:0}
.lang-grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.6rem}
.lang-grid a{display:block;padding:.8rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);text-decoration:none;font-size:1.1rem}

@media (prefers-reduced-motion:reduce){*{transition:none!important}}
@media print{.top,.foot,.hero-btns,.form{display:none}}
.text blockquote p{margin:0}
