@font-face{font-family:"Inter Tight";font-style:normal;font-weight:400;font-display:optional;src:url("../assets/fonts/inter-tight-400.woff2") format("woff2")}
@font-face{font-family:"Inter Tight";font-style:normal;font-weight:500;font-display:optional;src:url("../assets/fonts/inter-tight-500.woff2") format("woff2")}
:root{
  --ink:#081122; --ink-600:#40455a; --canvas:#f6f5fa; --line:#e4e7ee;
  --white:#fff; --footer:#05070b; --accent:#6746b5; --accent-dark:#543894;
  --accent-soft:#ece8f6; --max:1160px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body.is-promo{
  margin:0;
  font-family:"Inter Tight",Helvetica,Arial,sans-serif;
  color:var(--ink);
  background:var(--white);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
body.is-promo a{text-decoration:none;}
body.is-promo a.btn{color:#fff;}
body.is-promo a.btn:hover,
body.is-promo a.btn:focus-visible{color:#fff;}
body.is-promo a.btn.is-white,
body.is-promo a.btn.is-white:hover,
body.is-promo a.btn.is-white:focus-visible{color:var(--ink);}
body.is-promo a.btn.is-ghost,
body.is-promo a.btn.is-ghost:hover,
body.is-promo a.btn.is-ghost:focus-visible{color:var(--ink);}
body.is-promo .rd-frontend-toolbar,
body.is-promo .rd-frontend-toolbar a,
body.is-promo .rd-frontend-toolbar .rd-frontend-toolbar__btn,
body.is-promo .rd-frontend-toolbar .rd-frontend-toolbar__brand,
body.is-promo .rd-frontend-toolbar .rd-frontend-toolbar__user-name{color:#f9fafb;}
body.is-promo .rd-frontend-toolbar a:hover,
body.is-promo .rd-frontend-toolbar a:focus,
body.is-promo .rd-frontend-toolbar .rd-frontend-toolbar__btn:hover,
body.is-promo .rd-frontend-toolbar .rd-frontend-toolbar__brand:hover{color:#fff;}
body.is-promo #wpadminbar,
body.is-promo #wpadminbar a,
body.is-promo #wpadminbar .ab-item,
body.is-promo #wpadminbar .ab-label{color:#f0f0f1;}
.wrap{max-width:var(--max); margin:0 auto; padding:0 24px;}

body.is-promo h1,
body.is-promo h2,
body.is-promo h3{font-weight:400; margin:0;}
.display{font-size:clamp(38px,5vw,58px); line-height:1.06; letter-spacing:-1.5px;}
.h2{font-size:clamp(28px,3.6vw,42px); line-height:1.12; letter-spacing:-0.8px; margin:0 0 14px;}
.h3{font-size:22px; letter-spacing:-0.4px;}
.lead{font-size:18px; line-height:1.6; color:var(--ink-600); max-width:620px; margin:0;}
.accent-text{color:var(--accent);}
.center{text-align:center; margin-left:auto; margin-right:auto;}

.eye{display:inline-flex; align-items:center; gap:10px; margin:0 0 22px; font-size:13px; letter-spacing:.06em; text-transform:uppercase; color:var(--ink-600);}
.eye span{display:flex; width:22px; height:22px; align-items:center; justify-content:center; border-radius:5px; background:var(--accent); color:#fff; font-size:12px;}

.btn{display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:15px 30px; border-radius:100px; background:var(--accent); color:#fff; font-size:17px; font-weight:500; letter-spacing:-0.3px; border:0; cursor:pointer; transition:background .2s ease;}
.btn:hover,.btn:focus-visible{background:var(--accent-dark); color:#fff;}
.btn.block{width:100%;}
.btn.is-white{background:#fff; color:var(--ink);}
.btn.is-white:hover,.btn.is-white:focus-visible{background:var(--accent-soft); color:var(--ink);}

header.top{position:sticky; top:0; z-index:30; background:rgba(246,245,250,.88); backdrop-filter:blur(10px); border-bottom:1px solid var(--line);}
header.top .wrap{display:flex; align-items:center; justify-content:space-between; padding:14px 24px;}
header.top img{display:block; height:32px; width:auto;}
.top-right{display:flex; align-items:center; gap:18px;}
.top .tag{font-size:11px; font-weight:500; letter-spacing:2px; text-transform:uppercase; color:var(--ink-600);}
.top .btn{padding:10px 22px; font-size:14px;}
@media (max-width:600px){ .top .tag{display:none;} }

.hero{background:var(--canvas);}
.hero > .wrap{padding:64px 24px 72px; display:grid; grid-template-columns:1.05fr .95fr; gap:56px; align-items:start;}
.hero.is-hub > .wrap{grid-template-columns:1fr; max-width:760px; margin:0 auto;}
.hero-copy .display{max-width:560px;}
.hero-copy .lead{margin:20px 0 26px;}
.benefits{list-style:none; margin:0 0 26px; padding:0; display:grid; gap:12px;}
.benefits li{display:flex; gap:12px; align-items:flex-start; font-size:16px; color:var(--ink);}
.benefits svg,
.deliver svg{flex:none; margin-top:1px; color:var(--accent);}
.trust{display:flex; gap:18px; flex-wrap:wrap; font-size:13px; color:var(--ink-600);}
.trust b{color:var(--ink); font-weight:500;}

.form-card{background:var(--white); border-radius:12px; padding:32px; box-shadow:0 1px 2px rgba(61,75,102,.06), 0 16px 40px rgba(61,75,102,.12); position:sticky; top:88px;}
.form-card .fc-head{margin-bottom:20px;}
.form-card .fc-head h2{font-size:24px; letter-spacing:-0.5px;}
.form-card .fc-head p{margin:6px 0 0; font-size:14px; color:var(--ink-600);}
.codepill{display:inline-flex; align-items:center; gap:8px; margin-top:14px; padding:8px 14px; border-radius:100px; background:var(--accent-soft); font-size:13px; color:var(--ink-600);}
.codepill b{color:var(--accent); letter-spacing:1.5px; font-weight:500;}
.field{display:flex; flex-direction:column; margin-bottom:18px;}
.form-card label{font-size:13px; font-weight:500; color:var(--ink-600); margin-bottom:6px;}
.form-card label .req{color:var(--accent);}
.form-card input[type=text],
.form-card input[type=email],
.form-card input[type=tel],
.form-card input[type=url],
.form-card textarea,
.form-card select{
  width:100%;
  font:inherit;
  font-size:16px;
  color:var(--ink);
  border:0;
  border-bottom:1px solid var(--line);
  background:transparent;
  padding:10px 0;
  transition:border-color .18s ease;
  border-radius:0;
}
.form-card select{
  appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%2340455a' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 4px center;
  padding-right:22px;
}
.form-card textarea{resize:vertical; min-height:72px;}
.form-card input::placeholder,
.form-card textarea::placeholder{color:#aab0bb;}
.form-card input:focus,
.form-card textarea:focus,
.form-card select:focus{outline:none; border-bottom-color:var(--accent);}
.form-card input.wpcf7-not-valid,
.form-card textarea.wpcf7-not-valid,
.form-card select.wpcf7-not-valid{border-bottom-color:#c0392b;}
.wpcf7-not-valid-tip{color:#c0392b; font-size:12px; margin-top:6px;}
.wpcf7-form-control-wrap{display:block; width:100%;}
.wpcf7{margin:0;}
.wpcf7 .hidden-fields-container,
.form-card fieldset{
  display:contents;
  border:0;
  margin:0;
  padding:0;
  min-width:0;
}
.wpcf7-response-output{display:none;}
.wpcf7-spinner{position:absolute; visibility:hidden;}
.consent,
.wpcf7-acceptance{
  display:flex;
  gap:10px;
  align-items:flex-start;
  font-size:12.5px;
  color:var(--ink-600);
  margin:6px 0 20px;
}
.wpcf7-acceptance .wpcf7-list-item{margin:0;}
.wpcf7-acceptance .wpcf7-list-item-label{font-size:12.5px; color:var(--ink-600);}
.consent input,
.wpcf7-acceptance input{width:auto; border:0; margin-top:3px;}
.trinity-hp,
.lc-hp-field{
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  width:1px !important;
  height:1px !important;
  margin:-1px !important;
  padding:0 !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  clip-path:inset(50%) !important;
  border:0 !important;
  white-space:nowrap !important;
  opacity:0 !important;
  pointer-events:none !important;
}
.trinity-hp input,
.lc-hp-field input,
.trinity-hp label,
.lc-hp-field label{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:none !important;
}
.fine{font-size:12px; color:var(--ink-600); margin:12px 0 0; text-align:center;}
.success{display:none; text-align:center; padding:36px 8px; min-height:280px; flex-direction:column; align-items:center; justify-content:center;}
.form-card.is-sent{display:flex; flex-direction:column; justify-content:center; min-height:420px;}
.form-card.is-sent .fc-head,
.form-card.is-sent .wpcf7{display:none;}
.form-card.is-sent .success{display:flex;}
.success .tick,
.promo-thanks-tick{
  display:flex;
  width:64px;
  height:64px;
  margin:0 auto 16px;
  color:#16a34a;
  background:none;
  border-radius:0;
  font-size:0;
  line-height:0;
  filter:drop-shadow(0 8px 20px rgba(22,163,74,.28));
}
.success .tick svg,
.promo-thanks-tick svg{display:block; width:100%; height:100%;}
.success h3{font-size:22px; margin:0 0 8px;}
.success p{color:var(--ink-600); margin:0; font-size:15px;}

.promo-thanks{
  position:fixed;
  inset:0;
  z-index:90;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(8,17,34,.46);
}
.promo-thanks.is-open{display:flex;}
.promo-thanks-dialog{
  background:#fff;
  border-radius:16px;
  padding:40px 32px 28px;
  max-width:420px;
  width:100%;
  text-align:center;
  box-shadow:0 16px 48px rgba(8,17,34,.22);
}
.promo-thanks-tick{width:72px; height:72px; margin:0 auto 18px;}
.promo-thanks a.btn{color:#fff;}
.promo-thanks a.btn.is-ghost{color:var(--ink);}
.promo-thanks-dialog h2{font-size:24px; letter-spacing:-0.4px; margin:0 0 8px;}
.promo-thanks-dialog p{margin:0; color:var(--ink-600); font-size:16px; line-height:1.5;}
.promo-thanks-timer{margin-top:14px !important; font-size:13px !important; color:var(--ink-600);}
.promo-thanks-timer b{color:var(--ink); font-weight:500;}
.promo-thanks-actions{display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin-top:24px;}
.btn.is-ghost{background:transparent; color:var(--ink); border:1px solid var(--line);}
.btn.is-ghost:hover,.btn.is-ghost:focus-visible{background:var(--canvas); color:var(--ink);}
body.is-promo-thanks-open{overflow:hidden;}

section{padding:84px 0;}
.soft{background:var(--canvas);}
.sec-head{max-width:720px; margin:0 0 44px;}
.sec-head.center{margin:0 auto 44px;}

.three{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.exp{background:var(--white); border:1px solid var(--line); border-radius:12px; padding:32px;}
.soft .exp{background:var(--white);}
.exp .ic{display:flex; width:48px; height:48px; align-items:center; justify-content:center; border-radius:12px; background:var(--accent-soft); color:var(--accent); margin-bottom:18px;}
.exp h3{margin:0 0 10px;}
.exp p{margin:0 0 14px; color:var(--ink-600); font-size:16px; line-height:1.6;}
.exp p:last-child{margin-bottom:0;}

.deliver{display:grid; grid-template-columns:repeat(2,1fr); gap:18px 28px; margin-top:8px; padding:0;}
.deliver li{list-style:none; display:flex; gap:12px; align-items:flex-start; font-size:16px; color:var(--ink);}
.deliver b{font-weight:500;}
.deliver span{color:var(--ink-600); display:block; font-size:14px; margin-top:2px;}

.steps{list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4,1fr); gap:24px;}
.steps li{display:flex; flex-direction:column; gap:12px;}
.steps .n{display:flex; width:40px; height:40px; align-items:center; justify-content:center; border-radius:50%; background:var(--accent); color:#fff; font-size:16px;}
.steps h3{font-size:18px;}
.steps p{margin:0; color:var(--ink-600); font-size:15px; line-height:1.55;}

.band{background:var(--accent); color:#fff; border-radius:16px; padding:56px; display:flex; align-items:center; justify-content:space-between; gap:40px; flex-wrap:wrap;}
.band h2{color:#fff;}
.band p{margin:12px 0 0; color:rgba(255,255,255,.85); font-size:17px; max-width:520px;}
.band .code{font-size:15px; margin-top:16px; color:rgba(255,255,255,.85);}
.band .code b{color:#fff; letter-spacing:3px;}

.chips{display:flex; flex-wrap:wrap; gap:10px; margin-top:8px;}
.chips span{border:1px solid var(--line); border-radius:100px; padding:9px 16px; font-size:14px; color:var(--ink-600);}

.inperson{font-size:17px; color:var(--ink-600); max-width:660px; margin:0 0 14px;}

.faq details{border-bottom:1px solid var(--line);}
.faq summary{cursor:pointer; padding:22px 0; font-size:19px; list-style:none; display:flex; justify-content:space-between; gap:20px;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+"; color:var(--accent); font-size:22px; line-height:1;}
.faq details[open] summary::after{content:"–";}
.faq p{margin:0 0 22px; max-width:760px; color:var(--ink-600); font-size:16px; line-height:1.6;}

.hub-grid{display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:8px;}
.hub-card{background:var(--white); border:1px solid var(--line); border-radius:12px; padding:32px; display:flex; flex-direction:column; gap:14px;}
.hub-card p{margin:0; color:var(--ink-600); font-size:16px; line-height:1.6;}
.hub-card .btn{margin-top:auto; align-self:flex-start;}

footer.promo-foot{background:var(--footer); color:#fff;}
footer.promo-foot .wrap{padding:68px 24px 38px;}
footer.promo-foot .big{font-size:clamp(22px,2.6vw,30px); font-weight:400; letter-spacing:-0.6px; margin:0 0 26px; max-width:620px;}
footer.promo-foot .big .accent-text{color:#b7a1f2;}
footer.promo-foot .brand{font-weight:500; margin:0 0 4px;}
footer.promo-foot .muted{color:rgba(255,255,255,.55); font-size:14px; margin:0 0 4px;}
footer.promo-foot .bar{display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; border-top:1px solid rgba(255,255,255,.1); margin-top:30px; padding-top:20px; font-size:13px; color:rgba(255,255,255,.48);}
footer.promo-foot a{color:rgba(255,255,255,.75);}

.promo-confetti{
  position:fixed;
  inset:0;
  z-index:80;
  pointer-events:none;
  width:100%;
  height:100%;
  opacity:1;
  transition:opacity 1.05s ease;
}
.promo-confetti.is-fading{opacity:0;}

@media (max-width:900px){
  .hero > .wrap{grid-template-columns:1fr; gap:36px;}
  .form-card{position:static; top:auto;}
  .steps{grid-template-columns:1fr 1fr;}
  .three,.hub-grid{grid-template-columns:1fr;}
}
@media (max-width:680px){
  .three,.deliver,.steps,.hub-grid{grid-template-columns:1fr;}
  .band{padding:34px;}
  section{padding:56px 0;}
  .exp,.form-card,.hub-card{padding:24px;}
}
.promo-clients{background:var(--white); padding:64px 0 48px;}
.promo-clients .h2{margin-bottom:28px;}
.promo-rf-banner{display:block; width:100%; margin-top:28px; line-height:0; background:#1aa3a8;}
.promo-rf-banner img{display:block; width:100%; height:auto;}
section:has(.promo-rf-banner){padding-bottom:96px;}
.logo-slider{
  --logo-visible:5;
  --logo-gap:36px;
  width:100%;
}
.logo-slider-viewport{
  container-type:inline-size;
  overflow:hidden;
  width:100%;
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
}
.logo-slider-track{
  display:flex;
  align-items:center;
  width:max-content;
  animation:logo-slide 32s linear infinite;
}
.logo-slider:hover .logo-slider-track{animation-play-state:paused;}
.logos-box{
  box-sizing:border-box;
  flex:0 0 calc(100cqi / var(--logo-visible));
  padding-right:var(--logo-gap);
  display:flex;
  align-items:center;
  justify-content:center;
  height:44px;
}
.logos-img{
  display:block;
  height:32px;
  width:100%;
  max-width:150px;
  object-fit:contain;
  object-position:center;
  filter:brightness(0);
  opacity:.55;
}
@keyframes logo-slide{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}
@media (max-width:900px){
  .logo-slider{--logo-visible:3; --logo-gap:24px;}
}
@media (max-width:600px){
  .logo-slider{--logo-visible:2; --logo-gap:20px;}
}
@media (prefers-reduced-motion: reduce){
  .logo-slider-track{animation:none;}
}
