/* /calm/ «Созерцание» */
.calm-body{background:#000;overflow-x:hidden}
.calm-body .grain{display:none}
.calm-cv{position:fixed;inset:0;width:100vw;height:100vh;height:100lvh;display:block;z-index:0;touch-action:manipulation;cursor:crosshair}
.calm-fade{pointer-events:none;opacity:0;z-index:1}
.calm-vig{position:fixed;inset:0;z-index:2;pointer-events:none;background:radial-gradient(120% 90% at 50% 45%,transparent 55%,rgba(0,0,0,.55) 100%)}
.calm-ui{position:relative;z-index:5;transition:opacity 1.5s ease,visibility 1.5s}
body.zen .calm-ui{opacity:0;visibility:hidden;pointer-events:none}
body.zen .calm-cv{cursor:default}
.calm-exit{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:6;margin:0;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.32);opacity:0;transition:opacity 1.2s ease 1.4s;pointer-events:none}
body.zen .calm-exit{opacity:1;animation:calmExit 4s ease 2.6s forwards}
@keyframes calmExit{to{opacity:0}}

.calm-hdr{position:fixed;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px var(--pad) 10px;padding-top:max(14px,env(safe-area-inset-top));background:linear-gradient(180deg,rgba(0,0,0,.55),transparent)}
.calm-hdr .logo{flex:none}
.calm-hdr-r{display:flex;align-items:center;gap:8px;min-width:0}
.calm-back{font-size:13px;color:rgba(255,255,255,.7);text-decoration:none;padding:8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.14);white-space:nowrap;background:rgba(0,0,0,.25)}
.calm-back:hover{color:#fff;border-color:rgba(var(--c2),.6)}
@media (max-width:640px){.calm-back span{display:none}.calm-hdr .logo-sub{display:none}.calm-hdr .mode-switch{font-size:10px;letter-spacing:0;padding:6px 8px}}
@media (max-width:380px){.calm-hdr .lang .lang-cur{display:none}}

.calm-main{position:relative;z-index:5;pointer-events:none}
.calm-stage{min-height:100vh;min-height:100svh;display:grid;grid-template-rows:auto 1fr auto;padding:calc(var(--hdr,64px) + 16px) var(--pad) max(18px,env(safe-area-inset-bottom));box-sizing:border-box;max-width:1240px;margin:0 auto}
.calm-stage button,.calm-stage a,.calm-more a{pointer-events:auto}
.calm-top{text-align:center}
.calm-k{margin:0 0 8px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.calm-h{margin:0 auto;max-width:22ch;font:500 clamp(20px,4.6vw,34px)/1.25 var(--f-d);color:#efe9e1;text-shadow:0 2px 30px rgba(0,0,0,.8)}
.calm-h .dim{color:rgba(239,233,225,.55)}

.calm-read{align-self:center;display:grid;justify-items:center;gap:16px}
.calm-ths{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;max-width:640px}
.calm-th{font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.3);color:rgba(255,255,255,.62);cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.calm-th[aria-pressed="true"]{color:#fff;border-color:rgba(var(--c2),.7);box-shadow:0 0 16px rgba(var(--c2),.35);background:rgba(var(--c2),.14)}
.calm-qwrap{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:8px;width:100%;max-width:900px}
.calm-q{margin:0;text-align:center;min-height:7.5em;display:grid;align-content:center;gap:12px;transition:opacity .9s ease,filter .9s ease,transform .9s ease}
.calm-q.out{opacity:0;filter:blur(6px);transform:translateY(6px)}
.calm-t{margin:0;font:italic 500 clamp(24px,5.6vw,46px)/1.22 'Cormorant Garamond',Georgia,serif;color:#f4efe7;text-shadow:0 2px 24px rgba(0,0,0,.85),0 0 40px rgba(0,0,0,.6);text-wrap:balance}
.calm-t b{font-weight:500}.calm-t .grad{display:inline}
.calm-c{font-size:11.5px;letter-spacing:.08em;color:rgba(255,255,255,.55);font-style:normal}
.calm-c i{font-style:normal;opacity:.75}
.calm-arr{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.16);background:rgba(0,0,0,.3);color:rgba(255,255,255,.75);font-size:24px;line-height:1;cursor:pointer}
.calm-arr:hover{border-color:rgba(var(--c2),.7);color:#fff}
@media (max-width:640px){.calm-qwrap{grid-template-columns:34px 1fr 34px;gap:4px}.calm-arr{width:34px;height:34px;font-size:20px}.calm-q{min-height:8.5em}}

.calm-bar{display:grid;gap:12px;justify-items:center}
.calm-locs{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;max-width:100%}
.calm-loc{display:inline-flex;align-items:center;gap:7px;font-size:13px;padding:8px 13px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.35);color:rgba(255,255,255,.7);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.calm-loc i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.3)}
.calm-loc[aria-pressed="true"]{color:#fff;border-color:rgba(var(--c2),.75);background:rgba(var(--c2),.16);box-shadow:0 0 18px rgba(var(--c2),.35)}
.calm-loc[aria-pressed="true"] i{background:var(--a1);box-shadow:0 0 8px var(--a1)}
@media (max-width:640px){.calm-locs{gap:5px}.calm-loc{font-size:12px;padding:7px 10px}}
.calm-ctl{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 16px}
.calm-hint{margin:0;font-size:11px;letter-spacing:.1em;color:rgba(255,255,255,.45);text-transform:lowercase}
.calm-btns{display:flex;gap:8px;align-items:center}
.calm-snd{display:inline-flex;align-items:center;gap:7px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding:9px 13px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(0,0,0,.35);color:#fff;cursor:pointer}
.calm-snd .snd-x{display:none}
.calm-snd.off{color:rgba(255,255,255,.5)}
.calm-snd.off .snd-w{display:none}.calm-snd.off .snd-x{display:inline}
.calm-enter{padding:11px 20px;font-size:14px}

.calm-more{padding:18vh var(--pad) 48px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.75) 30%,rgba(0,0,0,.9))}
.calm-more-in{max-width:680px;margin:0 auto;text-align:center;display:grid;gap:12px}
.calm-meet-h{margin:0;font:500 clamp(20px,4.8vw,28px)/1.3 var(--f-d);color:#efe9e1}
.calm-meet{margin:0;color:rgba(239,233,225,.75);font-size:16.5px;line-height:1.6}
.calm-sndnote{margin:6px 0 0}
.calm-foot{display:flex;justify-content:center;gap:22px;margin-top:22px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.calm-foot a{color:rgba(255,255,255,.55);text-decoration:none;border-bottom:1px solid rgba(255,255,255,.18);padding-bottom:3px}
.calm-foot a:hover{color:#fff}
@media (prefers-reduced-motion:reduce){.calm-q,.calm-ui,.calm-fade{transition-duration:.01s!important}}

/* link-ins on the main site */
.calm-line{margin:18px 0 0;font-size:15px;color:var(--mu)}
.calm-in-a{color:var(--tx);text-decoration:none;border-bottom:1px solid rgba(var(--c2),.55);padding-bottom:2px}
.calm-in-a:hover{color:#fff;border-color:var(--a1)}
.nav .nav-calm{display:inline-flex;align-items:center;gap:6px;color:var(--mu2,var(--mu))}
.nav .nav-calm svg{width:15px;height:15px;flex:none}
@media (min-width:1024px) and (max-width:1439px){.nav .nav-calm span{display:none}.nav .nav-calm{padding-left:9px;padding-right:9px}}

/* R25: painted scenes */
.calm-cv{background:#000}
.calm-fx{z-index:1;pointer-events:auto;background:transparent}
.calm-imgs{position:fixed;inset:0;z-index:0;pointer-events:none;display:none;overflow:hidden;background:#000}
.calm-nogl .calm-imgs{display:block}
.calm-nogl #calmCv{display:none}
.calm-img{position:absolute;inset:0;background:#000 center/cover no-repeat;opacity:0;transition:opacity 1.6s ease,transform 1.2s ease-out;transform:scale(1.06)}
.calm-img.on{opacity:1}
.calm-vig{background:radial-gradient(120% 90% at 50% 45%,transparent 50%,rgba(0,0,0,.5) 100%),linear-gradient(180deg,rgba(0,0,0,.35),transparent 22%,transparent 72%,rgba(0,0,0,.5))}
.calm-q{position:relative;isolation:isolate}
.calm-q::before{content:"";position:absolute;z-index:-1;left:-12%;right:-12%;top:-40%;bottom:-40%;background:radial-gradient(closest-side,rgba(0,0,0,.74),rgba(0,0,0,.5) 55%,transparent);pointer-events:none}
.calm-top{position:relative;isolation:isolate}
.calm-top::before{content:"";position:absolute;z-index:-1;inset:-30% -8%;background:radial-gradient(closest-side,rgba(0,0,0,.5),transparent);pointer-events:none}
@media (prefers-reduced-motion:reduce){.calm-img{transition:opacity .4s ease}}
