@font-face{font-family:Satoshi;src:url(../fonts/Satoshi-Light.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(../fonts/Satoshi-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(../fonts/Satoshi-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(../fonts/Satoshi-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(../fonts/Satoshi-Black.woff2) format("woff2");font-weight:900;font-style:normal;font-display:swap}:root{--accent-gold: #d6b25e;--accent-gold-soft: #f4e6c7;--accent-gold-bright: #f8d998;--accent-ivory: #fff8e9;--accent-ink: rgba(25, 17, 10, .85);--accent-glow: rgba(214, 178, 94, .55);--bg-deep: #0a0908;--bg-mid: #181512;--bg-glow: #3a3228}*{margin:0;padding:0;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.tp-dfwv{position:fixed!important;top:10px!important;right:10px!important;z-index:99999!important;pointer-events:auto!important}html,body{width:100%;height:100%;background:radial-gradient(ellipse 130% 90% at 50% -8%,var(--bg-glow) 0%,var(--bg-mid) 42%,var(--bg-deep) 100%);font-family:Satoshi,sans-serif}body{height:500vh}.webgl{position:fixed;inset:0;width:100%;height:100dvh;background:radial-gradient(ellipse 130% 90% at 50% -8%,var(--bg-glow) 0%,var(--bg-mid) 42%,var(--bg-deep) 100%)}.ui-layer{position:fixed;inset:0;z-index:100;pointer-events:none}.ui-layer *{pointer-events:auto}.overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2.8rem;background-color:#070707;background:radial-gradient(circle at 50% 35%,#d6b25e33,#070707 52%),linear-gradient(140deg,#070707,#100d0a 45%,#080808);-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px);color:#ffffffeb;text-align:center;z-index:999}.overlay .title{display:flex;flex-direction:column;align-items:center;gap:1.35rem;width:min(32rem,86vw);transition:transform .3s ease}.overlay .title__eyebrow{margin:0;font-family:Satoshi,sans-serif;font-size:.65rem;font-weight:400;letter-spacing:.32em;text-transform:uppercase;padding-left:.28em;line-height:1.7;color:#fff6e094;max-width:20rem}.overlay .title__rule{display:block;width:1px;height:3.5rem;background:linear-gradient(to bottom,transparent,rgba(214,178,94,.55) 50%,transparent)}.overlay .title__name{margin:0;font-family:Satoshi,sans-serif;font-size:clamp(2rem,5.2vw,3rem);font-weight:500;letter-spacing:.75em;text-indent:.75em;text-transform:uppercase;line-height:1;color:#fffffffa;text-shadow:0 0 18px rgba(248,217,152,.32),0 0 44px rgba(214,178,94,.18)}.scroll-indicator{position:absolute;bottom:18%;left:50%;transform:translate(-50%);text-align:center;opacity:0}.scroll-indicator__line{display:block;width:1px;height:32px;background:linear-gradient(to bottom,#f8d998f2,#d6b25e47);margin:0 auto 10px;transform-origin:top;animation:scrollLine 2s infinite ease-in-out}.scroll-indicator__label{display:block;font-family:Satoshi,sans-serif;font-size:.58rem;font-weight:300;letter-spacing:.32em;text-transform:uppercase;padding-left:.32em;color:#ffffff61}.overlay-contacts{position:absolute;bottom:clamp(2rem,8vh,4rem);left:50%;transform:translate(-50%);width:min(30rem,88vw);text-align:center;opacity:0;pointer-events:auto;display:flex;flex-direction:column;align-items:center;gap:.45rem;transition:transform .3s ease,opacity .3s ease}.overlay-contacts:before{content:"";display:block;width:min(9rem,44vw);height:1px;margin-bottom:.65rem;background:linear-gradient(to right,transparent 0%,rgba(214,178,94,.45) 18%,rgba(214,178,94,.78) 50%,rgba(214,178,94,.45) 82%,transparent 100%)}.overlay-contacts__author,.overlay-contacts__phone,.overlay-contacts__mail{margin:0;font-family:Satoshi,sans-serif;font-size:clamp(.72rem,1.35vw,.86rem);font-weight:300;line-height:1.55;letter-spacing:.2em;color:#ffffffd9;text-transform:none;text-decoration:none}.overlay-contacts__author{color:#ffffffad}.overlay-contacts__mail{color:#f6e2b2e6;transition:color .25s ease,text-shadow .25s ease}.overlay-contacts__mail:hover,.overlay-contacts__mail:focus-visible{color:#fffffffa;text-shadow:0 0 14px rgba(214,178,94,.45);outline:none}@keyframes scrollLine{0%{transform:scaleY(0);opacity:0}50%{transform:scaleY(1);opacity:1}to{transform:scaleY(0);opacity:0}}#cursor-dot{position:fixed;width:6px;height:6px;border-radius:50%;background:var(--accent-gold);transform:translate(-50%,-50%);pointer-events:none;z-index:9999}.loading-bar{position:absolute;bottom:42%;left:calc(50% - min(5rem,18vw));width:min(10rem,36vw);height:1px;background:#d6b25eb3;transform:scaleX(0);transform-origin:left;transition:transform .15s}.loading-bar.ended{opacity:0}.scroll-content{position:fixed;inset:0;width:100%;pointer-events:none;counter-reset:narrative-step}.step{position:absolute;top:clamp(2.75rem,12vh,5.5rem);left:50%;width:min(40rem,86vw);margin:0;opacity:0;transform:translate3d(-50%,0,0);color:#fffffff5;font-family:Satoshi,sans-serif;font-size:clamp(1.22rem,2.9vw,2.05rem);font-style:normal;font-weight:500;line-height:1.38;letter-spacing:.16em;text-align:center;text-transform:uppercase;text-wrap:balance;text-shadow:0 0 18px rgba(214,178,94,.14),0 8px 40px rgba(0,0,0,.72);counter-increment:narrative-step;pointer-events:none;contain:layout style paint;backface-visibility:hidden}.step:before{content:counter(narrative-step,decimal-leading-zero);display:block;margin-bottom:1.1rem;font-family:Satoshi,sans-serif;font-size:.58rem;font-weight:400;font-style:normal;letter-spacing:.38em;text-transform:uppercase;padding-left:.38em;color:#f8d998d9;opacity:1;text-shadow:0 0 14px rgba(214,178,94,.28)}.step:after{content:none}@media(max-width:720px){.step{top:clamp(2rem,10vh,4rem);width:min(20rem,calc(100vw - 2.5rem));font-size:clamp(.82rem,3.8vw,1.05rem);line-height:1.5;letter-spacing:.12em}.step:before{margin-bottom:.85rem;font-size:.5rem;letter-spacing:.34em;padding-left:.34em}}.hotspots{position:fixed;inset:0;z-index:50;pointer-events:none;overflow:hidden}.hotspot{position:absolute;top:0;left:0;opacity:0;pointer-events:none;will-change:transform,opacity;contain:layout style paint;transition:opacity .35s ease}.hotspot__label{pointer-events:auto;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.24rem;text-align:center;text-decoration:none;color:#fffc;white-space:nowrap;border:0;background:linear-gradient(160deg,#080808b3,#140f0980);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(248,217,152,.24);box-shadow:0 12px 34px #0000006b,inset 0 1px #ffffff26;padding:.42rem .62rem;border-radius:999px;transition:color .35s ease,transform .3s ease,border-color .3s ease,box-shadow .3s ease}.hotspot__eyebrow{font-size:.42rem;font-weight:300;letter-spacing:.34em;text-transform:uppercase;padding-left:.34em;color:#f8d998bd;line-height:1}.hotspot__text{font-size:clamp(.52rem,.84vw,.6rem);font-weight:500;letter-spacing:.24em;text-transform:uppercase;padding-left:.22em;color:#ffffffe6;text-shadow:0 2px 14px rgba(0,0,0,.6);line-height:1}.hotspot--visible .hotspot__label:hover,.hotspot--visible .hotspot__label:focus-visible{color:#fffffffa;border-color:#f8d9989e;box-shadow:0 14px 36px #00000080,0 0 22px #d6b25e38,inset 0 1px #ffffff40;transform:translateY(-2px) scale(1.03)}.hotspot--visible .hotspot__label:hover .hotspot__eyebrow,.hotspot--visible .hotspot__label:focus-visible .hotspot__eyebrow{color:#f6e2b2e0}.hotspot--visible .hotspot__label:hover .hotspot__text,.hotspot--visible .hotspot__label:focus-visible .hotspot__text{color:#fffffff0;text-shadow:0 2px 14px rgba(0,0,0,.45)}.hotspot--visible .hotspot__label:focus-visible{outline:none}.hotspot--visible .hotspot__label:focus-visible .hotspot__text{text-decoration:underline;text-underline-offset:.3em;text-decoration-color:#d6b25e59}@media(max-width:720px){.hotspot__text{font-size:.48rem;letter-spacing:.16em;padding-left:.16em}.hotspot__eyebrow{font-size:.4rem;letter-spacing:.24em;padding-left:.24em}}@media(pointer:coarse),(hover:none){#cursor-dot{display:none}*{cursor:auto}.ui-layer{contain:layout style paint}.webgl{touch-action:pan-y}}
