🌐 Language / Region
Offers · BRCN Studio · On the Ground in Europe
European Commercial Operations · Offers

Your European commercial function.Built, operated and led on the ground.

BRCN builds and operates European sales, business development and partner functions for international B2B technology companies—without requiring you to immediately hire a local team, establish an entity or accept an underperforming route.

Before any engagement

The first fit call is free. Scope defined before any paid engagement starts. If the intro call confirms a realistic fit, BRCN proposes a specific written scope — timeline, deliverables and fee. No engagement starts without a written scope agreed by both sides.

European Commercial Operations

Choose the commercial responsibility you want BRCN to take on.

Ongoing execution · 3–6 months

Outsourced European Business Development Desk

from €5,500/ month

Your ongoing Europe-side business development function: accountable for creating, qualifying and advancing commercial opportunities—not merely booking meetings.

  • Continuous account and stakeholder mapping
  • Direct outreach, discovery calls and structured follow-up
  • Opportunity development and technical-call coordination
  • CRM discipline, weekly pipeline reporting and market feedback
Discuss an outsourced BD desk

Commercial leadership · 6+ months

Fractional Head of Europe / European Commercial Lead

from €8,000/ month

For companies with European customers, distributors or internal sales resources that need local commercial leadership without an immediate full-time executive hire.

  • European GTM priorities, pipeline reviews and forecasting
  • Distributor and partner performance management
  • Support for proposals, negotiations and stalled opportunities
  • Management reporting and future team planning
Discuss European leadership

Build · Operate · Transfer

European Sales Office

from €15,000build phase

BRCN builds the commercial foundation, operates the European sales function and transfers a working system, pipeline and market knowledge to your internal team when the timing is right.

  • Build: ICP, CRM, messaging, process and account plan
  • Operate: outreach, qualification, opportunity ownership and forecast
  • Transfer: playbook, account handover and team onboarding
  • Optional ongoing advisory or commercial partnership
Discuss build–operate–transfer

Specialist modules

Add the operational capability your European revenue motion is missing.

Channel & Partner Operations

Partner selection, onboarding, enablement, account planning, co-selling, performance reviews and replacement of inactive routes.

RevOps & AI Sales Operations

CRM structure, pipeline stages, dashboards, routing, data enrichment and AI-supported research and follow-up—with specialist implementation where required.

Customer Growth Management

European account reviews, reactivation, renewal support, expansion opportunities, escalation management and structured customer feedback.

Trade Fair Lead Recovery

A focused 4–6 week engagement to clean, prioritise, enrich and follow up trade-fair contacts until qualified opportunities or clear closure.

What BRCN is not

Not a call centre. Not pay-per-meeting. Not a list provider. BRCN accepts defined commercial responsibility, works selectively and stays close to the conversations that can become real European revenue.

What is included in all engagements

Shared commitments across every scope.

📋

Written scope before any work starts

Timeline, outputs, fee and boundaries agreed in writing. No engagement starts on a handshake.

🎯

Operator-led — personally run by Bircan

Every engagement is run directly. No junior delegation, no agency layer, no outsourced outreach.

🔁

Commercial ownership with honest signal

BRCN owns the agreed commercial work and reports the pipeline as it is. Strong and weak signals are made visible early enough to support a real management decision.

FAQ · Offers and pricing

Common questions about the engagement structure.

Is the pricing fixed or negotiable?

The prices above are starting points. Final scope and fee are confirmed on the intro call based on the specific product, route, market and context. Larger or more complex engagements are scoped separately.

What if the pilot finds no partner interest?

Weak signal is a valid outcome when it prevents a premature hire, entity or distributor commitment. BRCN documents the objections, identifies whether route, positioning, readiness or timing is the issue and recommends whether to continue, adjust or stop.

Which engagement should we start with?

Start with European Market Activation when the route or buyer response is still unproven. Choose the Outsourced BD Desk when Europe is already a priority and you need ongoing execution. Add a European Commercial Lead when local leadership and partner accountability are the larger gap.

Is there a payment plan?

Payment structure is discussed and agreed in the written scope. Typical structure: a portion upfront to secure the scope, remainder on milestone or completion. Details confirmed on the intro call.

Which European commercial responsibility should BRCN take on?

Use the intro call to decide whether you need market activation, ongoing business development, commercial leadership or a complete build–operate–transfer engagement. If there is a fit, you receive a defined next step.

--bs-lang-radius:30px; } .bs-lang-backdrop{ position:fixed; inset:0; background: radial-gradient(circle at 16% 0%, rgba(56,189,248,.26), transparent 34%), radial-gradient(circle at 86% 14%, rgba(37,99,235,.22), transparent 36%), radial-gradient(circle at 50% 95%, rgba(22,199,161,.14), transparent 36%), rgba(7,17,31,.58); opacity:0; visibility:hidden; pointer-events:none; transition:opacity .24s ease, visibility .24s ease; z-index:2147483000; } .bs-lang-backdrop.is-active{ opacity:1; visibility:visible; pointer-events:auto; } .bs-lang-modal{ position:fixed; inset:0; display:none; align-items:center; justify-content:center; z-index:2147483001; padding:20px; } .bs-lang-modal.is-open{ display:flex; } .bs-lang-card{ position:relative; width:min(94vw, 620px); max-height:min(88vh, 760px); overflow:auto; overscroll-behavior:contain; border-radius:var(--bs-lang-radius); padding:28px; color:var(--bs-lang-ink); background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(241,245,249,.90)); border:1px solid rgba(255,255,255,.78); -webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px); box-shadow:var(--bs-lang-shadow); isolation:isolate; animation:bsLangFade .26s ease-out; font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", sans-serif; } .bs-lang-card::before{ content:""; position:absolute; inset:0; z-index:-1; border-radius:inherit; background: radial-gradient(circle at 8% 0%, rgba(56,189,248,.18), transparent 34%), radial-gradient(circle at 92% 4%, rgba(37,99,235,.16), transparent 32%), linear-gradient(135deg, rgba(255,255,255,.52), rgba(255,255,255,0)); pointer-events:none; } .bs-lang-card::after{ content:""; position:absolute; left:22px; right:22px; top:0; height:1px; background:linear-gradient(90deg, transparent, rgba(37,99,235,.34), rgba(56,189,248,.44), transparent); pointer-events:none; } @keyframes bsLangFade{ 0%{opacity:0;transform:translateY(-10px) scale(.982);} 100%{opacity:1;transform:translateY(0) scale(1);} } .bs-lang-close{ position:absolute; top:14px; right:16px; width:40px; height:40px; display:grid; place-items:center; border:none; border-radius:999px; background:rgba(255,255,255,.42); color:#64748b; font-size:30px; line-height:1; cursor:pointer; opacity:.92; transition:background .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease; } .bs-lang-close:hover{ opacity:1; color:var(--bs-lang-ink); background:rgba(255,255,255,.78); transform:translateY(-1px); box-shadow:0 10px 24px rgba(15,23,42,.08); } .bs-lang-header{ text-align:center; margin:0 42px 24px; } .bs-lang-globe{ width:52px; height:52px; margin:0 auto 13px; display:grid; place-items:center; border-radius:18px; background: radial-gradient(circle at 30% 20%, rgba(255,255,255,.88), transparent 30%), linear-gradient(135deg, rgba(37,99,235,.14), rgba(56,189,248,.20)); color:var(--bs-lang-blue-2); box-shadow: inset 0 1px 0 rgba(255,255,255,.86), 0 16px 34px rgba(37,99,235,.14); } .bs-lang-globe svg{ width:26px; height:26px; display:block; } .bs-lang-kicker{ display:inline-flex; align-items:center; justify-content:center; gap:7px; margin:0 0 10px; padding:7px 11px; border-radius:999px; border:1px solid rgba(37,99,235,.13); background:rgba(255,255,255,.62); color:var(--bs-lang-blue-2); font-size:12px; line-height:1; font-weight:850; letter-spacing:.08em; text-transform:uppercase; } .bs-lang-header h3{ margin:0; color:var(--bs-lang-ink); font-size:clamp(28px, 4vw, 42px); line-height:.98; letter-spacing:-.06em; font-weight:950; } .bs-lang-sub{ max-width:460px; margin:13px auto 0; color:var(--bs-lang-muted); font-size:15.5px; line-height:1.5; font-weight:540; } .bs-lang-body{ display:block; } .bs-lang-label{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 10px; color:var(--bs-lang-ink); font-size:clamp(17px, 1.7vw, 21px); line-height:1.15; font-weight:880; letter-spacing:-.025em; } .bs-lang-label small{ color:var(--bs-lang-soft); font-size:12px; line-height:1; font-weight:750; letter-spacing:.02em; } .bs-lang-region-grid{ display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:0 0 21px; } .bs-lang-region-card{ position:relative; min-height:118px; padding:17px 17px 16px; border-radius:22px; border:1px solid rgba(15,23,42,.09); background:linear-gradient(180deg, rgba(255,255,255,.82), rgba(248,250,252,.76)); color:var(--bs-lang-ink); text-align:left; cursor:pointer; box-shadow: inset 0 1px 0 rgba(255,255,255,.78), 0 12px 26px rgba(15,23,42,.06); overflow:hidden; isolation:isolate; transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease; } .bs-lang-region-card::before{ content:""; position:absolute; inset:-1px; z-index:-1; background: radial-gradient(circle at 18% 0%, rgba(56,189,248,.14), transparent 32%), radial-gradient(circle at 100% 0%, rgba(37,99,235,.10), transparent 36%); opacity:.75; pointer-events:none; } .bs-lang-region-card:hover{ transform:translateY(-2px); border-color:rgba(37,99,235,.20); box-shadow: inset 0 1px 0 rgba(255,255,255,.84), 0 18px 34px rgba(15,23,42,.10); } .bs-lang-region-card.is-active{ border-color:rgba(37,99,235,.34); background:linear-gradient(180deg, rgba(239,246,255,.98), rgba(255,255,255,.88)); box-shadow: inset 0 1px 0 rgba(255,255,255,.90), 0 18px 38px rgba(37,99,235,.14); } .bs-lang-region-top{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 12px; } .bs-lang-region-flag{ font-size:28px; line-height:1; } .bs-lang-region-dot{ width:10px; height:10px; border-radius:999px; background:rgba(100,116,139,.28); box-shadow:0 0 0 5px rgba(100,116,139,.08); transition:background .18s ease, box-shadow .18s ease; } .bs-lang-region-card.is-active .bs-lang-region-dot{ background:var(--bs-lang-green); box-shadow:0 0 0 5px rgba(22,199,161,.14); } .bs-lang-region-title{ display:block; margin:0 0 5px; color:var(--bs-lang-ink); font-size:19px; line-height:1.08; font-weight:920; letter-spacing:-.035em; } .bs-lang-region-meta{ display:block; color:var(--bs-lang-muted); font-size:13px; line-height:1.35; font-weight:620; } .bs-lang-region-codes{ display:flex; flex-wrap:wrap; gap:7px; margin:13px 0 0; } .bs-lang-region-codes .bs-lang-mini-flag{ display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; border-radius:999px; background:rgba(255,255,255,.78); border:1px solid rgba(15,23,42,.06); box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 4px 10px rgba(15,23,42,.05); font-size:16px; line-height:1; } .bs-lang-select-wrap{ position:relative; margin-bottom:18px; } .bs-lang-select{ width:100%; min-height:66px; padding:0 56px 0 20px; border-radius:20px; border:1.5px solid rgba(15,23,42,.11); background:rgba(255,255,255,.90); color:#2f3640; font-size:clamp(17px, 1.7vw, 22px); font-weight:620; line-height:1.2; appearance:none; -webkit-appearance:none; box-shadow: inset 0 1px 2px rgba(15,23,42,.03), 0 1px 0 rgba(255,255,255,.85); font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", sans-serif; cursor:pointer; } .bs-lang-select:hover{ border-color:rgba(37,99,235,.22); } .bs-lang-choice{ display:flex; align-items:center; text-align:left; } .bs-lang-choice-current{ display:block; min-width:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; pointer-events:none; } .bs-lang-caret{ position:absolute; top:33px; right:22px; width:18px; height:18px; transform:translateY(-50%); pointer-events:none; } .bs-lang-caret::before{ content:""; display:block; width:0; height:0; border-left:8px solid transparent; border-right:8px solid transparent; border-top:9px solid #3f4650; transition:transform .18s ease; } .bs-lang-select-wrap.is-open .bs-lang-caret::before{ transform:rotate(180deg); } .bs-lang-menu{ display:none; margin-top:8px; max-height:278px; overflow:auto; overscroll-behavior:contain; padding:8px; border-radius:20px; border:1px solid rgba(15,23,42,.10); background:rgba(255,255,255,.98); box-shadow:0 18px 42px rgba(15,23,42,.16); } .bs-lang-select-wrap.is-open .bs-lang-menu{ display:grid; gap:6px; } .bs-lang-option{ width:100%; min-height:48px; padding:10px 12px; border:none; border-radius:14px; background:transparent; color:#111827; font-size:16px; font-weight:660; line-height:1.2; text-align:left; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:12px; font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", sans-serif; transition:background .16s ease, transform .16s ease; } .bs-lang-option:hover{ background:rgba(37,99,235,.08); transform:translateY(-1px); } .bs-lang-option.is-selected{ background:linear-gradient(135deg, rgba(37,99,235,.11), rgba(56,189,248,.13)); color:#0f172a; font-weight:780; } .bs-lang-option-label{ display:block; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; } .bs-lang-option-mark{ opacity:0; color:var(--bs-lang-blue-2); font-size:12px; font-weight:900; white-space:nowrap; } .bs-lang-option.is-selected .bs-lang-option-mark{ opacity:1; } .bs-lang-hint{ margin:2px 2px 22px; color:var(--bs-lang-muted); font-size:15px; line-height:1.45; font-weight:520; } .bs-lang-actions{ display:grid; gap:10px; } .bs-lang-primary{ width:100%; min-height:60px; border:none; border-radius:18px; cursor:pointer; background:linear-gradient(90deg, #147fe8 0%, #16b8d7 56%, #16c7a1 100%); color:#fff; font-size:clamp(18px, 1.7vw, 22px); font-weight:900; line-height:1; box-shadow:0 16px 34px rgba(37,99,235,.25); transition:transform .18s ease, box-shadow .18s ease, filter .18s ease; } .bs-lang-primary:hover{ transform:translateY(-1px); box-shadow:0 20px 40px rgba(37,99,235,.32); filter:saturate(1.05); } .bs-lang-secondary{ width:100%; min-height:44px; border:none; border-radius:15px; cursor:pointer; background:transparent; color:var(--bs-lang-muted); font-size:14px; font-weight:780; line-height:1; transition:background .18s ease, color .18s ease; } .bs-lang-secondary:hover{ background:rgba(255,255,255,.62); color:var(--bs-lang-ink); } .bs-lang-close:focus-visible, .bs-lang-primary:focus-visible, .bs-lang-secondary:focus-visible, .bs-lang-region-card:focus-visible, .bs-lang-select:focus-visible, .bs-lang-option:focus-visible{ outline:3px solid rgba(37,99,235,.28); outline-offset:3px; } .bs-lang-card.is-shaking{ animation:bsLangShake .24s ease; } @keyframes bsLangShake{ 0%, 100%{ transform:translateX(0); } 25%{ transform:translateX(-5px); } 75%{ transform:translateX(5px); } } @media (max-width:767px){ .bs-lang-modal{ padding:14px; align-items:center; } .bs-lang-card{ width:min(94vw, 520px); max-height:88vh; border-radius:24px; padding:20px 16px 20px; } .bs-lang-close{ top:10px; right:10px; width:34px; height:34px; font-size:27px; } .bs-lang-header{ margin:0 36px 18px; } .bs-lang-globe{ width:44px; height:44px; border-radius:15px; margin-bottom:11px; } .bs-lang-globe svg{ width:22px; height:22px; } .bs-lang-kicker{ font-size:10.5px; padding:6px 9px; } .bs-lang-header h3{ font-size:29px; letter-spacing:-.055em; } .bs-lang-sub{ margin-top:10px; font-size:14px; } .bs-lang-label{ margin-bottom:8px; font-size:17px; } .bs-lang-label small{ display:none; } .bs-lang-region-grid{ grid-template-columns:1fr; gap:9px; margin-bottom:18px; } .bs-lang-region-card{ min-height:auto; padding:14px; border-radius:18px; } .bs-lang-region-top{ margin-bottom:8px; } .bs-lang-region-flag{ font-size:25px; } .bs-lang-region-title{ font-size:18px; } .bs-lang-region-meta{ font-size:12.5px; } .bs-lang-region-codes{ gap:6px; margin-top:10px; } .bs-lang-region-codes .bs-lang-mini-flag{ width:28px; height:28px; font-size:15px; } .bs-lang-select-wrap{ margin-bottom:16px; } .bs-lang-select{ min-height:58px; padding-left:16px; padding-right:48px; border-radius:17px; font-size:16px; } .bs-lang-caret{ top:29px; right:17px; } .bs-lang-caret::before{ border-left:7px solid transparent; border-right:7px solid transparent; border-top:8px solid #3f4650; } .bs-lang-menu{ max-height:238px; border-radius:17px; } .bs-lang-option{ min-height:45px; font-size:15px; } .bs-lang-hint{ margin-top:0; margin-bottom:18px; font-size:14px; } .bs-lang-primary{ min-height:54px; border-radius:17px; font-size:17px; } .bs-lang-secondary{ min-height:40px; font-size:13px; } } @supports (padding:env(safe-area-inset-left)){ @media (max-width:767px){ .bs-lang-modal{ padding-left:max(14px, env(safe-area-inset-left)); padding-right:max(14px, env(safe-area-inset-right)); padding-bottom:max(14px, env(safe-area-inset-bottom)); } } } @media (prefers-reduced-motion:reduce){ .bs-lang-backdrop, .bs-lang-card, .bs-lang-primary, .bs-lang-secondary, .bs-lang-close, .bs-lang-region-card, .bs-lang-option{ transition:none; animation:none; } } background: radial-gradient(circle at 16% 0%, rgba(56,189,248,.26), transparent 34%), radial-gradient(circle at 86% 14%, rgba(37,99,235,.22), transparent 36%), radial-gradient(circle at 50% 95%, rgba(22,199,161,.14), transparent 36%), rgba(7,17,31,.58); opacity:0; visibility:hidden; pointer-events:none; transition:opacity .24s ease, visibility .24s ease; z-index:2147483000; } .bs-lang-backdrop.is-active{ opacity:1; visibility:visible; pointer-events:auto; } .bs-lang-modal{ position:fixed; inset:0; display:none; align-items:center; justify-content:center; z-index:2147483001; padding:20px; } .bs-lang-modal.is-open{ display:flex; } .bs-lang-card{ position:relative; width:min(94vw, 620px); max-height:min(88vh, 760px); overflow:auto; overscroll-behavior:contain; border-radius:var(--bs-lang-radius); padding:28px; color:var(--bs-lang-ink); background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(241,245,249,.90)); border:1px solid rgba(255,255,255,.78); -webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px); box-shadow:var(--bs-lang-shadow); isolation:isolate; animation:bsLangFade .26s ease-out; font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", sans-serif; } .bs-lang-card::before{ content:""; position:absolute; inset:0; z-index:-1; border-radius:inherit; background: radial-gradient(circle at 8% 0%, rgba(56,189,248,.18), transparent 34%), radial-gradient(circle at 92% 4%, rgba(37,99,235,.16), transparent 32%), linear-gradient(135deg, rgba(255,255,255,.52), rgba(255,255,255,0)); pointer-events:none; } .bs-lang-card::after{ content:""; position:absolute; left:22px; right:22px; top:0; height:1px; background:linear-gradient(90deg, transparent, rgba(37,99,235,.34), rgba(56,189,248,.44), transparent); pointer-events:none; } @keyframes bsLangFade{ 0%{opacity:0;transform:translateY(-10px) scale(.982);} 100%{opacity:1;transform:translateY(0) scale(1);} } .bs-lang-close{ position:absolute; top:14px; right:16px; width:40px; height:40px; display:grid; place-items:center; border:none; border-radius:999px; background:rgba(255,255,255,.42); color:#64748b; font-size:30px; line-height:1; cursor:pointer; opacity:.92; transition:background .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease; } .bs-lang-close:hover{ opacity:1; color:var(--bs-lang-ink); background:rgba(255,255,255,.78); transform:translateY(-1px); box-shadow:0 10px 24px rgba(15,23,42,.08); } .bs-lang-header{ text-align:center; margin:0 42px 24px; } .bs-lang-globe{ width:52px; height:52px; margin:0 auto 13px; display:grid; place-items:center; border-radius:18px; background: radial-gradient(circle at 30% 20%, rgba(255,255,255,.88), transparent 30%), linear-gradient(135deg, rgba(37,99,235,.14), rgba(56,189,248,.20)); color:var(--bs-lang-blue-2); box-shadow: inset 0 1px 0 rgba(255,255,255,.86), 0 16px 34px rgba(37,99,235,.14); } .bs-lang-globe svg{ width:26px; height:26px; display:block; } .bs-lang-kicker{ display:inline-flex; align-items:center; justify-content:center; gap:7px; margin:0 0 10px; padding:7px 11px; border-radius:999px; border:1px solid rgba(37,99,235,.13); background:rgba(255,255,255,.62); color:var(--bs-lang-blue-2); font-size:12px; line-height:1; font-weight:850; letter-spacing:.08em; text-transform:uppercase; } .bs-lang-header h3{ margin:0; color:var(--bs-lang-ink); font-size:clamp(28px, 4vw, 42px); line-height:.98; letter-spacing:-.06em; font-weight:950; } .bs-lang-sub{ max-width:460px; margin:13px auto 0; color:var(--bs-lang-muted); font-size:15.5px; line-height:1.5; font-weight:540; } .bs-lang-body{ display:block; } .bs-lang-label{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 10px; color:var(--bs-lang-ink); font-size:clamp(17px, 1.7vw, 21px); line-height:1.15; font-weight:880; letter-spacing:-.025em; } .bs-lang-label small{ color:var(--bs-lang-soft); font-size:12px; line-height:1; font-weight:750; letter-spacing:.02em; } .bs-lang-region-grid{ display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:0 0 21px; } .bs-lang-region-card{ position:relative; min-height:118px; padding:17px 17px 16px; border-radius:22px; border:1px solid rgba(15,23,42,.09); background:linear-gradient(180deg, rgba(255,255,255,.82), rgba(248,250,252,.76)); color:var(--bs-lang-ink); text-align:left; cursor:pointer; box-shadow: inset 0 1px 0 rgba(255,255,255,.78), 0 12px 26px rgba(15,23,42,.06); overflow:hidden; isolation:isolate; transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease; } .bs-lang-region-card::before{ content:""; position:absolute; inset:-1px; z-index:-1; background: radial-gradient(circle at 18% 0%, rgba(56,189,248,.14), transparent 32%), radial-gradient(circle at 100% 0%, rgba(37,99,235,.10), transparent 36%); opacity:.75; pointer-events:none; } .bs-lang-region-card:hover{ transform:translateY(-2px); border-color:rgba(37,99,235,.20); box-shadow: inset 0 1px 0 rgba(255,255,255,.84), 0 18px 34px rgba(15,23,42,.10); } .bs-lang-region-card.is-active{ border-color:rgba(37,99,235,.34); background:linear-gradient(180deg, rgba(239,246,255,.98), rgba(255,255,255,.88)); box-shadow: inset 0 1px 0 rgba(255,255,255,.90), 0 18px 38px rgba(37,99,235,.14); } .bs-lang-region-top{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 12px; } .bs-lang-region-flag{ font-size:28px; line-height:1; } .bs-lang-region-dot{ width:10px; height:10px; border-radius:999px; background:rgba(100,116,139,.28); box-shadow:0 0 0 5px rgba(100,116,139,.08); transition:background .18s ease, box-shadow .18s ease; } .bs-lang-region-card.is-active .bs-lang-region-dot{ background:var(--bs-lang-green); box-shadow:0 0 0 5px rgba(22,199,161,.14); } .bs-lang-region-title{ display:block; margin:0 0 5px; color:var(--bs-lang-ink); font-size:19px; line-height:1.08; font-weight:920; letter-spacing:-.035em; } .bs-lang-region-meta{ display:block; color:var(--bs-lang-muted); font-size:13px; line-height:1.35; font-weight:620; } .bs-lang-region-codes{ display:flex; flex-wrap:wrap; gap:7px; margin:13px 0 0; } .bs-lang-region-codes .bs-lang-mini-flag{ display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; border-radius:999px; background:rgba(255,255,255,.78); border:1px solid rgba(15,23,42,.06); box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 4px 10px rgba(15,23,42,.05); font-size:16px; line-height:1; } .bs-lang-select-wrap{ position:relative; margin-bottom:18px; } .bs-lang-select{ width:100%; min-height:66px; padding:0 56px 0 20px; border-radius:20px; border:1.5px solid rgba(15,23,42,.11); background:rgba(255,255,255,.90); color:#2f3640; font-size:clamp(17px, 1.7vw, 22px); font-weight:620; line-height:1.2; appearance:none; -webkit-appearance:none; box-shadow: inset 0 1px 2px rgba(15,23,42,.03), 0 1px 0 rgba(255,255,255,.85); font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", sans-serif; cursor:pointer; } .bs-lang-select:hover{ border-color:rgba(37,99,235,.22); } .bs-lang-choice{ display:flex; align-items:center; text-align:left; } .bs-lang-choice-current{ display:block; min-width:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; pointer-events:none; } .bs-lang-caret{ position:absolute; top:33px; right:22px; width:18px; height:18px; transform:translateY(-50%); pointer-events:none; } .bs-lang-caret::before{ content:""; display:block; width:0; height:0; border-left:8px solid transparent; border-right:8px solid transparent; border-top:9px solid #3f4650; transition:transform .18s ease; } .bs-lang-select-wrap.is-open .bs-lang-caret::before{ transform:rotate(180deg); } .bs-lang-menu{ display:none; margin-top:8px; max-height:278px; overflow:auto; overscroll-behavior:contain; padding:8px; border-radius:20px; border:1px solid rgba(15,23,42,.10); background:rgba(255,255,255,.98); box-shadow:0 18px 42px rgba(15,23,42,.16); } .bs-lang-select-wrap.is-open .bs-lang-menu{ display:grid; gap:6px; } .bs-lang-option{ width:100%; min-height:48px; padding:10px 12px; border:none; border-radius:14px; background:transparent; color:#111827; font-size:16px; font-weight:660; line-height:1.2; text-align:left; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:12px; font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", sans-serif; transition:background .16s ease, transform .16s ease; } .bs-lang-option:hover{ background:rgba(37,99,235,.08); transform:translateY(-1px); } .bs-lang-option.is-selected{ background:linear-gradient(135deg, rgba(37,99,235,.11), rgba(56,189,248,.13)); color:#0f172a; font-weight:780; } .bs-lang-option-label{ display:block; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; } .bs-lang-option-mark{ opacity:0; color:var(--bs-lang-blue-2); font-size:12px; font-weight:900; white-space:nowrap; } .bs-lang-option.is-selected .bs-lang-option-mark{ opacity:1; } .bs-lang-hint{ margin:2px 2px 22px; color:var(--bs-lang-muted); font-size:15px; line-height:1.45; font-weight:520; } .bs-lang-actions{ display:grid; gap:10px; } .bs-lang-primary{ width:100%; min-height:60px; border:none; border-radius:18px; cursor:pointer; background:linear-gradient(90deg, #147fe8 0%, #16b8d7 56%, #16c7a1 100%); color:#fff; font-size:clamp(18px, 1.7vw, 22px); font-weight:900; line-height:1; box-shadow:0 16px 34px rgba(37,99,235,.25); transition:transform .18s ease, box-shadow .18s ease, filter .18s ease; } .bs-lang-primary:hover{ transform:translateY(-1px); box-shadow:0 20px 40px rgba(37,99,235,.32); filter:saturate(1.05); } .bs-lang-secondary{ width:100%; min-height:44px; border:none; border-radius:15px; cursor:pointer; background:transparent; color:var(--bs-lang-muted); font-size:14px; font-weight:780; line-height:1; transition:background .18s ease, color .18s ease; } .bs-lang-secondary:hover{ background:rgba(255,255,255,.62); color:var(--bs-lang-ink); } .bs-lang-close:focus-visible, .bs-lang-primary:focus-visible, .bs-lang-secondary:focus-visible, .bs-lang-region-card:focus-visible, .bs-lang-select:focus-visible, .bs-lang-option:focus-visible{ outline:3px solid rgba(37,99,235,.28); outline-offset:3px; } .bs-lang-card.is-shaking{ animation:bsLangShake .24s ease; } @keyframes bsLangShake{ 0%, 100%{ transform:translateX(0); } 25%{ transform:translateX(-5px); } 75%{ transform:translateX(5px); } } @media (max-width:767px){ .bs-lang-modal{ padding:14px; align-items:center; } .bs-lang-card{ width:min(94vw, 520px); max-height:88vh; border-radius:24px; padding:20px 16px 20px; } .bs-lang-close{ top:10px; right:10px; width:34px; height:34px; font-size:27px; } .bs-lang-header{ margin:0 36px 18px; } .bs-lang-globe{ width:44px; height:44px; border-radius:15px; margin-bottom:11px; } .bs-lang-globe svg{ width:22px; height:22px; } .bs-lang-kicker{ font-size:10.5px; padding:6px 9px; } .bs-lang-header h3{ font-size:29px; letter-spacing:-.055em; } .bs-lang-sub{ margin-top:10px; font-size:14px; } .bs-lang-label{ margin-bottom:8px; font-size:17px; } .bs-lang-label small{ display:none; } .bs-lang-region-grid{ grid-template-columns:1fr; gap:9px; margin-bottom:18px; } .bs-lang-region-card{ min-height:auto; padding:14px; border-radius:18px; } .bs-lang-region-top{ margin-bottom:8px; } .bs-lang-region-flag{ font-size:25px; } .bs-lang-region-title{ font-size:18px; } .bs-lang-region-meta{ font-size:12.5px; } .bs-lang-region-codes{ gap:6px; margin-top:10px; } .bs-lang-region-codes .bs-lang-mini-flag{ width:28px; height:28px; font-size:15px; } .bs-lang-select-wrap{ margin-bottom:16px; } .bs-lang-select{ min-height:58px; padding-left:16px; padding-right:48px; border-radius:17px; font-size:16px; } .bs-lang-caret{ top:29px; right:17px; } .bs-lang-caret::before{ border-left:7px solid transparent; border-right:7px solid transparent; border-top:8px solid #3f4650; } .bs-lang-menu{ max-height:238px; border-radius:17px; } .bs-lang-option{ min-height:45px; font-size:15px; } .bs-lang-hint{ margin-top:0; margin-bottom:18px; font-size:14px; } .bs-lang-primary{ min-height:54px; border-radius:17px; font-size:17px; } .bs-lang-secondary{ min-height:40px; font-size:13px; } } @supports (padding:env(safe-area-inset-left)){ @media (max-width:767px){ .bs-lang-modal{ padding-left:max(14px, env(safe-area-inset-left)); padding-right:max(14px, env(safe-area-inset-right)); padding-bottom:max(14px, env(safe-area-inset-bottom)); } } } @media (prefers-reduced-motion:reduce){ .bs-lang-backdrop, .bs-lang-card, .bs-lang-primary, .bs-lang-secondary, .bs-lang-close, .bs-lang-region-card, .bs-lang-option{ transition:none; animation:none; } }