/* ==========================================================================
   viinatakso.net — Ember Noir · editorial (без карточных сеток как у .org)
   Таймлайн, журнал, манифест, сигнал-контакты.
   ========================================================================== */

*,*::before,*::after{box-sizing:border-box}

:root{
  --bg0:#080706;
  --bg1:#100E0C;
  --ink:#F5EFE6;
  --mute:#B4A99C;
  --line:rgba(245,239,230,.12);
  --ember:#E6A35A;
  --ember2:#C97B3A;
  --mint:#8FB9B0;
  --pill:999px;
  --max:980px;
  --sans:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  --display:Georgia,"Iowan Old Style","Palatino Linotype",Palatino,"Times New Roman",serif;
  color-scheme:dark;
}

html{scroll-behavior:smooth;background:var(--bg0);-webkit-text-size-adjust:100%}
body{
  margin:0;color:var(--ink);font:17px/1.7 var(--sans);padding-bottom:96px;
  -webkit-font-smoothing:antialiased;
  background:
    radial-gradient(800px 480px at 8% 0%,rgba(230,163,90,.14),transparent 55%),
    radial-gradient(700px 420px at 100% 20%,rgba(143,185,176,.1),transparent 50%),
    radial-gradient(600px 400px at 50% 100%,rgba(201,123,58,.08),transparent 55%),
    linear-gradient(180deg,#080706,#0E0C0A 40%,#080706);
  background-attachment:fixed;
}
a{color:var(--mint);text-underline-offset:3px}
a:hover{color:var(--ember)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 clamp(18px,4vw,28px)}

h1,h2,h3{margin:0 0 .4em;letter-spacing:-.03em;color:var(--ink)}
h1{font:600 clamp(34px,6.4vw,58px)/1.05 var(--display)}
h2{font:600 clamp(28px,4.4vw,42px)/1.12 var(--display)}
h3{font:700 17px/1.3 var(--sans)}
p{margin:0 0 1em}
.lede{font-size:clamp(16px,2vw,19px);line-height:1.65;color:var(--mute);max-width:52ch;margin:0 0 1.2em}

/* header */
.top{
  position:sticky;top:0;z-index:50;
  background:rgba(8,7,6,.75);backdrop-filter:blur(18px);
  border-bottom:1px solid var(--line);
}
.top .wrap{display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-height:72px}
.brand{
  font:600 24px/1 var(--display);color:var(--ink);text-decoration:none;
  text-shadow:0 0 24px rgba(230,163,90,.28);
}
.brand em{
  font-style:italic;
  background:linear-gradient(120deg,#FFE2B5,var(--ember),#D4846A);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.langs{margin-left:auto;display:flex;gap:2px}
.langs a{
  text-decoration:none;color:var(--mute);font-size:11px;font-weight:800;
  letter-spacing:.12em;padding:8px 12px;border-radius:var(--pill);
}
.langs a[aria-current],.langs a:hover{
  color:#100E0C;background:linear-gradient(135deg,#FFE0B0,var(--ember));
  box-shadow:0 0 20px rgba(230,163,90,.35);
}
.top-phone{
  font-weight:700;font-size:14px;color:var(--ink);text-decoration:none;
  padding:10px 16px;border-radius:var(--pill);
  border:1px solid rgba(230,163,90,.4);
  box-shadow:0 0 24px rgba(230,163,90,.18);
}
.top-phone:hover{box-shadow:0 0 36px rgba(230,163,90,.35);color:#fff}

/* hero */
.hero{position:relative;overflow:hidden;padding:clamp(52px,10vw,120px) 0 clamp(48px,7vw,88px)}
.hero::before{
  content:"";position:absolute;right:-15%;top:0;width:55vw;height:55vw;max-width:520px;max-height:520px;
  border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(230,163,90,.26),transparent 68%);
  filter:blur(6px);animation:drift 14s ease-in-out infinite alternate;
}
@keyframes drift{to{transform:translate(-20px,16px)}}
.hero .wrap{position:relative;z-index:1;max-width:680px}
.eyebrow{
  display:inline-block;font-size:11px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;
  color:#F0C48A;margin-bottom:22px;padding:8px 14px;border-radius:var(--pill);
  border:1px solid rgba(230,163,90,.3);background:rgba(230,163,90,.08);
  box-shadow:0 0 22px rgba(230,163,90,.12);
}
.hero h1 span{
  font-style:italic;
  background:linear-gradient(115deg,#FFE2B5,var(--ember),#E08A6A);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 16px rgba(230,163,90,.35));
}
.cta{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 0}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:52px;padding:0 26px;border-radius:var(--pill);
  font:700 15px/1 var(--sans);text-decoration:none;
  transition:transform .18s,box-shadow .2s,background .2s,color .2s,border-color .2s;
}
.btn:hover{transform:translateY(-2px)}
.btn-main{
  color:#120E0B;border:0;
  background:linear-gradient(145deg,#FFE0B0,var(--ember) 45%,var(--ember2));
  box-shadow:0 0 32px rgba(230,163,90,.4),0 12px 28px rgba(0,0,0,.45);
}
.btn-ghost{
  color:var(--ink);background:transparent;
  border:1px solid rgba(245,239,230,.22);
}
.btn-ghost:hover{border-color:rgba(143,185,176,.55);box-shadow:0 0 28px rgba(143,185,176,.2)}

.signals{
  display:flex;flex-wrap:wrap;gap:18px 28px;margin-top:36px;
  padding-top:22px;border-top:1px solid var(--line);
}
.signals span{font-size:13px;color:var(--mute)}
.signals strong{display:block;color:#F5EFE6;font-size:14px;margin-bottom:2px}

section{padding:clamp(48px,8vw,96px) 0}
.section-head{max-width:54ch;margin-bottom:clamp(28px,5vw,48px)}
.band-glow{
  position:relative;
  background:linear-gradient(180deg,rgba(230,163,90,.05),transparent 70%);
}
.band-glow::before{
  content:"";position:absolute;left:50%;top:0;transform:translateX(-50%);
  width:min(480px,70%);height:1px;
  background:linear-gradient(90deg,transparent,rgba(230,163,90,.55),transparent);
  box-shadow:0 0 24px rgba(230,163,90,.45);
}

/* —— Журнал напитков: без карточек —— */
.journal{display:flex;flex-direction:column;gap:0}
.journal-item{
  display:grid;grid-template-columns:minmax(100px,140px) 1fr;
  gap:8px 32px;padding:28px 0;
  border-bottom:1px solid var(--line);
  align-items:baseline;
}
.journal-item:first-child{border-top:1px solid var(--line)}
.journal-item .mark{
  font:italic 600 clamp(28px,4vw,40px)/1 var(--display);
  background:linear-gradient(120deg,#FFE2B5,var(--ember));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:none;
  filter:drop-shadow(0 0 14px rgba(230,163,90,.3));
}
.journal-item p{margin:0;color:var(--mute);max-width:48ch;font-size:15.5px}

/* —— Вертикальный spine-таймлайн —— */
.spine{position:relative;padding-left:36px;max-width:640px}
.spine::before{
  content:"";position:absolute;left:10px;top:8px;bottom:8px;width:2px;
  background:linear-gradient(180deg,rgba(230,163,90,.7),rgba(143,185,176,.35),rgba(230,163,90,.15));
  box-shadow:0 0 16px rgba(230,163,90,.45);
  border-radius:2px;
}
.spine-step{position:relative;padding:0 0 36px 20px}
.spine-step:last-child{padding-bottom:0}
.spine-step::before{
  content:"";position:absolute;left:-30px;top:6px;width:14px;height:14px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#FFE2B5,var(--ember));
  box-shadow:0 0 18px rgba(230,163,90,.65),0 0 4px #FFE2B5;
  border:2px solid rgba(8,7,6,.8);
}
.spine-step .idx{
  font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;
  color:#F0C48A;margin-bottom:6px;
}
.spine-step h3{margin-bottom:6px;font-size:20px;font-family:var(--display);font-weight:600}
.spine-step p{margin:0;color:var(--mute);font-size:15px}

/* —— Манифест: без двух карточек —— */
.manifest{max-width:720px}
.manifest .quote{
  font:italic 600 clamp(26px,4.5vw,40px)/1.2 var(--display);
  color:#F5EFE6;margin:0 0 28px;
  text-shadow:0 0 40px rgba(230,163,90,.2);
}
.manifest .quote em{
  font-style:italic;
  background:linear-gradient(120deg,#FFE2B5,var(--ember));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.constellation{
  margin-top:36px;padding-top:28px;
  border-top:1px solid var(--line);
}
.constellation h3{
  font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  color:#F0C48A;margin-bottom:16px;font-weight:800;
}
.constellation p{
  font-family:var(--display);font-style:italic;
  font-size:clamp(18px,2.8vw,26px);line-height:1.55;
  color:rgba(245,239,230,.88);margin:0;
}
.constellation p span{
  white-space:nowrap;padding:0 .15em;
  text-shadow:0 0 18px rgba(230,163,90,.35);
}

/* FAQ — линии, не плитки */
.faq-list details{
  border:0;border-bottom:1px solid var(--line);
  background:transparent;border-radius:0;margin:0;padding:0;
  box-shadow:none;
}
.faq-list details:first-child{border-top:1px solid var(--line)}
.faq-list summary{
  cursor:pointer;list-style:none;padding:18px 0;font-weight:700;color:var(--ink);
}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{
  content:"+";float:right;color:var(--ember);font-weight:700;
  text-shadow:0 0 12px rgba(230,163,90,.5);
}
.faq-list details[open] summary::after{content:"–"}
.faq-list details p{margin:0 0 18px;color:var(--mute);max-width:58ch}

/* —— Контакт-сигнал: огромный номер, без карточек —— */
.signal{text-align:left}
.signal .big-phone{
  display:inline-block;font:600 clamp(32px,7vw,56px)/1.05 var(--display);
  color:#F5EFE6;text-decoration:none;letter-spacing:-.03em;
  text-shadow:0 0 40px rgba(230,163,90,.35);
  margin:8px 0 18px;
  background:linear-gradient(115deg,#FFF0D6,var(--ember));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 20px rgba(230,163,90,.4));
}
.signal .channels{
  display:flex;flex-wrap:wrap;gap:10px 22px;margin:0 0 28px;
  font-size:15px;
}
.signal .channels a{
  color:var(--ink);text-decoration:none;
  border-bottom:1px solid rgba(230,163,90,.45);
  padding-bottom:2px;
  text-shadow:0 0 16px rgba(230,163,90,.2);
}
.signal .channels a:hover{color:var(--ember);border-bottom-color:var(--ember)}

footer{
  margin:40px 0 0;padding:40px 0 120px;
  border-top:1px solid var(--line);
  color:rgba(245,239,230,.6);
  background:linear-gradient(180deg,transparent,rgba(230,163,90,.04));
}
footer strong{color:#F5EFE6;font:600 18px/1.2 var(--display)}
footer a{color:#F0C48A;text-decoration:none}
footer p{margin:0 0 10px;font-size:14px}

.bar{
  position:fixed;left:12px;right:12px;bottom:12px;z-index:60;
  display:flex;gap:8px;padding:10px;border-radius:26px;
  background:rgba(10,8,7,.9);backdrop-filter:blur(16px);
  border:1px solid rgba(230,163,90,.3);
  box-shadow:0 0 36px rgba(230,163,90,.18),0 14px 36px rgba(0,0,0,.5);
}
.bar .btn{flex:1;min-height:46px;padding:0 8px;font-size:13px}

@media (max-width:720px){
  .journal-item{grid-template-columns:1fr;gap:6px;padding:22px 0}
  .top-phone{display:none}
  .spine{padding-left:28px}
}
@media (max-width:520px){
  .cta{flex-direction:column}
  .cta .btn{width:100%}
}
@media (min-width:861px){
  .bar{display:none}
  body{padding-bottom:0}
  footer{padding-bottom:48px}
}
@media (prefers-reduced-motion:reduce){
  .hero::before{animation:none}
  .btn:hover{transform:none}
}

/* legacy class stubs — чтобы старые имена не ломали страницу */
.menu-list,.path,.story,.contact-row,.route-strip,.paper,.shade,.areas,.panel{ }
