.cons{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 22px;position:relative;overflow:hidden}
.cons-orb{position:absolute;border-radius:50%;pointer-events:none;z-index:0;will-change:transform}
.cons-orb-1{width:min(72vw,760px);aspect-ratio:1;top:-26%;right:-16%;opacity:.85;background:radial-gradient(circle at 50% 50%,rgba(92,55,139,.32),rgba(47,150,164,.14) 46%,transparent 70%)}
.cons-orb-2{width:min(60vw,600px);aspect-ratio:1;bottom:-24%;left:-14%;opacity:.8;background:radial-gradient(circle at 50% 50%,rgba(84,176,99,.28),rgba(71,107,166,.14) 46%,transparent 70%)}

.cons-inner{position:relative;z-index:2;width:100%;max-width:640px;margin:0 auto}
.cons-logo{display:block;height:clamp(84px,11vw,124px);width:auto;max-width:88%;margin:0 auto 30px}
.cons-eyebrow{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5em;max-width:100%;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--primary);margin-bottom:18px}
.cons-title{max-width:100%;font-size:clamp(2.1rem,6vw,3.6rem);font-weight:820;line-height:1.06;letter-spacing:-.02em;color:var(--t1);overflow-wrap:break-word}
.cons-grad{background:var(--grad-brand);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:consShift 8s var(--ease-std) infinite}
.cons-sub{margin:20px auto 0;max-width:52ch;font-size:clamp(1.02rem,2vw,1.2rem);color:var(--t2)}

.cons-bar{margin:34px auto 0;width:min(300px,74vw);height:8px;border-radius:99px;background:var(--sur3);overflow:hidden;position:relative}
.cons-bar span{position:absolute;top:0;left:-42%;height:100%;width:42%;border-radius:99px;background:var(--grad-brand);animation:consLoad 1.8s var(--ease-std) infinite}

.cons-cta{margin-top:34px;display:inline-flex;align-items:center;gap:.55em;height:54px;padding:0 30px;border-radius:var(--r-pill);font-size:1rem;font-weight:700;color:var(--sur);background:var(--grad-brand);background-size:180% 180%;background-position:0 50%;box-shadow:var(--glow);transition:transform .25s var(--ease),box-shadow .25s var(--ease),background-position .25s var(--ease)}
.cons-cta svg{width:1.05em;height:1.05em}
@media (hover:hover) and (pointer:fine){.cons-cta:hover{background-position:100% 50%;box-shadow:var(--glow-strong);transform:translateY(-2px)}}
.cons-mail{margin-top:18px;font-size:.95rem;color:var(--t3)}
.cons-mail a{color:var(--primary);font-weight:600}
.cons-social{margin-top:40px;display:flex;justify-content:center;gap:12px}
.cons-social a{position:relative;width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-radius:var(--r-3);background:var(--sur);color:var(--primary);box-shadow:inset 0 0 0 1px var(--ln2);transition:transform .25s var(--easeb),background-color .25s var(--ease),color .25s var(--ease),box-shadow .25s var(--ease)}
.cons-social a svg{width:22px;height:22px}
.cons-social a.soon{cursor:default}
.cons-social a[data-tip]::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%,4px);background:var(--t1);color:var(--sur);font-size:.72rem;font-weight:600;padding:5px 10px;border-radius:var(--r-2);white-space:nowrap;box-shadow:var(--shadow-2);opacity:0;pointer-events:none;transition:opacity .2s var(--ease),transform .2s var(--ease)}
.cons-social a[data-tip]:hover::after,.cons-social a[data-tip]:focus-visible::after{opacity:1;transform:translate(-50%,0)}
@media (hover:hover) and (pointer:fine){.cons-social a:hover{transform:translateY(-2px);background:var(--grad-brand);color:var(--sur);box-shadow:var(--glow)}}

.cons-foot{position:absolute;bottom:22px;left:0;right:0;z-index:2;font-size:.82rem;color:var(--t3)}
.cons-foot a{color:var(--primary);text-decoration:none;font-weight:600;transition:color .2s var(--ease)}
.cons-foot a:hover{color:var(--primary-d)}

@keyframes consShift{0%,100%{background-position:0% center}50%{background-position:100% center}}
@keyframes consLoad{0%{left:-42%}100%{left:100%}}

@media (max-width:520px){
  .cons-eyebrow{letter-spacing:.1em;font-size:.64rem}
}
