/* BlackCopper lead pages: Contact (/contact-us), Become a partner (/become-a-partner), Support (/support).
   Templates: theme templates/contact.tpl and module bcleads (views/templates/front/*.tpl, widget/form.tpl). */
.bcl { --bcl-blue: #2e8ac0; --bcl-sky: #5cc0ff; --bcl-cu: #e6a774; --bcl-ink: #0b0d12; padding: 0 !important; background: none !important; box-shadow: none !important; color: var(--bc-text); }
body#contact #wrapper, body[id^="module-bcleads"] #wrapper { padding-top: 6px; }
body[id^="module-bcleads"] #content-wrapper, body#contact #content-wrapper { padding-bottom: 0; }
.bcl a { text-decoration: none; }
.bcl-kicker { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 16px; font-size: 12px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--bcl-sky); }
.bcl-kicker::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; box-shadow: 0 0 12px currentColor; animation: bclBlink 2.4s ease-in-out infinite; }
.bcl-kicker--dark { color: #8a5a36; }
.bcl-kicker--dark::before { box-shadow: 0 0 0 4px rgba(201,162,126,.18); }
@keyframes bclBlink { 50% { opacity: .35; } }
.bcl-h1 { margin: 0 0 20px; color: #fff; font-size: clamp(38px, 5.2vw, 70px); font-weight: 700; line-height: 1.02; letter-spacing: -.045em; }
.bcl-h1 span { background: linear-gradient(90deg, #8fd3ff 0%, var(--bcl-blue) 45%, var(--bcl-cu) 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.bcl-h2 { margin: 0 0 26px; color: var(--bc-text); font-size: clamp(28px, 3.2vw, 42px); font-weight: 700; line-height: 1.1; letter-spacing: -.035em; }
.bcl-lead { max-width: 640px; margin: 0 0 30px; font-size: 18px; line-height: 1.6; color: rgba(245,245,247,.74); }

/* ---------- hero ---------- */
.bcl-hero { position: relative; isolation: isolate; overflow: hidden; border-radius: 34px; padding: 80px 64px 64px; color: #f5f5f7;
  background: radial-gradient(70% 80% at 10% 0%, rgba(46,138,192,.28), transparent 60%), radial-gradient(60% 70% at 100% 100%, rgba(200,131,78,.2), transparent 60%), linear-gradient(160deg, #0b111a 0%, #05080c 60%, #000 100%); }
.bcl-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background-image: radial-gradient(rgba(255,255,255,.08) 1px, transparent 1.6px); background-size: 26px 26px;
  -webkit-mask-image: radial-gradient(80% 80% at 50% 30%, #000, transparent 75%); mask-image: radial-gradient(80% 80% at 50% 30%, #000, transparent 75%); }
.bcl-hero__glow { position: absolute; z-index: -1; left: 50%; top: 40%; width: 60vmax; height: 60vmax; transform: translate(-50%, -50%); border-radius: 50%; background: radial-gradient(closest-side, rgba(92,192,255,.13), transparent 70%); animation: bclBreath 7s ease-in-out infinite; pointer-events: none; }
@keyframes bclBreath { 50% { transform: translate(-50%, -50%) scale(1.08); opacity: .7; } }
.bcl-hero__grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 30px; align-items: center; }
.bcl-hero__center { max-width: 820px; margin: 0 auto; text-align: center; }
.bcl-hero__center .bcl-lead { margin-left: auto; margin-right: auto; }
.bcl-hero__media { position: absolute; inset: 0; z-index: -3; background-size: cover; background-position: center; opacity: .28; transform: scale(1.05); }
.bcl-hero--contact::after { content: ""; position: absolute; inset: 0; z-index: -2; background: linear-gradient(180deg, rgba(5,8,12,.55), rgba(5,8,12,.92)); }
.bcl-ctas { display: flex; flex-wrap: wrap; gap: 12px; }
.bcl-btn { display: inline-flex; align-items: center; gap: 10px; height: 54px; padding: 0 28px; border-radius: 999px; font-size: 16px; font-weight: 600; white-space: nowrap; transition: transform .25s var(--bc-ease), box-shadow .25s, background .25s, border-color .25s; }
.bcl-btn--primary { color: #fff; background: #0071e3; box-shadow: 0 12px 32px rgba(0,113,227,.4); }
.bcl-btn--primary:hover { color: #fff; background: #1a82ee; transform: translateY(-2px); }
.bcl-btn--ghost { color: #fff; border: 1px solid rgba(255,255,255,.24); background: rgba(255,255,255,.05); }
.bcl-btn--ghost:hover { color: #fff; border-color: rgba(255,255,255,.55); transform: translateY(-2px); }
.bcl-stats { display: flex; flex-wrap: wrap; gap: 12px; margin: 38px 0 0; padding: 0; list-style: none; }
.bcl-stats li { display: flex; align-items: baseline; gap: 8px; padding: 14px 20px; border-radius: 18px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); }
.bcl-stats strong { font-size: 26px; font-weight: 700; color: #fff; letter-spacing: -.02em; }
.bcl-stats span { font-size: 14px; color: rgba(245,245,247,.6); }
/* partner hero: three real products floating around a lit ring */
.bcl-hero__art { position: relative; aspect-ratio: 1 / 1; max-width: 520px; width: 100%; justify-self: end; }
.bcl-orbit { position: absolute; inset: 9%; border-radius: 50%; border: 1px dashed rgba(92,192,255,.3); animation: bclSpin 40s linear infinite; }
.bcl-orbit::before { content: ""; position: absolute; top: -6px; left: 50%; width: 12px; height: 12px; border-radius: 50%; background: var(--bcl-sky); box-shadow: 0 0 18px var(--bcl-sky); }
@keyframes bclSpin { to { transform: rotate(360deg); } }
.bcl-float { position: absolute; height: auto; filter: drop-shadow(0 30px 40px rgba(0,0,0,.6)); animation: bclFloat 7s ease-in-out infinite; }
.bcl-float--a { width: 54%; left: 30%; top: 4%; }
.bcl-float--b { width: 44%; left: 2%; top: 46%; animation-delay: -2.4s; }
.bcl-float--c { width: 42%; right: -2%; top: 52%; animation-delay: -4.6s; }
@keyframes bclFloat { 50% { transform: translateY(-14px); } }

/* contact hero: routing cards */
.bcl-route { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-top: 48px; }
.bcl-routecard { position: relative; display: flex; align-items: center; gap: 14px; padding: 18px 34px 18px 18px; border-radius: 22px; color: #fff; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12);
  -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); transition: transform .3s var(--bc-ease), background .3s, border-color .3s; }
.bcl-routecard:hover { color: #fff; transform: translateY(-4px); background: rgba(255,255,255,.11); border-color: rgba(92,192,255,.5); }
.bcl-routecard.is-on { border-color: rgba(92,192,255,.6); background: rgba(46,138,192,.18); box-shadow: 0 0 0 1px rgba(92,192,255,.25), 0 20px 50px rgba(0,0,0,.35); }
.bcl-routecard strong { display: block; font-size: 16px; }
.bcl-routecard em { display: block; font-style: normal; font-size: 13px; color: rgba(245,245,247,.62); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bcl-routecard > span:not(.bcl-ico) { min-width: 0; }
.bcl-routecard b { position: absolute; right: 16px; top: 50%; margin-top: -11px; font-weight: 400; opacity: .6; transition: transform .3s; }
.bcl-routecard:hover b { transform: translateX(3px); opacity: 1; }
.bcl-ico { flex: 0 0 46px; height: 46px; display: grid; place-items: center; border-radius: 14px; color: #04121f; background: linear-gradient(135deg, #a9ddff, var(--bcl-blue)); box-shadow: 0 0 22px rgba(92,192,255,.3); }
.bcl-ico svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

/* support hero: product finder */
.bcl-find { display: flex; align-items: center; gap: 10px; max-width: 640px; margin: 6px auto 0; padding: 6px 6px 6px 20px; border-radius: 999px; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.18); transition: border-color .25s, box-shadow .25s; }
.bcl-find:focus-within { border-color: var(--bcl-sky); box-shadow: 0 0 0 4px rgba(46,138,192,.25); }
.bcl-find svg { flex: 0 0 auto; color: rgba(245,245,247,.6); }
.bcl-find input[type=text] { flex: 1; min-width: 0; height: 48px; border: 0; background: transparent; color: #fff; font-size: 16px; outline: none; box-shadow: none; }
.bcl-find input::placeholder { color: rgba(245,245,247,.45); }
.bcl-find button { height: 48px; padding: 0 24px; border: 0; border-radius: 999px; background: #fff; color: #000; font: 600 15px/1 var(--bc-font); cursor: pointer; }

/* ---------- content bands ---------- */
.bcl-band { padding: 96px 0 0; }
.bcl-band--alt { margin-top: 96px; padding: 80px 56px; border-radius: 34px; background: var(--bc-alt); }
.bcl-head { max-width: 760px; margin-bottom: 36px; }
.bcl-who { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.bcl-card { padding: 28px 24px; border-radius: 26px; background: #fff; border: 1px solid #ebebf0; transition: translate .35s var(--bc-ease), box-shadow .35s, border-color .35s; }
.bcl-card:hover { translate: 0 -5px; border-color: #d6e6f3; box-shadow: 0 24px 50px rgba(17,20,28,.08); }
.bcl-card .bcl-ico, .bcl-helpcard .bcl-ico { margin-bottom: 20px; width: 46px; }
.bcl-card h3, .bcl-perk h3, .bcl-steps h3 { margin: 0 0 8px; font-size: 19px; font-weight: 700; letter-spacing: -.01em; color: var(--bc-text); }
.bcl-card p, .bcl-perk p, .bcl-steps p { margin: 0; font-size: 15px; line-height: 1.55; color: var(--bc-muted); }
.bcl-perks { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.bcl-perk { position: relative; padding: 28px 26px 30px; border-radius: 24px; background: #fff; border: 1px solid #ebebf0; overflow: hidden; }
.bcl-perk b { display: block; margin-bottom: 16px; font-size: 13px; font-weight: 800; letter-spacing: .1em; color: var(--bcl-blue); }
.bcl-perk::after { content: ""; position: absolute; left: 26px; right: 26px; bottom: 0; height: 3px; border-radius: 3px 3px 0 0; background: linear-gradient(90deg, var(--bcl-sky), var(--bcl-cu)); transform: scaleX(0); transform-origin: left; transition: transform .45s var(--bc-ease); }
.bcl-perk:hover::after { transform: scaleX(1); }
.bcl-steps { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 0; padding: 0; list-style: none; }
.bcl-steps::before { content: ""; position: absolute; left: 6%; right: 6%; top: 47px; height: 2px; background: linear-gradient(90deg, rgba(92,192,255,.5), rgba(230,167,116,.5)); }
.bcl-steps li { position: relative; padding: 26px 24px 28px; border-radius: 24px; background: #fff; border: 1px solid #ebebf0; }
.bcl-steps li > span { position: relative; z-index: 1; display: grid; place-items: center; width: 42px; height: 42px; margin-bottom: 18px; border-radius: 50%; font-size: 13px; font-weight: 800; color: #04121f; background: linear-gradient(135deg, #a9ddff, var(--bcl-blue)); box-shadow: 0 0 0 6px #fff, 0 0 0 7px #d6e6f3; }
.bcl-steps li:last-child > span { background: linear-gradient(135deg, #f3c79c, #c8834e); }
/* support: help cards and quick fixes */
.bcl-help { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; }
.bcl-helpcard { appearance: none; display: flex; flex-direction: column; align-items: flex-start; text-align: left; padding: 24px 20px; border-radius: 24px; cursor: pointer; background: #fff; border: 1px solid #ebebf0; font: inherit; color: var(--bc-text); transition: translate .35s var(--bc-ease), box-shadow .35s, border-color .35s; }
.bcl-helpcard:hover, .bcl-helpcard.is-on { translate: 0 -5px; border-color: var(--bcl-blue); box-shadow: 0 24px 50px rgba(17,20,28,.09); }
.bcl-helpcard strong { font-size: 16.5px; margin-bottom: 4px; }
.bcl-helpcard em { font-style: normal; font-size: 14px; color: var(--bc-muted); }
.bcl-fixes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; align-items: start; }
.bcl-fix { padding: 0 22px; border-radius: 20px; background: #fff; border: 1px solid #ebebf0; transition: box-shadow .3s; }
.bcl-fix[open] { box-shadow: 0 16px 40px rgba(17,20,28,.07); }
.bcl-fix summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 0; font-size: 15.5px; }
.bcl-fix summary::-webkit-details-marker { display: none; }
.bcl-fix summary::after { content: "+"; flex: 0 0 28px; height: 28px; display: grid; place-items: center; border-radius: 50%; background: var(--bc-alt); font-size: 18px; transition: transform .3s; }
.bcl-fix[open] summary::after { transform: rotate(45deg); }
.bcl-fix p { margin: 0 0 18px; font-size: 15px; line-height: 1.6; color: var(--bc-muted); }

/* ---------- form section ---------- */
.bcl-formband { padding: 96px 0 0; scroll-margin-top: 100px; }
.bcl--contact .bcl-formband { padding-top: 44px; }
.bcl-formgrid { display: grid; grid-template-columns: minmax(0, 360px) minmax(0, 1fr); gap: 26px; align-items: start; }
.bcl-aside { position: sticky; top: calc(var(--bc-header-h) + 24px); display: grid; gap: 16px; }
.bcl-aside__card { padding: 30px 26px; border-radius: 28px; color: #f5f5f7; background: linear-gradient(150deg, #0f1218 0%, #161c27 60%, #2a1d14 100%); }
.bcl-aside__card--light { color: var(--bc-text); background: var(--bc-alt); }
.bcl-aside__card h3 { margin: 0 0 8px; font-size: 18px; font-weight: 700; color: inherit; }
.bcl-aside__card p { margin: 0; font-size: 15px; line-height: 1.55; color: var(--bc-muted); }
.bcl-aside__card a { color: #0066cc; }
.bcl-aside__hint { margin-top: 16px !important; font-size: 13.5px !important; color: rgba(245,245,247,.55) !important; }
.bcl-aside__hint i { color: var(--bcl-sky); font-style: normal; }
.bcl-progress { margin: 0; padding: 0; list-style: none; display: grid; gap: 10px; counter-reset: bclp; }
.bcl-progress li { position: relative; display: flex; align-items: center; gap: 12px; font-size: 15.5px; color: rgba(245,245,247,.7); counter-increment: bclp; transition: color .3s; }
.bcl-progress li::before { content: counter(bclp); flex: 0 0 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; font-size: 12px; font-weight: 700; color: #fff; border: 1px solid rgba(255,255,255,.25); transition: background .3s, border-color .3s, color .3s; }
.bcl-progress li.is-done { color: #fff; }
.bcl-progress li.is-done::before { content: "✓"; color: #04121f; background: var(--bcl-sky); border-color: var(--bcl-sky); }
.bcl-aside__bar { height: 4px; margin-top: 20px; border-radius: 4px; background: rgba(255,255,255,.1); overflow: hidden; }
.bcl-aside__bar span { display: block; height: 100%; width: 0; border-radius: inherit; background: linear-gradient(90deg, var(--bcl-sky), var(--bcl-cu)); transition: width .5s var(--bc-ease); }
.bcl-check { margin: 0; padding: 0; list-style: none; display: grid; gap: 12px; }
.bcl-check li { position: relative; padding-left: 30px; font-size: 15px; line-height: 1.45; color: rgba(245,245,247,.82); }
.bcl-check li::before { content: "✓"; position: absolute; left: 0; top: 0; width: 20px; height: 20px; display: grid; place-items: center; border-radius: 50%; font-size: 11px; color: #04121f; background: var(--bcl-sky); }
.bcl-next { margin: 0; padding: 0; list-style: none; display: grid; gap: 12px; }
.bcl-next li { display: flex; gap: 14px; align-items: flex-start; padding: 16px; border-radius: 18px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.08); }
.bcl-next li > span { flex: 0 0 36px; height: 36px; display: grid; place-items: center; border-radius: 50%; font-size: 12px; font-weight: 800; color: #04121f; background: linear-gradient(135deg, #a9ddff, var(--bcl-blue)); }
.bcl-next strong { display: block; font-size: 15.5px; color: #fff; }
.bcl-next em { font-style: normal; font-size: 13.5px; color: rgba(245,245,247,.6); }
.bcl-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
.bcl-tags a { padding: 9px 14px; border-radius: 999px; background: #fff; border: 1px solid #e3e3e8; font-size: 13.5px; color: var(--bc-text) !important; transition: border-color .25s, transform .25s; }
.bcl-tags a:hover { border-color: var(--bc-text); transform: translateY(-2px); }
.bcl-formcard { padding: 44px 44px 40px; border-radius: 32px; background: #fff; border: 1px solid #ebebf0; box-shadow: 0 30px 70px rgba(17,20,28,.08); scroll-margin-top: 100px; }

/* ---------- the form ---------- */
.bcl-form { margin: 0; }
.bcl-sec { margin: 0 0 30px; padding: 0 0 30px; border: 0; border-bottom: 1px solid #ededf2; min-width: 0; }
.bcl-sec:last-of-type { border-bottom: 0; }
.bcl-sec__h { display: flex; align-items: center; gap: 12px; width: auto; margin: 0 0 18px; padding: 0; border: 0; font-size: 19px; font-weight: 700; letter-spacing: -.01em; color: var(--bc-text); }
.bcl-sec__n { flex: 0 0 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; font-size: 13px; font-weight: 800; color: #04121f; background: linear-gradient(135deg, #a9ddff, var(--bcl-blue)); }
.bcl-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 18px; }
.bcl-f { display: flex; flex-direction: column; min-width: 0; }
.bcl-f--wide { grid-column: 1 / -1; }
.bcl-f[hidden] { display: none; }
.bcl .bcl-label { display: block; margin: 0 0 7px; padding: 0; text-align: left; font-size: 14px; font-weight: 600; color: var(--bc-text); }
.bcl-label i { margin-left: 3px; font-style: normal; color: #d0573a; }
.bcl-f input[type=text], .bcl-f input[type=email], .bcl-f input[type=tel], .bcl-f input[type=date], .bcl-f select, .bcl-f textarea {
  width: 100%; height: 52px; padding: 0 16px; border-radius: 14px; border: 1px solid #d9d9e0; background: #fbfbfd; color: var(--bc-text); font: 16px/1.4 var(--bc-font); box-shadow: none; outline: none;
  transition: border-color .2s, box-shadow .2s, background .2s; -webkit-appearance: none; appearance: none; }
.bcl-f select { padding-right: 40px; background: #fbfbfd url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236e6e73' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M7 10l5 5 5-5'/%3E%3C/svg%3E") right 14px center / 18px no-repeat; cursor: pointer; }
.bcl-f textarea { height: auto; min-height: 130px; padding: 14px 16px; resize: vertical; line-height: 1.55; }
.bcl-f input::placeholder, .bcl-f textarea::placeholder { color: #a1a1a8; }
.bcl-f input:focus, .bcl-f select:focus, .bcl-f textarea:focus { border-color: var(--bcl-blue); background: #fff; box-shadow: 0 0 0 4px rgba(46,138,192,.15); }
.bcl-f.is-bad input, .bcl-f.is-bad select, .bcl-f.is-bad textarea { border-color: #d0573a; background: #fff8f6; }
.bcl-f.is-ok input:not(:focus), .bcl-f.is-ok select:not(:focus), .bcl-f.is-ok textarea:not(:focus) { border-color: #b7d9c3; }
.bcl-err { min-height: 0; margin: 6px 0 0; font-size: 13px; color: #c2412a; }
.bcl-err:empty { display: none; }
.bcl-chips { display: flex; flex-wrap: wrap; gap: 10px; }
.bcl .bcl-chip { position: relative; margin: 0; cursor: pointer; text-align: left; }
.bcl-chip input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.bcl-chip span { display: inline-flex; align-items: center; gap: 8px; height: 46px; padding: 0 18px; border-radius: 999px; border: 1px solid #d9d9e0; background: #fbfbfd; font-size: 15px; font-weight: 500; color: var(--bc-text); transition: all .2s; }
.bcl-chip span::before { content: ""; width: 9px; height: 9px; border-radius: 50%; border: 1.5px solid #b0b0b8; transition: all .2s; }
.bcl-chip--multi span::before { border-radius: 3px; }
.bcl-chip:hover span { border-color: #9a9aa3; }
.bcl-chip input:checked + span { color: #fff; background: #0b111c; border-color: #0b111c; box-shadow: 0 8px 20px rgba(11,17,28,.18); }
.bcl-chip input:checked + span::before { background: var(--bcl-sky); border-color: var(--bcl-sky); box-shadow: 0 0 8px var(--bcl-sky); }
.bcl-chip input:focus-visible + span { box-shadow: 0 0 0 4px rgba(46,138,192,.25); }
.bcl-f.is-bad .bcl-chip span { border-color: #e7a597; }
.bcl-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.bcl-alert { margin: 0 0 24px; padding: 14px 18px; border-radius: 14px; font-size: 15px; color: #8c2a17; background: #fff1ed; border: 1px solid #f3c2b5; }
.bcl-alert[hidden] { display: none; }
.bcl-submit { display: grid; gap: 16px; padding-top: 4px; }
.bcl .bcl-consent { display: flex; gap: 12px; align-items: flex-start; margin: 0; text-align: left; font-size: 14px; line-height: 1.5; color: var(--bc-muted); cursor: pointer; }
.bcl-consent input { flex: 0 0 20px; width: 20px; height: 20px; margin: 1px 0 0; accent-color: var(--bcl-blue); }
.bcl-consent a { color: #0066cc; }
.bcl-send { position: relative; justify-self: start; display: inline-flex; align-items: center; gap: 12px; height: 58px; padding: 0 34px; border: 0; border-radius: 999px; cursor: pointer;
  font: 600 17px/1 var(--bc-font); color: #fff; background: linear-gradient(135deg, var(--bcl-blue), #0071e3); box-shadow: 0 14px 34px rgba(0,113,227,.38); transition: transform .25s var(--bc-ease), box-shadow .25s, opacity .25s; }
.bcl-send:hover { transform: translateY(-2px); box-shadow: 0 18px 42px rgba(0,113,227,.5); }
.bcl-send__a { transition: transform .25s; }
.bcl-send:hover .bcl-send__a { transform: translateX(4px); }
.bcl-send__spin { display: none; width: 18px; height: 18px; border-radius: 50%; border: 2px solid rgba(255,255,255,.35); border-top-color: #fff; animation: bclSpin .8s linear infinite; }
.bcl-send.is-busy { pointer-events: none; opacity: .85; }
.bcl-send.is-busy .bcl-send__a { display: none; }
.bcl-send.is-busy .bcl-send__spin { display: inline-block; }
.bcl-note { margin: 0; font-size: 13.5px; color: var(--bc-muted); }
.bcl-note a { color: #0066cc; }
/* success card */
.bcl-done { padding: 40px 10px 20px; text-align: center; }
.bcl-done[hidden] { display: none; }
.bcl-done__icon { display: inline-grid; place-items: center; width: 84px; height: 84px; margin-bottom: 18px; border-radius: 50%; color: #1f9d55; background: #eaf8ef; box-shadow: 0 0 0 10px #f4fbf6; }
.bcl-done__tick { stroke-dasharray: 40; stroke-dashoffset: 40; animation: bclTick .6s .25s ease-out forwards; }
@keyframes bclTick { to { stroke-dashoffset: 0; } }
.bcl-done__kicker { margin: 0 0 6px; font-size: 12px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: #1f9d55; }
.bcl-done__h { margin: 0 0 10px; font-size: 30px; font-weight: 700; letter-spacing: -.03em; color: var(--bc-text); }
.bcl-done__p { max-width: 520px; margin: 0 auto 24px; font-size: 16px; line-height: 1.6; color: var(--bc-muted); }
.bcl-done__p strong { color: var(--bc-text); font-family: ui-monospace, "SF Mono", Menlo, monospace; }
.bcl-done__links { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.bcl-done__links a { padding: 10px 18px; border-radius: 999px; border: 1px solid #e3e3e8; font-size: 14px; color: var(--bc-text); transition: border-color .25s; }
.bcl-done__links a:hover { border-color: var(--bc-text); }

/* ---------- FAQ ---------- */
.bcl-faq { padding-bottom: 96px; }
.bcl-faq__list { display: grid; gap: 12px; max-width: 980px; }
.bcl-q { padding: 0 24px; border-radius: 20px; background: #fff; border: 1px solid #ebebf0; transition: box-shadow .3s; }
.bcl-q[open] { box-shadow: 0 16px 40px rgba(17,20,28,.08); }
.bcl-q summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 20px 0; font-size: 17px; font-weight: 600; color: var(--bc-text); }
.bcl-q summary::-webkit-details-marker { display: none; }
.bcl-q summary::after { content: "+"; flex: 0 0 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; background: var(--bc-alt); font-size: 20px; font-weight: 400; transition: transform .3s var(--bc-ease); }
.bcl-q[open] summary::after { transform: rotate(45deg); }
.bcl-q p { margin: 0 0 20px; font-size: 15.5px; line-height: 1.65; color: var(--bc-muted); }
.bcl-q a { color: #0066cc; }
.bcl--support .bcl-formband, .bcl--partner .bcl-formband { padding-bottom: 0; }
.bcl--support .bcl-formband { padding-bottom: 96px; }

/* ---------- smaller screens ---------- */
@media (max-width: 1199px) {
  .bcl-help { grid-template-columns: repeat(3, 1fr); }
  .bcl-route { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 991px) {
  .bcl-hero { padding: 56px 32px 44px; border-radius: 26px; }
  .bcl-hero__grid { grid-template-columns: 1fr; }
  .bcl-hero__art { max-width: 420px; justify-self: center; margin-top: 10px; }
  .bcl-who { grid-template-columns: repeat(2, 1fr); }
  .bcl-perks, .bcl-fixes { grid-template-columns: repeat(2, 1fr); }
  .bcl-steps { grid-template-columns: 1fr; }
  .bcl-steps::before { left: 45px; right: auto; top: 30px; bottom: 30px; width: 2px; height: auto; background: linear-gradient(180deg, rgba(92,192,255,.5), rgba(230,167,116,.5)); }
  .bcl-formgrid { grid-template-columns: 1fr; }
  .bcl-aside { position: static; order: 2; }
  .bcl-band--alt { padding: 60px 28px; border-radius: 26px; }
}
@media (max-width: 767px) {
  .bcl-hero { padding: 40px 20px 30px; border-radius: 22px; }
  .bcl-h1 { font-size: 38px; }
  .bcl-lead { font-size: 16px; }
  .bcl-btn { width: 100%; justify-content: center; }
  .bcl-stats li { flex: 1 1 30%; flex-direction: column; gap: 0; padding: 12px 14px; }
  .bcl-stats strong { font-size: 22px; }
  .bcl-route { grid-template-columns: 1fr; margin-top: 30px; }
  .bcl-find { padding-left: 14px; }
  .bcl-find button { padding: 0 16px; }
  .bcl-band { padding-top: 64px; }
  .bcl-band--alt { margin-top: 64px; padding: 44px 18px; border-radius: 22px; }
  .bcl-who, .bcl-perks, .bcl-fixes, .bcl-help { grid-template-columns: 1fr; }
  .bcl-formband { padding-top: 64px; }
  .bcl-formcard { padding: 26px 18px; border-radius: 24px; }
  .bcl-grid { grid-template-columns: 1fr; }
  .bcl-chip span { height: 42px; padding: 0 14px; font-size: 14px; }
  .bcl-send { width: 100%; justify-content: center; }
  .bcl-faq { padding-bottom: 64px; }
}
@media (prefers-reduced-motion: reduce) {
  .bcl-kicker::before, .bcl-hero__glow, .bcl-orbit, .bcl-float { animation: none; }
}
