:root{
  --bg:#09090B;
  --s1:#0F0F12;
  --s2:#151519;
  --br:#1D1D26;
  --ac:#00C896;
  --ac8:rgba(0,200,150,.08);
  --ac15:rgba(0,200,150,.15);
  --ac30:rgba(0,200,150,.30);
  --ac50:rgba(0,200,150,.50);
  --t1:#EDEAE2;
  --t2:#6C6C7A;
  --t3:#2E2E3A;
  --fd:'Fraunces',Georgia,serif;
  --fb:'DM Sans',system-ui,sans-serif;
  --fm:'DM Mono',monospace;
  --pad:clamp(20px,5.5vw,88px);
  --max:1340px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;background:var(--bg)}
body{
  background:var(--bg);
  color:var(--t1);
  font-family:var(--fb);
  font-size:clamp(15px,1.1vw,17px);
  line-height:1.7;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
button{background:none;border:none;cursor:pointer;font-family:var(--fb)}

/* CURSOR */
#cur-dot{
  position:fixed;top:0;left:0;
  width:7px;height:7px;
  background:var(--t1);
  border-radius:50%;
  pointer-events:none;z-index:9999;
  transform:translate(-50%,-50%);
  transition:width .2s,height .2s,background .2s;
}
#cur-ring{
  position:fixed;top:0;left:0;
  width:38px;height:38px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:50%;
  pointer-events:none;z-index:9998;
  transform:translate(-50%,-50%);
  transition:width .35s,height .35s,border-color .35s,opacity .35s;
}
#cur-dot.hov{width:10px;height:10px;background:var(--ac)}
#cur-ring.hov{width:56px;height:56px;border-color:var(--ac)}
@media(pointer:coarse){#cur-dot,#cur-ring{display:none}body{cursor:auto}button{cursor:pointer}}

/* NAV */
.nav{
  position:fixed;top:0;left:0;right:0;
  z-index:200;
  display:flex;align-items:center;justify-content:space-between;
  padding:22px max(var(--pad),calc((100% - var(--max))/2));
  opacity:0;
  transform:translateY(-12px);
}
.nav::before{
  content:'';
  position:absolute;inset:0;
  background:linear-gradient(to bottom,rgba(9,9,11,.9),transparent);
  pointer-events:none;
}
.nav__logo{
  font-family:var(--fd);
  font-style:italic;
  font-weight:300;
  font-size:20px;
  letter-spacing:.01em;
  position:relative;z-index:1;
}
.nav__right{
  display:flex;align-items:center;gap:36px;
  position:relative;z-index:1;
}
.nav__link{
  font-size:12px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--t2);
  transition:color .2s;
}
.nav__link:hover{color:var(--t1)}
.nav__btn{
  font-size:12px;
  letter-spacing:.1em;
  text-transform:uppercase;
  border:1px solid var(--br);
  padding:10px 22px;
  border-radius:100px;
  color:var(--t1);
  transition:border-color .25s,background .25s;
}
.nav__btn:hover{border-color:var(--ac);background:var(--ac8)}
@media(max-width:700px){
  .nav__link{display:none}
  .nav__btn{padding:8px 18px}
}

/* HERO */
.hero{
  min-height:100dvh;
  display:flex;align-items:center;
  padding:140px max(var(--pad),calc((100% - var(--max))/2)) 80px;
  position:relative;overflow:hidden;
}
.hero__orb{
  position:absolute;
  right:-5%;top:50%;
  width:clamp(380px,55vw,820px);
  height:clamp(380px,55vw,820px);
  transform:translateY(-50%);
  background:radial-gradient(ellipse at 38% 50%,var(--ac15) 0%,var(--ac8) 35%,transparent 68%);
  border-radius:50%;
  animation:breathe 7s ease-in-out infinite;
  pointer-events:none;
}
@keyframes breathe{
  0%,100%{opacity:.7;transform:translateY(-50%) scale(1)}
  50%{opacity:1;transform:translateY(-50%) scale(1.07)}
}
.hero__content{position:relative;z-index:2;max-width:1000px}
.hero__tag{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--fm);
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--ac);
  margin-bottom:36px;
  opacity:0;
  transform:translateY(10px);
}
.hero__tag::before{
  content:'';
  display:block;width:28px;height:1px;
  background:var(--ac);
}
.hero__title{
  font-family:var(--fd);
  font-size:clamp(40px,6vw,92px);
  font-weight:600;
  line-height:1.02;
  letter-spacing:-.025em;
  margin-bottom:44px;
}
.hero__line{display:block;overflow:hidden}
.hero__word{
  display:block;
  transform:translateY(108%);
  will-change:transform;
}
.hero__accent{
  display:block;overflow:hidden;
  margin-top:.06em;
}
.hero__accent .hero__word{
  font-style:italic;
  color:var(--ac);
  filter:drop-shadow(0 0 40px var(--ac30));
}
.hero__sub{
  font-size:clamp(16px,1.4vw,20px);
  color:var(--t2);
  max-width:460px;
  line-height:1.65;
  margin-bottom:52px;
  opacity:0;transform:translateY(16px);
}
.hero__actions{
  display:flex;align-items:center;gap:24px;flex-wrap:wrap;
  opacity:0;transform:translateY(16px);
}
.btn-em{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--ac);
  color:#09090B;
  font-weight:600;
  font-size:14px;
  letter-spacing:.04em;
  padding:17px 38px;
  border-radius:100px;
  transition:transform .25s,box-shadow .25s;
  will-change:transform;
}
.btn-em:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 48px var(--ac30);
}
.btn-ghost{
  font-size:14px;
  color:var(--t2);
  display:inline-flex;align-items:center;gap:7px;
  letter-spacing:.02em;
  transition:color .2s;
}
.btn-ghost:hover{color:var(--t1)}
.btn-ghost::after{content:'↓';transition:transform .2s}
.btn-ghost:hover::after{transform:translateY(3px)}
.hero__scroll-hint{
  position:absolute;bottom:36px;left:var(--pad);
  font-family:var(--fm);font-size:10px;
  letter-spacing:.18em;text-transform:uppercase;
  color:rgba(255,255,255,.4);
  opacity:0;
  display:flex;align-items:center;gap:12px;
}
.hero__scroll-hint::before{
  content:'';display:block;
  width:1px;height:48px;
  background:linear-gradient(to bottom,var(--ac),transparent);
  animation:lineDown 2s ease-in-out infinite;
}
@keyframes lineDown{
  0%{transform:scaleY(0);transform-origin:top}
  50%{transform:scaleY(1);transform-origin:top}
  51%{transform:scaleY(1);transform-origin:bottom}
  100%{transform:scaleY(0);transform-origin:bottom}
}

/* DIVIDER */
.div{height:1px;margin:0 max(var(--pad),calc((100% - var(--max))/2));background:linear-gradient(90deg,transparent,var(--br) 30%,var(--br) 70%,transparent)}

/* ARGUMENT */
.arg{position:relative}
.arg__sticky{
  position:sticky;top:0;
  height:100dvh;
  display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  overflow:hidden;
  padding:0 var(--pad);
}
.arg__bg-num{
  position:absolute;
  font-family:var(--fd);
  font-size:clamp(200px,28vw,400px);
  font-weight:700;
  color:rgba(255,255,255,.025);
  user-select:none;
  pointer-events:none;
  transition:opacity .5s;
  letter-spacing:-.04em;
  line-height:1;
}
.arg__slide{
  position:absolute;
  text-align:center;
  max-width:880px;
  padding:0 var(--pad);
  opacity:0;
  transform:translateY(28px);
  pointer-events:none;
  transition:opacity .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1);
}
.arg__slide.on{opacity:1;transform:translateY(0);pointer-events:auto}
.arg__slide.off-up{opacity:0;transform:translateY(-28px)}
.arg__main{
  font-family:var(--fd);
  font-size:clamp(30px,4.8vw,66px);
  font-weight:500;
  line-height:1.12;
  letter-spacing:-.02em;
}
.arg__main em{font-style:italic;color:var(--ac)}
.arg__note{
  margin-top:20px;
  font-size:clamp(14px,1.1vw,16px);
  color:var(--t2);
  letter-spacing:.02em;
}
.arg__dots{
  position:absolute;bottom:44px;
  display:flex;gap:10px;
}
.arg__dot{
  width:6px;height:6px;border-radius:50%;
  background:var(--br);
  transition:background .4s,transform .4s;
}
.arg__dot.on{background:var(--ac);transform:scale(1.5)}
.arg__counter{
  position:absolute;top:36px;right:var(--pad);
  font-family:var(--fm);font-size:11px;
  letter-spacing:.14em;color:var(--t3);
}

/* METHOD */
.method{padding:clamp(80px,11vw,160px) max(var(--pad),calc((100% - var(--max))/2))}
.sec-label{
  font-family:var(--fm);font-size:11px;
  letter-spacing:.16em;text-transform:uppercase;
  color:var(--ac);margin-bottom:56px;
  display:flex;align-items:center;gap:14px;
}
.sec-label::before{content:'';display:block;width:24px;height:1px;background:var(--ac)}
.method__grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:2px;
}
.method__card{
  background:var(--s1);
  padding:clamp(32px,4vw,56px) clamp(28px,3.5vw,48px);
  opacity:0;transform:translateY(32px);
  transition:background .25s;
}
.method__card:hover{background:var(--s2)}
.method__card:first-child{border-radius:20px 0 0 20px}
.method__card:last-child{border-radius:0 20px 20px 0}
.method__num{
  font-family:var(--fm);font-size:11px;
  letter-spacing:.12em;color:var(--t2);
  margin-bottom:36px;display:block;
}
.method__title{
  font-family:var(--fd);
  font-size:clamp(26px,2.8vw,40px);
  font-style:italic;font-weight:500;
  letter-spacing:-.01em;
  color:var(--t1);margin-bottom:20px;
  line-height:1.1;
}
.method__body{
  font-size:clamp(14px,1.1vw,16px);
  color:var(--t2);line-height:1.75;
}
.method__body strong{color:var(--t1);font-weight:500}
@media(max-width:860px){
  .method__grid{grid-template-columns:1fr;gap:2px}
  .method__card:first-child{border-radius:20px 20px 0 0}
  .method__card:last-child{border-radius:0 0 20px 20px}
}

/* PRICING */
.pricing{padding:clamp(80px,11vw,160px) max(var(--pad),calc((100% - var(--max))/2))}
.pricing__intro{
  max-width:560px;margin-bottom:64px;
  opacity:0;transform:translateY(24px);
}
.pricing__intro-title{
  font-family:var(--fd);
  font-size:clamp(34px,4vw,52px);
  font-weight:500;letter-spacing:-.025em;
  line-height:1.05;margin-bottom:16px;
}
.pricing__intro-sub{
  font-size:clamp(15px,1.2vw,17px);
  color:var(--t2);line-height:1.7;
}
.pricing__grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:2px;
}
.pricing__card{
  background:var(--s1);
  border-radius:0;
  padding:clamp(32px,4vw,52px) clamp(28px,3.5vw,44px);
  display:flex;flex-direction:column;
  opacity:0;transform:translateY(28px);
  transition:background .25s;
  position:relative;
}
.pricing__card:hover{background:var(--s2)}
.pricing__card:first-child{border-radius:20px 0 0 20px}
.pricing__card:last-child{border-radius:0 20px 20px 0}
.pricing__card--featured{
  background:var(--s2);
  border-top:1px solid var(--ac);
}
.pricing__card--featured::before{
  content:'Чаще всего выбирают';
  position:absolute;top:-1px;left:50%;
  transform:translate(-50%,-100%);
  font-family:var(--fm);font-size:10px;
  letter-spacing:.14em;text-transform:uppercase;
  color:var(--ac);
  background:var(--bg);
  padding:6px 14px;
  white-space:nowrap;
}
.pricing__format{
  font-family:var(--fm);font-size:10px;
  letter-spacing:.16em;text-transform:uppercase;
  color:var(--t2);margin-bottom:28px;display:block;
}
.pricing__price{
  font-family:var(--fd);
  font-size:clamp(36px,4vw,56px);
  font-weight:500;letter-spacing:-.025em;
  line-height:1;margin-bottom:6px;
}
.pricing__price-from{
  font-family:var(--fm);font-size:11px;
  letter-spacing:.1em;color:var(--t2);
  margin-bottom:28px;display:block;
}
.pricing__desc{
  font-size:clamp(14px,1.1vw,16px);
  color:var(--t2);line-height:1.7;
  margin-bottom:32px;flex:1;
}
.pricing__desc strong{color:var(--t1);font-weight:500}
.pricing__promise{
  font-size:13px;
  color:var(--ac);
  padding-top:24px;
  border-top:1px solid var(--br);
  line-height:1.55;
}
@media(max-width:860px){
  .pricing__grid{grid-template-columns:1fr;gap:2px}
  .pricing__card:first-child{border-radius:20px 20px 0 0}
  .pricing__card:last-child{border-radius:0 0 20px 20px}
  .pricing__card--featured::before{display:none}
}

/* COOKIE */
#cookie-bar{
  position:fixed;bottom:24px;left:50%;
  transform:translateX(-50%);
  z-index:500;
  display:flex;align-items:center;gap:16px;
  flex-wrap:wrap;
  background:var(--s2);
  border:1px solid var(--br);
  border-radius:100px;
  padding:12px 20px;
  font-size:13px;color:var(--t2);
  box-shadow:0 8px 32px rgba(0,0,0,.4);
  transition:opacity .4s,transform .4s;
  max-width:min(560px, calc(100vw - 32px));
}
#cookie-bar.hidden{opacity:0;transform:translateX(-50%) translateY(12px);pointer-events:none}
#cookie-bar span{line-height:1.5}
#cookie-bar a{color:var(--t2);text-decoration:underline;text-underline-offset:3px}
#cookie-bar a:hover{color:var(--t1)}
#cookie-ok{
  background:var(--ac);
  color:#09090B;
  font-family:var(--fb);
  font-size:12px;font-weight:600;
  letter-spacing:.06em;
  padding:8px 18px;
  border-radius:100px;
  border:none;cursor:pointer;
  flex-shrink:0;
  transition:opacity .2s;
  line-height:1;
}
#cookie-ok:hover{opacity:.85}
@media(max-width:600px){
  #cookie-bar{border-radius:16px;bottom:16px;padding:14px 18px;gap:12px}
}

/* CASES */
.cases{padding:clamp(80px,11vw,160px) 0;overflow:hidden}
.cases__head{
  display:flex;align-items:flex-end;justify-content:space-between;
  padding:0 max(var(--pad),calc((100% - var(--max))/2));margin-bottom:52px;flex-wrap:wrap;gap:20px;
}
.cases__title{
  font-family:var(--fd);
  font-size:clamp(36px,4.5vw,60px);
  font-weight:500;letter-spacing:-.025em;
  line-height:1.05;margin-top:14px;
}
.cases__hint{
  font-size:13px;color:var(--t2);
  display:flex;align-items:center;gap:8px;
  padding-bottom:6px;
}
.cases__track{
  display:flex;gap:16px;
  padding:0 max(var(--pad),calc((100% - var(--max))/2)) 4px;
  overflow-x:auto;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  cursor:grab;
}
.cases__track::-webkit-scrollbar{display:none}
.cases__track.grabbing{cursor:grabbing}
.cases__card{
  flex:0 0 clamp(280px,36vw,460px);
  border-radius:20px;
  background:var(--s1);
  border:1px solid var(--br);
  overflow:hidden;
  position:relative;
  aspect-ratio:3/4;
  transition:border-color .3s,transform .3s;
}
.cases__card:hover{border-color:var(--t3);transform:translateY(-5px)}
.cases__card-img{
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:cover;
  display:block;
  transition:transform .5s cubic-bezier(.22,1,.36,1);
}
.cases__card:hover .cases__card-img{transform:scale(1.04)}
.cases__card-glow{
  position:absolute;inset:0;
  z-index:1;
  opacity:.45;
  transition:opacity .4s;
}
.cases__card:hover .cases__card-glow{opacity:.3}
.cases__overlay{
  position:absolute;inset:0;
  z-index:2;
  background:linear-gradient(to top,rgba(9,9,11,.95) 32%,rgba(9,9,11,.15) 70%,transparent);
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:clamp(24px,3vw,40px);
}
.cases__ind{
  font-family:var(--fm);font-size:10px;
  letter-spacing:.16em;text-transform:uppercase;
  color:var(--ac);margin-bottom:10px;
}
.cases__cname{
  font-family:var(--fd);
  font-size:clamp(22px,2.8vw,34px);
  font-weight:500;letter-spacing:-.01em;
  margin-bottom:8px;line-height:1.1;
}
.cases__cdesc{
  font-size:13px;color:var(--t2);
  line-height:1.55;margin-bottom:22px;
}
.cases__clink{
  display:inline-flex;align-items:center;gap:8px;
  font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--t2);
  border:1px solid var(--br);
  padding:9px 18px;border-radius:100px;
  transition:border-color .2s,color .2s;
  width:fit-content;
}
.cases__card:hover .cases__clink{border-color:var(--ac);color:var(--ac)}
.card--dent .cases__card-glow{background:radial-gradient(ellipse at 30% 40%,#0d3550,#05111e)}
.card--not .cases__card-glow{background:radial-gradient(ellipse at 60% 30%,#1a1530,#0a0818)}
.card--bld .cases__card-glow{background:radial-gradient(ellipse at 40% 60%,#2a1800,#120b00)}
.card--pho .cases__card-glow{background:radial-gradient(ellipse at 50% 30%,#0a1f0a,#040d04)}

/* NOTFOR */
.notfor{padding:clamp(80px,11vw,160px) max(var(--pad),calc((100% - var(--max))/2))}
.notfor__inner{max-width:800px;margin:0 auto}
.notfor__title{
  font-family:var(--fd);
  font-size:clamp(34px,4.5vw,60px);
  font-weight:500;letter-spacing:-.025em;
  line-height:1.05;margin-bottom:52px;
  opacity:0;transform:translateY(24px);
}
.notfor__list{list-style:none;border-top:1px solid var(--br)}
.notfor__item{
  display:flex;align-items:center;gap:18px;
  padding:18px 0;border-bottom:1px solid var(--br);
  font-size:clamp(16px,1.3vw,18px);
  color:var(--t2);
  opacity:0;transform:translateX(-18px);
}
.notfor__item::before{
  content:'—';color:var(--t3);
  font-family:var(--fm);font-size:14px;
  flex-shrink:0;
}
.notfor__box{
  margin-top:40px;
  padding:clamp(28px,4vw,44px);
  background:var(--s1);
  border:1px solid var(--br);
  border-radius:18px;
  font-size:clamp(16px,1.3vw,19px);
  line-height:1.7;
  opacity:0;transform:translateY(16px);
}
.notfor__box em{color:var(--ac);font-style:normal;font-weight:500}

/* ABOUT */
.about{padding:clamp(80px,11vw,160px) max(var(--pad),calc((100% - var(--max))/2))}
.about__inner{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);
  gap:clamp(40px,7vw,130px);
  align-items:start;
}
.about__sticky{position:sticky;top:130px}
.about__name{
  font-family:var(--fd);
  font-size:clamp(42px,5.5vw,80px);
  font-style:italic;font-weight:300;
  letter-spacing:-.03em;
  line-height:.97;
  margin-bottom:20px;
  white-space:nowrap;
}
.about__photo{
  width:100%;aspect-ratio:3/4;
  border-radius:16px;overflow:hidden;
  margin-bottom:28px;
  background:var(--s1);
  border:1px solid var(--br);
  position:relative;
}
.about__photo img{
  width:100%;height:100%;
  object-fit:cover;object-position:center top;
  display:block;
}
.about__photo-ph{
  width:100%;height:100%;
  display:flex;align-items:center;justify-content:center;
  font-family:var(--fd);font-style:italic;
  font-size:clamp(60px,8vw,100px);font-weight:300;
  color:var(--t3);
  background:linear-gradient(160deg,var(--s1) 0%,var(--s2) 100%);
}
.about__photo-note{
  position:absolute;bottom:0;left:0;right:0;
  padding:10px 14px;
  font-family:var(--fm);font-size:10px;
  letter-spacing:.12em;text-transform:uppercase;
  color:var(--t3);text-align:center;
  background:linear-gradient(to top,rgba(9,9,11,.7),transparent);
}
.method__tech{
  margin-top:18px;padding-top:16px;
  border-top:1px solid var(--br);
  font-family:var(--fm);font-size:11px;
  letter-spacing:.06em;line-height:1.65;
  color:var(--t2);
}
.notfor__sub{
  font-family:var(--fm);font-size:11px;
  letter-spacing:.14em;text-transform:uppercase;
  color:var(--t2);margin:0 0 16px;
  display:flex;align-items:center;gap:10px;
}
.notfor__sub::before{content:'';display:block;width:16px;height:1px;background:var(--t2)}
.notfor__fits{list-style:none;margin-bottom:44px}
.notfor__fit{
  display:flex;align-items:baseline;gap:16px;
  padding:16px 0;border-bottom:1px solid var(--br);
  font-size:clamp(15px,1.2vw,17px);
  color:var(--t1);
  opacity:0;transform:translateX(-18px);
}
.notfor__fits{border-top:1px solid var(--br)}
.notfor__fit::before{
  content:'✓';color:var(--ac);
  font-family:var(--fm);font-size:13px;
  flex-shrink:0;
}
.about__meta{
  font-family:var(--fm);
  font-size:12px;letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--t2);line-height:2.1;
}
.about__meta strong{color:var(--ac);font-weight:400}
.about__right{padding-top:8px}
.about__p{
  font-size:clamp(16px,1.4vw,20px);
  line-height:1.75;
  color:var(--t1);
  margin-bottom:26px;
  opacity:0;transform:translateY(22px);
}
.about__p:last-child{margin-bottom:0}
@media(max-width:900px){
  .about__inner{grid-template-columns:1fr}
  .about__sticky{position:static}
  .about__name{font-size:clamp(38px,10vw,64px);white-space:normal}
  .about__photo{aspect-ratio:4/3;margin-top:32px}
  .about__photo img{object-position:center 28%}
}

/* CONTACT */
.contact{
  padding:clamp(80px,11vw,160px) max(var(--pad),calc((100% - var(--max))/2));
  text-align:center;
}
.contact__kicker{
  font-family:var(--fm);font-size:11px;
  letter-spacing:.16em;text-transform:uppercase;
  color:var(--ac);margin-bottom:28px;
  display:flex;align-items:center;justify-content:center;gap:14px;
}
.contact__kicker::before,.contact__kicker::after{
  content:'';display:block;width:24px;height:1px;background:var(--ac);
}
.contact__title{
  font-family:var(--fd);
  font-size:clamp(40px,7vw,100px);
  font-weight:500;letter-spacing:-.03em;
  line-height:1.0;margin-bottom:22px;
  opacity:0;transform:translateY(28px);
}
.contact__title em{
  font-style:italic;color:var(--ac);
  filter:drop-shadow(0 0 50px var(--ac30));
}
.contact__sub{
  font-size:clamp(15px,1.3vw,19px);
  color:var(--t2);max-width:420px;
  margin:0 auto 64px;line-height:1.6;
  opacity:0;transform:translateY(16px);
}
.contact__channels{
  display:flex;gap:14px;justify-content:center;
  flex-wrap:wrap;margin-bottom:72px;
}
.contact__ch{
  display:inline-flex;align-items:center;gap:11px;
  padding:17px 34px;
  border:1px solid var(--br);
  border-radius:100px;
  font-size:15px;font-weight:500;
  color:var(--t1);
  transition:border-color .25s,background .25s,transform .25s,box-shadow .25s;
  will-change:transform;
}
.contact__ch:hover{
  border-color:var(--ac);
  background:var(--ac8);
  transform:translateY(-3px);
  box-shadow:0 14px 36px var(--ac15);
}
.contact__ch svg{width:17px;height:17px;flex-shrink:0}
.contact__ch-handle{opacity:.55;font-size:.85em;font-weight:400}
.contact__ch--email{font-size:13px;letter-spacing:.01em}
.contact__form-wrap{
  max-width:540px;margin:0 auto 48px;
  text-align:left;
}
.fi{
  width:100%;
  background:var(--s1);
  border:1px solid var(--br);
  border-radius:12px;
  padding:17px 22px;
  font-family:var(--fb);
  font-size:16px;
  color:var(--t1);
  outline:none;
  transition:border-color .2s;
  display:block;
  margin-bottom:14px;
}
.fi::placeholder{color:var(--t2)}
.fi:focus{border-color:var(--ac)}
.fi-ta{min-height:130px;resize:vertical}
.fsub{
  width:100%;
  background:var(--ac);
  color:#09090B;
  font-family:var(--fb);
  font-weight:600;font-size:15px;
  letter-spacing:.04em;
  padding:19px;
  border-radius:12px;
  transition:opacity .2s,transform .2s;
  cursor:none;
  margin-top:4px;
}
.fsub:hover{opacity:.9;transform:translateY(-1px)}
.fok{
  display:none;
  padding:52px 36px;
  background:var(--s1);
  border:1px solid var(--ac);
  border-radius:20px;
  text-align:center;
}
.fok.on{display:block}
.fok__t{
  font-family:var(--fd);font-size:26px;
  font-style:italic;margin-bottom:10px;
}
.fok__s{color:var(--t2);font-size:16px}
.contact__note{
  font-family:var(--fm);font-size:11px;
  letter-spacing:.1em;text-transform:uppercase;
  color:var(--t3);
}
@media(max-width:600px){
  .contact__channels{flex-direction:column;align-items:stretch}
  .contact__ch{justify-content:center}
}

/* FOOTER */
.footer{
  display:flex;align-items:center;justify-content:space-between;
  padding:32px max(var(--pad),calc((100% - var(--max))/2));
  border-top:1px solid var(--br);
  flex-wrap:wrap;gap:12px;
}
.footer__logo{
  font-family:var(--fd);font-style:italic;
  font-weight:300;font-size:18px;
  color:var(--t2);
}
.footer__copy{
  font-family:var(--fm);font-size:11px;
  letter-spacing:.08em;color:var(--t3);
}

/* UTILS */
.will-r{opacity:0;transform:translateY(28px)}
