🌐 Language / Region
BRCN Studio · On the Ground in Europe
European Commercial Operations · Industrial & B2B Technology

Build European revenue without building the full team first. Your outsourced European commercial function. Operator-led. Personally run by Bircan Öztürk.

For international industrial technology, robotics, automation, manufacturing technology, smart hardware and selected B2B technology companies — BRCN builds, operates and leads European sales, business development and partner functions without requiring an immediate local hire or entity.

Not a call centre. Not pay-per-meeting. BRCN takes defined commercial responsibility—from market activation and opportunity development to partner operations and fractional European leadership.

Opportunity ownership German & English Discovery & follow-up Pipeline reporting Europe-side execution Operator-led
OP
Founder-led execution. No agency handoff. Technical B2B sales background in robotics, CAD/CAM and industrial automation — I know what European partners ask before they go quiet.
Act first · Then commit
Your European commercial function. Build · Operate · Lead · Transfer
Europe active
Your product Commercially ready. Now needs systematic European execution.
European pipeline Customers, partners and opportunities developed with clear ownership.
IdentifyRight partner type. Targeted list. Not a generic database.
OutreachGerman & English. On your behalf. Partner-specific angle.
CallsI join first conversations as your local commercial bridge.
RealityWhat Europe actually says. Clear, direct, useful.
The output is a managed commercial function.

Target accounts, conversations, qualified opportunities, follow-up discipline, pipeline visibility and a clear management decision on what to build next.

In industrial tech and robotics, the relevant partner pool in Europe is limited. One wrong outreach, unclear support story or weak first impression — and the market remembers. Before broad outreach, test the route with BRCN on the ground — someone who can tell which conversations are worth starting.
Core truth

BRCN Studio is your first commercial layer in Europe — not a remote advisor. For a defined period, BRCN identifies the right commercial targets, reaches out in German and English, sits in the first calls, drives follow-up and shows you which partner, pilot or deal path is actually worth pursuing. Operator-led by BRCN Studio. Personally run by Bircan Öztürk.

Trade-fair leads collected, no qualified follow-up, no clear understanding of why nothing converted — and the best contacts already forming an opinion.

Common failure pattern · Robotics & industrial tech

One distributor appointed, months of slow email exchanges, no real traction — and no clear read on whether the issue is the product, the story or the partner type.

Common failure pattern · Manufacturing & automation

A strong product demo, genuine interest — then silence. No local follow-up, no answer to internal questions, no one to keep the conversation moving on the ground.

Common failure pattern · B2B technology & software

What early activation can reveal

What hands-on market activation reveals early.

Early partner conversations quickly show whether the issue is the route, the support story, the partner type or the product positioning.

🔄

Wrong route corrected

Distributor was the assumed route — integrator conversations created stronger technical fit and follow-up.

⏸️

Timing corrected

Strong product, unready support story — outreach paused deliberately before contacts were burned.

🎯

Focus corrected

Large generalist channels ignored the product — specialist technical partners showed real interest.

Patterns observed across early BRCN engagements, anonymised. Full client stories →

What I do

I act in Europe. You focus on the product.

For a defined period I work as your first local commercial representative. Not a consultant who leaves you with documents — someone who identifies the right commercial targets, reaches out, supports first calls, follows up and keeps qualified opportunities moving instead of letting them die in European silence.

This is the practical middle between blind distributor guessing and opening a European entity too early. Where specialist execution is needed — legal, tax, certification, banking — BRCN coordinates with qualified external partners instead of pretending one person should cover everything.

01
Identify the right partner type Distributor, system integrator, OEM, robotics developer, pilot customer or representative route — based on your product, market and stage. Not a guess, not a database.
02
Reach out in German and English Targeted outreach on your behalf with the right angle for each partner type. No mass LinkedIn blasts. No generic scripts. Controlled, qualified first contact.
03
Join the first calls with you I sit in relevant first conversations as your local commercial bridge. I handle the questions, keep the flow going and make sure follow-up doesn’t die quietly.
04
Feed honest market feedback back What do European partners ask? What blocks the next step? What needs to change? You get direct answers — not filtered optimism, not a polished deck.
Execution gap

Ecosystems, delegations and strategy meetings do not create European traction by themselves. At some point, someone has to contact the right decision-makers, start the commercial conversations, follow up and move the opportunity forward. That is where BRCN comes in.

Why strong products go silent

The real failure pattern in European industrial markets.

It is rarely the product. It is the partner route, the proof, the support logic and the local follow-up around the first serious conversation.

🎯

Wrong partner type

Asking for distributors when the better first route is an integrator, OEM, representative or pilot customer. The market notices the mismatch fast.

📋

Unready story and proof

Strong product, but support logic, sample process, CE context and internal-forwarding material are not partner-ready when questions come.

🌐

No local bridge

Interested partners have questions. No one local can answer them, qualify fit or keep the conversation alive in the right tone and language.

📢

Too much noise, too little route

Trade fairs, LinkedIn blasts and random introductions before anyone knows which route and partner type actually fits the product and stage.

🔇

Follow-up silence

The demo went well. Then nothing. No structured local follow-up, no answer to internal questions, no next-step ownership on the ground.

Damage is slow to repair

In concentrated industrial markets, a weak first impression with the best contacts can take 6–12 months to repair — if those contacts are still open at all.

Why use BRCN before hiring locally?

Cheaper than a wrong hire. More useful than another market report.

Most companies don’t need a European entity, a full-time sales hire or another ecosystem discussion on day one. They need a first local commercial operator who can identify the right decision-makers, open selected conversations, follow up and turn market interest into a concrete next step.

That is the role BRCN plays: operator-led execution, specialist partner support where needed — and a clear recommendation on what to build next.

You work with Bircan directly Not junior consultants, not a layered agency. One operator, full accountability, every conversation.
Specialists where needed Legal, tax, compliance, certification and banking stay with qualified partners. BRCN coordinates the commercial logic.
Safer than a random distributor Before appointing a distributor, BRCN helps you understand whether distributor, integrator, OEM or pilot customer actually fits your product and stage.
Market signal before commitment Before entity setup, local hiring or broad outreach, you get real feedback from selected partner conversations — not theory.

How it works

From first call to first partner conversations.

A focused engagement with a clear scope. The goal is not a presentation. The goal is that selected European partners hear about your product in the right way, ask real questions and move — or show clearly why they will not.

If the market doesn’t respond the way you hoped, you still learn exactly what needs to change before spending more money on Europe.

01 Free intro call

You explain the product, the target market and what has already been tried. I tell you honestly whether there is a realistic fit — before a paid scope is proposed.

02 Route and readiness

I define the likely partner type, the first target market and what story each partner needs before serious outreach starts.

03 Active outreach

I contact selected companies on your behalf, qualify interest and support first conversations — including joining calls as your local bridge.

04 Feedback and next step

You receive direct market feedback and a clear recommendation: continue, adjust, pause or build a more permanent local structure.

Who it’s for

Built for Asian companies serious about doing business in Europe.

Robotics, industrial tech, manufacturing software, B2B hardware and enterprise technology — if you have a real product and real ambition for DACH or Western Europe, and you need someone who acts locally instead of explaining why it’s complicated, this is built for you.

Robotics & Industrial Tech

Asian robotics, automation, CNC, industrial hardware and manufacturing software companies entering DACH or broader Western Europe. Deep technical background, first-hand DACH industrial network.

  • Joint actuators, cobots, AMR/AGV, industrial robots
  • CNC software, CAD/CAM, simulation tools
  • Manufacturing hardware and production components
  • Robot offline programming environments
  • Industrial IoT, sensors and automation platforms
Explore Asia → Europe

Startup Commercialisation & Growth

Selected B2B technology startups that need hands-on commercial execution from ICP and positioning through market validation, first customers, repeatable sales and an internal commercial team.

  • Commercial foundation: ICP, positioning and pricing
  • Market validation through real buyer conversations
  • Pilots, proposals and first customers
  • CRM, pipeline and repeatable sales execution
  • Commercial team design, onboarding and transfer
Explore end-to-end startup support

European Commercial Operations

Outsource the European commercial responsibility you are not ready to hire for.

Start with market activation, add an ongoing business development desk, bring in local commercial leadership or let BRCN build and operate the function until your own team is ready.

Ongoing execution

Outsourced European BD Desk

from €5,500/ month

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

  • Continuous account development
  • Outreach, discovery and follow-up
  • CRM and weekly pipeline reporting
  • Technical-call coordination
Discuss outsourced BD

Leadership or full build

European Commercial Lead

from €8,000/ month

Local leadership for European pipeline, distributors, internal sales resources, forecasts and management decisions.

  • GTM priorities and pipeline reviews
  • Partner performance management
  • Negotiation and escalation support
  • Future team planning
See leadership and BOT model
Build–Operate–Transfer European Sales Office: BRCN can build the commercial foundation, operate the function and transfer the working system, pipeline and market knowledge to your internal team.

Secondary path

Europe → Asia also available — as a partner-supported path.

BRCN coordinates route logic, commercial framing and partner selection. Market-specific contacts or partners support local execution where needed — Japan, Korea, China, Vietnam, India or ASEAN.

Europe → Asia Route & Partner Activation

For European industrial, manufacturing and technology companies entering Asia with more discipline than “we know someone there” or “let’s try one distributor”.

  • Market selection: Japan, Korea, China, Vietnam, India or ASEAN
  • Partner type, relationship logic and decision culture per market
  • BRCN coordinates route logic and commercial framing
  • Market-specific partners support local execution where needed
  • Representative, channel partner or phased entry route
Explore Europe → Asia

Japan · Korea · China · Vietnam · India

Each Asian market needs different trust-building, partner roles and first-conversation logic. A single “Asia strategy” is usually too broad — and local execution should be partner-supported.

  • Japan: relationship depth and decision pace
  • Korea: ecosystem logic and entry layers
  • China: partner type, compliance and IP framing
  • Vietnam & ASEAN: country-by-country channel logic
  • India: segment fit and decision-maker mapping
Discuss fit first

Operator background

Why this works. And why it is not a consulting firm.

One accountable commercial operator — not an agency between you and your first European partner conversations.

Bircan Öztürk, Founder and Operator of BRCN Studio

Bircan Öztürk

Founder & Operator · BRCN Studio / BRCN Group OÜ

Technical B2B sales background across robotics, CAD/CAM, CNC simulation, robot offline programming and manufacturing software — including CEO/Geschäftsführer at CAMWERK in the Mastercam/CAD-CAM integration context. The value is not a logo list. It is practical exposure to exactly the sales cycles where strong products still go quiet when route, proof, support and local follow-up are weak.

BRCN Studio was built for the moment before a company spends heavily on the wrong European route: before broad distributor campaigns, premature entities, blind local hires — and before serious contacts are approached with an unready story.

Technical B2B sales Robotics & automation CAD/CAM ecosystem CNC simulation Robot offline programming CEO/GF CAMWERK DACH market Asia → Europe Partner activation
Connect with Bircan → Follow BRCN Studio →

Fit filter

This is not for every company.

A clear no upfront is better than a weak engagement. BRCN works best when the product is real, the ambition is serious and the company is ready to participate in — not just observe — the first European conversations.

Good fit

  • You have a real B2B product — not just a deck or an idea.
  • You want Asia → Europe as a serious commercial route this year.
  • You can provide product material, pricing logic and technical answers.
  • You are willing to join first calls and support follow-up properly.
  • You understand the goal is market signal and partner momentum — not guaranteed contracts.
  • You want real commercial conversations now — not months of internal alignment before Europe is tested.

Not a fit

  • You only want free partner contacts or unpaid introductions.
  • You expect success-only compensation without a paid scope.
  • You cannot answer basic technical, support or commercial questions.
  • You want BRCN to act as importer, reseller, warranty provider or legal representative.
  • You expect guaranteed distributors, revenue or signed contracts after 3 months.

Clear boundaries

Active representation. Clear limits.

The offer is commercial activation with clear scope — not random introductions, unpaid market development or legal responsibility for your European presence.

🚫

Not a partner database

BRCN does not sell contact lists. Targets are selected after route logic, fit reasoning and partner-type clarity — not exported from a generic database.

⚖️

Not legal, tax or importer

Regulated topics stay with qualified specialists. BRCN is not importer, distributor of record, warranty provider, legal advisor or EU Responsible Person. Wherever this site says “on your behalf,” that means commercial outreach only — never legal representation or signing authority.

🔒

No free introductions

Partner lists, target mapping, introductions and outreach require a paid scope or written agreement. No exceptions.

🎯

No success guarantees

The promise is controlled activation and real market feedback — not guaranteed distributors, signed contracts or sales outcomes.

🏭

Serious B2B only

Industrial tech, robotics, automation, manufacturing software and B2B technology. Not consumer goods, not e-commerce, not speculative outreach.

🧭

Act before committing

Test the route before hiring locally, opening an entity, appointing a distributor or burning strategic targets with an unready story.

FAQ

Clear answers. No vague promises.

Is this consulting or active representation?

Active commercial representation. I identify partner types, reach out to selected companies, support first conversations and give direct market feedback. Operator-led, not an agency handoff.

Why Asia → Europe as the main focus?

That is the clearest buyer need and the strongest positioning: Asian B2B tech companies need a credible first local person in Europe before they commit to entity, hire or distributor structures. That is the moment BRCN is built for.

Do you still support Europe → Asia?

Yes, as a secondary partner-supported path. BRCN coordinates route and commercial framing; market-specific contacts or partners support local execution in Japan, Korea, China, Vietnam, India or ASEAN.

Do you work with startups?

Yes, selectively. The startup track is a deeper, hands-on engagement for funded or serious B2B startups still shaping their story and partner readiness — not idea-stage brainstorming or unpaid exploration.

Do you guarantee distributors or contracts?

No. The promise is qualified outreach, first conversations, follow-up support and honest market feedback — not guaranteed contracts, sales numbers or distributor signatures. No one can honestly guarantee those.

What if I only want success-based compensation?

BRCN works on fixed-scope or retainer basis. Success-only arrangements are not offered because outreach and call support require dedicated time regardless of outcome.

Before you contact 100 partners — bring BRCN on the ground first.

A short intro call is enough to know whether the product, route and timing are realistic. If there’s a fit, the next step is a defined scope — not open-ended advice. The first fit call is free.

Start with context

Serious B2B requests only. No free partner lists, free introductions or commission-only market development.

Short is enough. BRCN reviews fit before proposing any paid scope. No free partner lists or unpaid market development.

--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; } }