/* 7k912i.team — шаблон lighthouse, перекраска под accent_hue 205 + аналоговый 240.
   Namespace .lh* сохранён. Шрифты: Fira Sans Extra Condensed (display) + Onest (body),
   у обоих полный фолбэк-стек, кириллица в обоих начертаниях есть.
   Порядок блоков: lhtop → lhbeam → lhsight → lhmast[lhaxis+lhtiers] → lhnote → lhbase. */

:root{
  --dsp:"Fira Sans Extra Condensed",system-ui,"Segoe UI",Arial,sans-serif;
  --bdy:"Onest",system-ui,"Segoe UI",Arial,sans-serif;
  --h1:205;
  --h2:240;
  --a1:hsl(205 82% 68%);
  --a1d:hsl(205 76% 55%);
  --a1s:hsl(205 82% 68% / .15);
  --a2:hsl(240 72% 72%);
  --a2s:hsl(240 72% 72% / .13);
  --sig:hsl(28 92% 60%);
  --bg:hsl(210 32% 7%);
  --bg2:hsl(210 28% 10%);
  --panel:hsl(210 24% 13%);
  --panel2:hsl(210 21% 18%);
  --line:hsl(210 18% 24%);
  --line2:hsl(210 20% 34%);
  --tx:hsl(205 22% 95%);
  --tx2:hsl(208 16% 80%);
  --tx3:hsl(208 13% 63%);
  --col:1180px;
  --rail:132px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--bg);color:var(--tx);
  font:400 18px/1.62 var(--bdy);
  -webkit-text-size-adjust:100%;overflow-x:hidden;
}
body::before{
  content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(760px 520px at 78% -6%,var(--a1s),transparent 70%),
    radial-gradient(620px 560px at 4% 46%,var(--a2s),transparent 74%);
}
h1,h2,h3,h4{font-family:var(--dsp);font-weight:700;line-height:1.14;margin:0 0 12px}
h1{font-size:clamp(31px,4.4vw,50px);letter-spacing:-.005em}
h2{font-size:clamp(25px,2.9vw,35px)}
h3{font-size:20px}
p{margin:0 0 13px}
a{color:var(--a1);text-decoration:none}
a:hover{text-decoration:underline}
.lh-em{color:var(--a1)}
.lh-em2{color:var(--a2)}
.lh-n{font-family:var(--dsp);color:var(--tx)}
.lh-wrap{position:relative;z-index:1;max-width:var(--col);margin:0 auto;padding:0 20px;min-width:0}

/* ── планка смотрителя ─────────────────────────────────────── */
.lhtop{position:sticky;top:0;z-index:40;background:hsl(var(--h1) 32% 7% / .94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.lhtop__in{display:flex;align-items:center;gap:14px;max-width:var(--col);margin:0 auto;padding:9px 20px;min-width:0}
.lhlog{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-family:var(--dsp);font-size:22px;font-weight:700;letter-spacing:.04em;color:var(--tx)}
.lhlog:hover{text-decoration:none}
.lhlog i{
  width:19px;height:19px;flex:none;transform:rotate(45deg);
  background:linear-gradient(135deg,var(--a1),var(--a1d));
  box-shadow:0 0 0 3px hsl(var(--h1) 82% 68% / .18);
}
.lhtop__st{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--tx3);letter-spacing:.04em}
.lhtop__st s{width:8px;height:8px;border-radius:50%;background:var(--a2);text-decoration:none;flex:none}
.lhtop__cta{margin-left:auto}

.lhbtn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:48px;padding:12px 24px;border:1px solid transparent;
  font-family:var(--dsp);font-size:18px;font-weight:700;letter-spacing:.02em;
  color:hsl(var(--h1) 45% 8%);background:linear-gradient(180deg,var(--a1),var(--a1d));
}
.lhbtn:hover{text-decoration:none;filter:brightness(1.08)}
.lhbtn--sm{min-height:44px;padding:8px 16px;font-size:16px}
.lhbtn--ghost{background:none;border-color:var(--line2);color:var(--tx)}

/* ── первый экран: фонарное отделение ──────────────────────── */
.lhbeam{position:relative;z-index:1;overflow:hidden;border-bottom:1px solid var(--line)}
.lhbeam__in{
  display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.9fr);
  gap:34px;align-items:center;padding:40px 20px 34px;min-width:0;
}
.lhkick{display:inline-flex;align-items:center;gap:9px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--a2);margin-bottom:12px}
.lhkick s{width:26px;height:1px;background:var(--a2);text-decoration:none;display:block}
.lhlede{font-size:19px;color:var(--tx2);max-width:660px}
.lhcta{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0 10px}
.lhfine{font-size:14px;color:var(--tx3);margin:0}

.lhkpi{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px;min-width:0}
.lhkpi div{border:1px solid var(--line);border-top:2px solid var(--a1);background:hsl(0 0% 100% / .025);padding:12px 13px;min-width:0}
.lhkpi em{display:block;font-family:var(--dsp);font-style:normal;font-size:25px;font-weight:700;color:var(--tx)}
.lhkpi span{display:block;font-size:13px;color:var(--tx3);margin-top:3px}

/* башня + луч */
.lhtower{position:relative;min-height:400px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}
.lhray{
  position:absolute;left:50%;top:78px;width:min(760px,120%);aspect-ratio:1;
  transform:translate(-50%,-50%) rotate(-12deg);pointer-events:none;z-index:0;
  background:conic-gradient(from 62deg at 50% 50%,
    transparent 0 0deg, var(--a1s) 0 17deg, transparent 17deg 180deg,
    var(--a1s) 180deg 196deg, transparent 196deg 360deg);
  -webkit-mask-image:radial-gradient(closest-side,#000 10%,rgba(0,0,0,.42) 58%,transparent 100%);
  mask-image:radial-gradient(closest-side,#000 10%,rgba(0,0,0,.42) 58%,transparent 100%);
}
.lhlamp{
  position:relative;z-index:2;width:66px;height:66px;border-radius:50%;
  background:radial-gradient(circle at 50% 44%,#fff 0 12%,var(--a1) 13% 46%,var(--a1d) 47% 100%);
  box-shadow:0 0 0 6px hsl(var(--h1) 82% 68% / .12),0 0 42px 10px hsl(var(--h1) 82% 68% / .26);
}
.lhtower__gal{position:relative;z-index:2;width:118px;height:11px;background:var(--panel2);border:1px solid var(--line2);margin-top:-4px}
.lhtower__body{
  position:relative;z-index:2;width:104px;height:238px;
  clip-path:polygon(29% 0,71% 0,100% 100%,0 100%);
  background:
    linear-gradient(90deg,hsl(0 0% 0% / .38),transparent 34%,transparent 66%,hsl(0 0% 0% / .42)),
    repeating-linear-gradient(180deg,var(--a1d) 0 30px,var(--panel2) 30px 60px);
}
.lhtower__win{position:absolute;z-index:3;left:50%;transform:translateX(-50%);width:11px;height:16px;background:var(--bg);border:1px solid var(--line2)}
.lhtower__win--a{bottom:150px}
.lhtower__win--b{bottom:74px}
.lhtower__foot{
  position:relative;z-index:2;width:186px;height:34px;
  clip-path:polygon(8% 0,92% 0,100% 100%,0 100%);
  background:linear-gradient(180deg,var(--panel2),var(--panel));
  border-top:1px solid var(--line2);
}
.lhtower__cap{position:relative;z-index:2;margin-top:12px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--tx3);text-align:center}

/* ── таблица дальности видимости ───────────────────────────── */
.lhsight{position:relative;z-index:1;border-bottom:1px solid var(--line);background:var(--bg2)}
.lhsight__in{max-width:var(--col);margin:0 auto;padding:22px 20px;min-width:0}
.lhsight__t{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:12px}
.lhsight__t em{font-family:var(--dsp);font-style:normal;font-weight:700;font-size:18px;color:var(--tx)}
.lhsight__t span{font-size:14px;color:var(--tx3)}
.lhscroll{overflow-x:auto;min-width:0;-webkit-overflow-scrolling:touch}
.lhtable{width:100%;min-width:520px;border-collapse:collapse;font-size:16px}
.lhtable th{
  text-align:left;font-family:var(--dsp);font-size:13px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--tx3);font-weight:700;padding:8px 12px;border-bottom:1px solid var(--line2);
}
.lhtable td{padding:10px 12px;border-bottom:1px solid var(--line);color:var(--tx2);vertical-align:top}
.lhtable td.v{font-family:var(--dsp);color:var(--a1);white-space:nowrap}
.lhtable tr:last-child td{border-bottom:none}

/* ── тело: ствол-ось + ярусы ───────────────────────────────── */
.lhmast{
  position:relative;z-index:1;max-width:var(--col);margin:0 auto;padding:26px 20px 0;
  display:grid;grid-template-columns:var(--rail) minmax(0,1fr);gap:26px;min-width:0;
}
.lhaxis{position:sticky;top:74px;align-self:start;min-width:0}
.lhaxis__t{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--tx3);margin-bottom:10px;display:block}
.lhaxis__bar{position:relative;padding-left:16px;border-left:2px solid var(--line2)}
.lhaxis__bar::before{content:"";position:absolute;left:-5px;top:-4px;width:8px;height:8px;background:var(--a1);transform:rotate(45deg)}
.lhaxis__m{display:block;position:relative;margin-bottom:13px;font-size:13px;color:var(--tx3);line-height:1.3}
.lhaxis__m::before{content:"";position:absolute;left:-21px;top:7px;width:10px;height:2px;background:var(--line2)}
.lhaxis__m em{display:block;font-family:var(--dsp);font-style:normal;font-size:14px;color:var(--tx2)}
.lhaxis__m:hover{text-decoration:none;color:var(--a1)}
.lhaxis__m:hover em{color:var(--a1)}

.lhtiers{min-width:0}
.lhtier{position:relative;padding:0 0 6px 22px;border-left:1px solid var(--line);min-width:0}
.lhtier::before{content:"";position:absolute;left:-5px;top:9px;width:9px;height:9px;background:var(--bg);border:2px solid var(--a1);transform:rotate(45deg)}
.lhmark{
  display:flex;flex-wrap:wrap;gap:9px;align-items:center;
  font-family:var(--dsp);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--tx3);margin-bottom:8px;
}
.lhmark i{font-style:normal;color:var(--a2)}
.lhpanel{border:1px solid var(--line);background:var(--panel);padding:20px 22px;min-width:0}
.lhpanel--bare{border:none;background:none;padding:0}
.lhpanel p{color:var(--tx2)}
.lhseam{
  height:14px;margin:22px 0 22px 22px;
  background:
    repeating-linear-gradient(90deg,var(--line2) 0 2px,transparent 2px 58px),
    linear-gradient(180deg,var(--panel2),transparent);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}

.lhlist{list-style:none;margin:0 0 12px;padding:0}
.lhlist li{position:relative;padding-left:20px;margin-bottom:8px;color:var(--tx2);font-size:17px}
.lhlist li::before{content:"";position:absolute;left:0;top:9px;width:7px;height:7px;background:var(--a2);transform:rotate(45deg)}
.lhlist li em{font-style:normal;font-family:var(--dsp);color:var(--tx)}

.lhgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));gap:14px;min-width:0}
.lhcell{border:1px solid var(--line);border-left:3px solid var(--a2);background:hsl(0 0% 100% / .025);padding:14px 16px;min-width:0}
.lhcell h3{margin-bottom:6px;font-size:19px}
.lhcell p{font-size:16px;margin-bottom:6px;color:var(--tx2)}
.lhcell span{display:block;font-family:var(--dsp);font-size:13px;color:var(--tx3)}

.lhsteps{display:grid;gap:9px;min-width:0}
.lhstep{
  display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:center;
  border:1px solid var(--line);background:hsl(0 0% 100% / .025);padding:11px 14px;min-width:0;
}
.lhstep i{
  font-style:normal;font-family:var(--dsp);font-size:15px;font-weight:700;text-align:center;
  padding:5px 0;color:hsl(var(--h1) 45% 9%);background:var(--a1);
}
.lhstep em{display:block;font-style:normal;font-family:var(--dsp);font-size:19px;color:var(--tx)}
.lhstep__c{display:block;font-size:14px;color:var(--tx3)}
.lhstep>span{font-family:var(--dsp);font-size:15px;color:var(--a2);white-space:nowrap}
.lhstep--t1 i{opacity:.64}
.lhstep--t2 i{opacity:.72}
.lhstep--t3 i{opacity:.8}
.lhstep--t4 i{opacity:.88}
.lhstep--t5 i{opacity:.94}

.lhsay{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:14px;min-width:0;margin-bottom:18px}
.lhquote{border:1px solid var(--line);background:var(--panel);padding:15px 17px;min-width:0}
.lhquote p{font-size:16px;margin:0 0 9px;color:var(--tx2)}
.lhquote footer{display:flex;align-items:center;gap:8px;font-family:var(--dsp);font-size:13px;color:var(--tx3)}
.lhquote footer s{width:8px;height:8px;background:var(--a2);transform:rotate(45deg);text-decoration:none;flex:none}

.lhqa{border-top:1px solid var(--line);padding:14px 0 2px;min-width:0}
.lhqa--first{border-top:none}
.lhqa h3{margin-bottom:6px;color:var(--tx)}
.lhqa p{font-size:16px;color:var(--tx2);margin-bottom:6px}

.lhecho{
  margin-top:14px;padding:12px 16px;border-left:3px solid var(--a1);background:hsl(0 0% 100% / .035);
  font-size:16px;color:var(--tx2);
}
.lhecho em{display:block;font-style:normal;font-family:var(--dsp);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--a1);margin-bottom:3px}

/* ── заметка автора ────────────────────────────────────────── */
.lhnote{
  position:relative;z-index:1;max-width:var(--col);margin:28px auto 0;padding:20px 24px;
  border:1px dashed var(--line2);background:hsl(0 0% 100% / .025);
}
.lhnote h3{color:var(--a1)}
.lhnote p{color:var(--tx2);font-size:17px;margin-bottom:8px}

/* ── основание: каменная кладка ────────────────────────────── */
.lhbase{position:relative;z-index:1;margin-top:30px;background:var(--bg2);border-top:1px solid var(--line2)}
.lhwall{position:relative;height:74px;overflow:hidden;background:linear-gradient(180deg,var(--panel),var(--panel2))}
.lhwall::before,.lhwall::after{content:"";position:absolute;inset:0}
.lhwall::before{
  background:
    repeating-linear-gradient(180deg,var(--line2) 0 2px,transparent 2px 26px),
    repeating-linear-gradient(90deg,var(--line2) 0 2px,transparent 2px 72px);
}
.lhwall::after{
  background:repeating-linear-gradient(90deg,var(--line2) 0 2px,transparent 2px 72px);
  background-position:36px 0;
  -webkit-mask-image:repeating-linear-gradient(180deg,#000 0 26px,transparent 26px 52px);
  mask-image:repeating-linear-gradient(180deg,#000 0 26px,transparent 26px 52px);
  -webkit-mask-position:0 26px;mask-position:0 26px;
}
.lhfoot__in{
  max-width:var(--col);margin:0 auto;padding:24px 20px;
  display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr);gap:24px;min-width:0;
}
.lhfoot__in h4{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--tx3)}
.lhfoot__in p,.lhfoot__in li{font-size:15px;color:var(--tx3)}
.lhfoot__in ul{list-style:none;margin:0;padding:0}
.lhfoot__in li{margin-bottom:6px}
.lhfoot__in li a{display:inline-flex;align-items:center;min-height:44px}
.lhage{
  display:inline-block;font-family:var(--dsp);font-weight:700;font-size:13px;
  border:1px solid var(--sig);color:var(--sig);padding:1px 7px;margin-right:7px;
}

/* ── деградация ────────────────────────────────────────────── */
@media (max-width:980px){
  .lhbeam__in{grid-template-columns:minmax(0,1fr);gap:26px}
  .lhtower{min-height:320px;order:2}
  .lhray{width:min(560px,150%)}
  .lhmast{grid-template-columns:minmax(0,1fr);gap:14px}
  .lhaxis{position:static}
  .lhaxis__bar{border-left:none;padding-left:0;display:flex;flex-wrap:wrap;gap:8px}
  .lhaxis__bar::before{display:none}
  /* тач-цель: пункты оси иначе ~33 px */
  .lhaxis__m{margin:0;border:1px solid var(--line);padding:6px 10px;display:inline-flex;align-items:center;min-height:44px}
  .lhaxis__m::before{display:none}
  .lhaxis__m em{display:inline;margin-right:6px}
  .lhfoot__in{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  /* тач-цели: ссылки подвала иначе ~18 px, логотип ~34 px */
  .lhfoot__in li a{display:inline-flex;align-items:center;min-height:44px}
  .lhlog{min-height:44px}
}
@media (max-width:620px){
  body{font-size:17px}
  .lhtop__st{display:none}
  .lhkpi{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lhcta .lhbtn{width:100%}
  .lhtower__cap{display:none}
  .lhtower{min-height:270px}
  .lhtower__body{height:190px}
  .lhpanel{padding:16px 15px}
  .lhtier{padding-left:16px}
  .lhseam{margin-left:16px}
  .lhstep{grid-template-columns:38px minmax(0,1fr);row-gap:4px}
  .lhstep>span{grid-column:2;text-align:left}
  .lhfoot__in{grid-template-columns:minmax(0,1fr)}
}
