/* Shared V3 identity. Component behavior and data remain owned by their existing modules. */
body.site-v3 {
  --bg:#030c1d; --bg-soft:#081830; --bg-card:rgba(7,23,47,.86);
  --bg-card-solid:#091b35; --surface-elevated:rgba(7,22,44,.94);
  --border-subtle:rgba(96,170,248,.22); --border-strong:rgba(112,186,255,.38);
  --text-main:#f1f7ff; --text-muted:#b6cbe2; --text-soft:#91adc9;
  --primary:#58baff; --primary-strong:#87d6ff; --primary-soft:rgba(24,132,255,.14);
  --secondary:#40d9ee; --secondary-soft:rgba(64,217,238,.12);
  --accent-warm:#f1ba70; --gradient-brand:linear-gradient(115deg,#1155ed,#039ecb);
  --gradient-hero:radial-gradient(ellipse at 92% 0,rgba(0,114,255,.17),transparent 48%),radial-gradient(ellipse at 0 35%,rgba(0,126,240,.12),transparent 55%);
  --container:1320px; --radius-xl:28px; --radius-lg:22px;
  background:var(--bg); color:var(--text-main); line-height:1.85;
}
html:not(.theme-dark) body.site-v3 {
  --bg:#f2f7ff; --bg-soft:#e6f0fc; --bg-card:rgba(255,255,255,.92);
  --bg-card-solid:#fff; --surface-elevated:rgba(248,252,255,.96);
  --border-subtle:rgba(24,98,184,.19); --border-strong:rgba(24,98,184,.32);
  --text-main:#112d50; --text-muted:#496580; --text-soft:#5b7491;
  --primary:#096ac0; --primary-strong:#07579d; --primary-soft:rgba(10,108,255,.09);
  --secondary:#087c94; --secondary-soft:rgba(8,124,148,.08); --accent-warm:#99601b;
  --shadow-soft:0 22px 70px #224f8614; --shadow-card:0 16px 46px #224f8614;
  --gradient-hero:radial-gradient(ellipse at 8% 5%,#a7d7ff42,transparent 55%);
}
body.site-v3::before { background:var(--gradient-hero),linear-gradient(180deg,var(--bg),var(--bg-soft)); }
body.site-v3::after { opacity:.17; background-size:58px 58px; }
body.site-v3 #techCanvasContainer,body.site-v3 .hex-tech-bg { opacity:.16; }
body.site-v3 #cursor-dot,body.site-v3 #cursor-halo { display:none; }
body.site-v3 .container { width:min(var(--container),calc(100% - 64px)); }
body.site-v3 .main-header { top:8px; width:min(1480px,calc(100% - 40px)); margin:10px auto 16px; z-index:1000; }
body.site-v3 .main-header .header-shell { width:100%; min-height:72px; padding:8px 18px; background:var(--surface-elevated); border-color:var(--border-subtle); box-shadow:0 18px 48px #00122e22; gap:12px; }
body.site-v3 .main-header .logo img { width:120px; height:auto; }
body.site-v3 .pc-nav a { color:var(--text-main); font-size:.84rem; padding-inline:10px; }
body.site-v3 .pc-nav a[aria-current=page] { color:var(--primary-strong); background:var(--primary-soft); }
body.site-v3 .header-actions > .search-form { display:none; }
body.site-v3 .header-search-link { display:grid; place-items:center; width:42px; height:42px; border:1px solid var(--border-subtle); border-radius:50%; background:var(--bg-soft); color:var(--text-main); }
body.site-v3 .page-search { max-width:650px; margin:0 auto 32px; border-radius:99px; }
body.site-v3 .page-search .search-btn { min-height:44px; }
body.site-v3 :is(.lang-switch,.theme-toggle,.mobile-menu-btn) { background:var(--bg-soft); color:var(--text-main); border-color:var(--border-subtle); box-shadow:none; }
body.site-v3 .home-header-cta { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:9px 19px; border-radius:99px; font-size:.82rem; font-weight:800; color:#fff; background:var(--gradient-brand); box-shadow:0 8px 25px #0079f02e; white-space:nowrap; }
body.site-v3 .nav-links { background:var(--bg-card-solid); border-color:var(--border-subtle); }
body.site-v3 .nav-links a { justify-content:flex-start; white-space:normal; text-align:start; }
body.site-v3 .nav-links .home-header-cta { margin-block:12px; color:white; justify-content:center; }
body.site-v3 .btn { border-radius:99px; min-height:48px; line-height:1.7; background:var(--gradient-brand); color:#fff; box-shadow:0 8px 26px #0079f029; }
body.site-v3 .btn.btn-outline { color:var(--text-main); background:var(--primary-soft); border-color:var(--border-strong); box-shadow:none; }
body.site-v3 :is(.section-header h2,.overview-copy h2,.about-page-title,.articles-header h1,.article-title,.product-hero-title,.service-hero h1,.legal-page h1,.privacy-hero h1) { line-height:1.5; text-wrap:balance; letter-spacing:normal; }
body.site-v3 :is(.about-page-title,.articles-header h1,.article-title,.product-hero-title,.service-hero h1,.legal-page h1,.privacy-hero h1) { font-size:clamp(1.85rem,3.6vw,3.1rem); }
body.site-v3 :is(.about-block,.about-card,.overview-shell,.contact-card,.article-card,.service-card,.service-summary,.service-process-step,.service-cta,.product-hero-copy,.product-content-card,.product-side-card,.studio-panel,.privacy-panel,.privacy-nav,.auth-card,.plan,.heroCard,.sideCard) { background:var(--bg-card); border:1px solid var(--border-subtle); box-shadow:var(--shadow-card); border-radius:22px; }
body.site-v3 :is(.article-card h3,.about-block .sub-title,.service-card h3,.service-summary h2,.auth-title) { color:var(--text-main); }
body.site-v3 :is(.article-card p,.about-block p,.about-block li,.service-card p,.service-lead,.product-hero-summary,.article-content,.legal-page p,.legal-updated,.auth-subtitle) { color:var(--text-muted); line-height:1.95; }
body.site-v3 :is(.about-page,.service-page,.search-page,.articles-page,.article-page,.product-showcase,.legal-page) { padding-block:clamp(28px,4vw,56px); }
body.site-v3 .about-page { max-width:1120px; margin-inline:auto; }
body.site-v3 :is(.about-block,.service-card,.article-card) { padding:clamp(20px,2.5vw,30px); }
body.site-v3 .section-header { margin-bottom:26px; }
body.site-v3 .section-header h2 { font-size:clamp(1.4rem,2.4vw,2.1rem); }
body.site-v3 .section-header p { max-width:65ch; color:var(--text-muted); }
body.site-v3 :is(.article-content,.product-details) { overflow-wrap:anywhere; }
body.site-v3 :is(.article-content,.product-details) p { margin-block:0 1em; }
body.site-v3 :is(.article-content,.product-details) h2 { font-size:clamp(1.35rem,2vw,1.8rem); line-height:1.6; margin-block:1.4em .65em; }
body.site-v3 :is(.article-content,.product-details) h3 { font-size:1.2rem; line-height:1.7; margin-block:1em .6em; }
body.site-v3 :is(.article-content,.product-details) img { height:auto; max-width:100%; border-radius:16px; }
body.site-v3 :is(.article-content,.product-details) :is(ul,ol) { padding-inline-start:24px; margin-block:16px; }
body.site-v3 :is(.article-content,.product-details) table { display:block; max-width:100%; overflow:auto; }
body.site-v3 .legal-page { max-width:960px; }
body.site-v3 .legal-page h2 { margin:32px 0 12px; font-size:1.25rem; }
body.site-v3 .legal-page a { color:var(--primary-strong); text-decoration:underline; text-underline-offset:4px; }
body.site-v3 .card,body.site-v3.dark .card { background:var(--bg-card); border:1px solid var(--border-subtle); box-shadow:var(--shadow-card); }
body.site-v3 .card h1 { margin-top:0; }
body.site-v3 .site-footer { margin-top:40px; padding-block:28px; background:var(--surface-elevated); border-top:1px solid var(--border-subtle); }
body.site-v3 .footer-inner { gap:16px 24px; flex-wrap:wrap; line-height:2; }
body.site-v3 .footer-legal { display:flex; flex-wrap:wrap; justify-content:center; gap:4px 10px; }
body.site-v3 :focus-visible,body.brief-v3 :focus-visible { outline:3px solid var(--primary,#58baff); outline-offset:4px; }
body.site-v3 input:is([type=checkbox],[type=radio]) { width:18px!important; min-height:18px; height:18px; padding:0!important; flex-shrink:0; accent-color:var(--primary); }
/* V3 was inheriting old !important grids, stretching the laptop and breaking mobile columns. */
body.site-v3.home-v3 .hero-grid { grid-template-columns:minmax(0,.92fr) minmax(0,1.18fr)!important; align-items:center; }
body.site-v3.home-v3 .mp-device-laptop .slider { min-height:0!important; height:auto!important; aspect-ratio:16/10; }
body.site-v3.home-v3 .products-grid { grid-template-columns:repeat(3,minmax(0,1fr))!important; }
body.site-v3.home-v3 .product-card { min-height:0; }
body.site-v3.home-v3 .mp-home-hero { position:relative; }
body.site-v3.home-v3 .mp-hero-footer { justify-content:flex-start; flex-wrap:wrap; gap:16px; }
body.site-v3.home-v3 .mp-floating-project { max-width:36%; inset-inline-start:auto; inset-inline-end:0; }
body.site-v3.home-v3 .mp-floating-project strong { white-space:normal; overflow-wrap:anywhere; line-height:1.7; }
body.site-v3.home-v3 .hero-title { font-size:clamp(2rem,3.2vw,3.3rem); }
body.site-v3.home-v3 .hero-description { font-size:.95rem; }
body.site-v3.home-v3 .hero-copy .eyebrow { flex-wrap:wrap; background:var(--primary-soft); color:var(--text-muted); }
body.site-v3.home-v3 .mp-section-heading h2 { color:var(--text-main); }
body.site-v3.home-v3 .mp-section-heading p { color:var(--text-muted); }
body.site-v3.home-v3 :is(.home-service-card strong,.mp-section-link) { color:var(--primary-strong); }
body.site-v3.home-v3 .home-service-card p { font-size:.84rem; display:block; overflow:visible; line-height:1.85; }
body.site-v3.home-v3 .home-service-card { min-width:0; }
body.site-v3.home-v3 .mp-tools-list { flex-wrap:wrap; }
body.site-v3.home-v3 .mp-showcase-thumb { max-width:100%; }
body.site-v3.home-v3 .mp-showcase-thumb span { overflow-wrap:anywhere; }
body.site-v3.home-v3 .mp-more-work { color:var(--text-main); background:var(--primary-soft); border-color:var(--border-strong); }
html:not(.theme-dark) body.home-v3 :is(.product-card,.mp-showcase-thumb) { background:#fff; border-color:var(--border-subtle); }
html:not(.theme-dark) body.home-v3 .mp-portfolio-meta strong { color:var(--text-main); }
html:not(.theme-dark) body.home-v3 :is(.mp-portfolio-meta span,.mp-portfolio-meta small,.mp-showcase-thumb,.mp-showcase-thumb.active) { color:var(--primary-strong); }
html:not(.theme-dark) body.home-v3 .mp-showcase-thumb.active { background:#dceeff; }
html:not(.theme-dark) body.home-v3 .home-service-card .home-service-icon { color:#096ac0; background:#dcebff; }
html:not(.theme-dark) body.home-v3 .metric-pill strong { color:#99601b; }
html:not(.theme-dark) body.home-v3 .hero-title span { background-image:linear-gradient(110deg,#087b94,#095bb4 65%,#98601d); }
html:not(.theme-dark) body.home-v3 .metric-pill i { color:#086abc; }
body.site-v3.page-hosting { --text:var(--text-main); --muted:var(--text-muted); --muted2:var(--text-soft); --stroke:var(--border-subtle); --card:var(--bg-card); --card2:var(--bg-soft); --primary2:var(--primary-strong); }
body.site-v3.page-hosting .main-header .container { margin:0; }
body.site-v3.page-hosting .primary { background:var(--gradient-brand); color:#fff; }
body.site-v3.page-hosting :is(.dash,.per,.miniPill,.commission,.small,.hint,.ribbon) { color:var(--text-muted); }
body.site-v3.page-hosting .ribbon { background:#0b63cf; color:#fff; }
body.site-v3.page-hosting .plan.popular { border-color:var(--primary); }
body.site-v3.page-hosting .site-footer .container { margin-block:0; }
/* Standalone GreenCash case study: keep its content and interactions, share the site identity. */
body.case-study-v3 { --g1:#8bddff; --g2:#3eaeff; --g3:#168af0; --g4:#1265bf; --g5:#0b2d59; --gold:#f1ba70; --bg:#030c1d; --card:rgba(7,23,47,.9); --card2:#0c2343; --border:rgba(96,170,248,.24); --text:#f1f7ff; --muted:#b6cbe2; --muted2:#91adc9; background:radial-gradient(ellipse at 90% 0,#006dff26,transparent 55%),var(--bg); line-height:1.85; }
body.case-study-v3.light { --bg:#f2f7ff; --card:rgba(255,255,255,.92); --card2:#e6f0fc; --border:rgba(24,98,184,.2); --text:#112d50; --muted:#496580; --muted2:#5b7491; }
body.case-study-v3 .btn { border-radius:99px; min-height:46px; }
body.case-study-v3 .btn.primary,body.case-study-v3.light .btn.primary { background:linear-gradient(115deg,#1155ed,#039ecb); color:#fff; border-color:#438dee; }
body.case-study-v3 :is(.pill,.chip) { color:var(--text); border-color:var(--border); background:var(--card2); }
body.case-study-v3 .hero h1 { font-size:clamp(2rem,4vw,3.6rem); line-height:1.5; }
body.case-study-v3 .nav { background:var(--card); border-color:var(--border); backdrop-filter:blur(22px); }
body.case-study-v3 :is(.toolbtn,.lang) { min-height:44px; color:var(--text); border-color:var(--border); }
body.case-study-v3 .lang { padding:10px 12px; border:1px solid var(--border); border-radius:14px; background:var(--card2); font:inherit; font-size:13px; font-weight:800; cursor:pointer; }
body.case-study-v3 .logo { background:linear-gradient(135deg,#62d3ff,#1265ef); border-color:var(--border); }
body.case-study-v3.light .grad { background-image:linear-gradient(90deg,#087b94,#095bb4); }
body.case-study-v3 :focus-visible { outline:3px solid #58baff; outline-offset:3px; }
body.case-study-v3 .nav-actions { min-width:0; flex-wrap:wrap; }
html:not(.theme-dark) body.brief-v3 .trust-row { color:var(--muted); }
/* Focused request flow shares the palette while retaining its stepper and country controls. */
body.brief-v3 { --deep:#030c1d; --deep-2:#081830; --card:#091b35; --ink:#f1f7ff; --muted:#b6cbe2; --line:rgba(96,170,248,.22); --line-strong:rgba(112,186,255,.38); --aqua:#58c7ff; --aqua-strong:#1265ef; --aqua-soft:rgba(24,132,255,.14); background:radial-gradient(ellipse at 90% 0,#006dff24,transparent 52%),linear-gradient(160deg,#030c1d,#081830); }
body.brief-v3 .ambient-one { background:#037cff; }
body.brief-v3 .brief-header { min-height:86px; }
body.brief-v3 .page-shell { max-width:1240px; gap:clamp(28px,5vw,80px); padding-block:46px; }
body.brief-v3 .intro h1 { font-size:clamp(1.9rem,3.25vw,3rem); line-height:1.6; text-wrap:balance; }
body.brief-v3 .intro h1 span { background:linear-gradient(110deg,#04d9f5,#2e9dff 60%,#f1ba70); background-clip:text; -webkit-background-clip:text; color:transparent; }
body.brief-v3 .flow-card { background:linear-gradient(145deg,#0b2240f5,#06162ef5); border-radius:24px; box-shadow:0 25px 80px #0005; }
body.brief-v3 .question-head h2 { font-size:clamp(1.15rem,1.7vw,1.4rem); }
body.brief-v3 .question-kicker { font-size:.8rem; }
body.brief-v3 .btn-primary { background:linear-gradient(115deg,#1265ef,#049dc5); color:white; border-radius:99px; }
body.brief-v3 .phone-country select { padding-right:40px; }
body.brief-v3 .whatsapp-consent input { accent-color:#58c7ff; }
body.brief-v3 .brief-footer { line-height:2; padding-bottom:24px; }
body.brief-v3 .brief-tools { display:flex; align-items:center; gap:16px; }
body.brief-v3 .theme-toggle { display:grid; place-items:center; width:44px; height:44px; border-radius:50%; border:1px solid var(--line); background:var(--aqua-soft); color:var(--ink); font-size:24px; cursor:pointer; }
body.brief-v3 .btn-primary:hover:not(:disabled) { background:linear-gradient(115deg,#0751cf,#0784ad); }
body.brief-v3 .option-card:has(input:checked),body.brief-v3 .check-card:has(input:checked) { border-color:var(--aqua); }
body.brief-v3 .option-card:has(input:focus-visible),body.brief-v3 .check-card:has(input:focus-visible) { outline:3px solid var(--aqua); outline-offset:3px; }
html:not(.theme-dark) body.brief-v3 { color-scheme:light; --ink:#112d50; --muted:#496580; --line:rgba(24,98,184,.19); --line-strong:rgba(24,98,184,.32); --aqua:#096ac0; --aqua-strong:#07579d; --success:#168149; --danger:#b62626; background:radial-gradient(ellipse at 90% 0,#a7d7ff42,transparent 52%),#f2f7ff; }
html:not(.theme-dark) body.brief-v3 .flow-card { background:#fffffff2; box-shadow:0 22px 70px #224f8614; }
html:not(.theme-dark) body.brief-v3 :is(.input,.select,.textarea),html:not(.theme-dark) body.brief-v3 :is(.input,.select,.textarea):focus { color:var(--ink); background:#f1f6fe; }
html:not(.theme-dark) body.brief-v3 .select option { color:var(--ink); background:#fff; }
html:not(.theme-dark) body.brief-v3 :is(.field,.field label,.field-label,.option-card,.check-card,.budget-line strong,.btn-secondary,.whatsapp-note) { color:var(--ink)!important; }
html:not(.theme-dark) body.brief-v3 .btn-secondary { background:#e7f0fb; }
html:not(.theme-dark) body.brief-v3 :is(.option-card,.check-card,.success-summary) { background:#f3f7ff; }
html:not(.theme-dark) body.brief-v3 .intro h1 span { color:#0863b2; background:none; }
html:not(.theme-dark) body.brief-v3 .progress-track { background:#dce8f7; }
@media(max-width:1200px) {
  body.site-v3 .pc-nav a { font-size:.77rem; padding-inline:7px; }
  body.site-v3 .home-header-cta { padding-inline:13px; font-size:.76rem; }
  body.site-v3 .main-header .logo img { width:105px; }
}
@media(max-width:1100px) {
  body.site-v3 .pc-nav,body.site-v3 .header-actions>.home-header-cta { display:none; }
  body.site-v3 .mobile-menu-btn { display:inline-flex; align-items:center; justify-content:center; }
  body.site-v3.home-v3 .home-services-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  body.site-v3 .mobile-backdrop.active { display:block; position:fixed; inset:0; z-index:990; background:#020a1e80; backdrop-filter:blur(6px); }
  body.site-v3 .nav-links { display:flex; position:fixed; top:92px; inset-inline:16px; z-index:1010; flex-direction:column; gap:8px; padding:18px; max-height:calc(100dvh - 110px); overflow:auto; border:1px solid var(--border-subtle); border-radius:22px; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-12px); }
  body.site-v3 .nav-links.active { opacity:1; visibility:visible; pointer-events:auto; transform:none; }
  body.site-v3 .nav-links a { min-height:44px; width:100%; }
  body.site-v3 .mobile-menu-tools { display:flex; align-items:center; justify-content:space-between; gap:12px; }
  body.site-v3.nav-open { overflow:hidden; }
  body.site-v3.nav-open .mpai-root:not(.is-open) { visibility:hidden; }
}
@media(max-width:980px) {
  body.site-v3.home-v3 .hero-grid { grid-template-columns:1fr!important; }
  body.site-v3 .main-header { width:calc(100% - 24px); }
  body.site-v3 .main-header .header-shell { border-radius:22px; min-height:64px; }
  body.site-v3.home-v3 .hero-title { font-size:clamp(2rem,5vw,3rem); }
}
@media(max-width:680px) {
  body.site-v3 .container { width:calc(100% - 32px); }
  body.site-v3 .main-header { min-height:0; margin-bottom:10px; }
  body.site-v3 .main-header .header-shell { padding:8px 11px; gap:8px; }
  body.site-v3 .main-header .logo img { width:94px; }
  body.site-v3 .main-header .lang-switch { display:none; }
  body.site-v3 .nav-links .lang-switch { display:inline-flex; }
  body.site-v3 :is(.about-page-title,.articles-header h1,.article-title,.product-hero-title,.service-hero h1,.legal-page h1,.privacy-hero h1) { font-size:1.85rem; }
  body.site-v3 :is(.section-header,.mp-section-heading) { gap:14px; }
  body.site-v3 .footer-inner { flex-direction:column; text-align:center; }
  body.site-v3.home-v3 .hero-title { font-size:clamp(1.9rem,7.6vw,2.6rem); }
  body.site-v3.home-v3 .hero-description { font-size:.9rem; }
  body.site-v3.home-v3 .hero-actions .btn { min-height:48px; font-size:.8rem; }
  body.site-v3.home-v3 .hero-metrics .metric-pill:nth-child(3) { display:flex!important; }
  body.site-v3.home-v3 .metric-pill span { font-size:.7rem; }
  body.site-v3.home-v3 .mp-hero-showcase { min-height:260px; }
  body.site-v3.home-v3 .mp-floating-project { top:8%; width:38%; max-width:38%; }
  body.site-v3.home-v3 .mp-floating-project strong { font-size:.65rem; }
  body.site-v3.home-v3 .mp-showcase-thumbs { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  body.site-v3.home-v3 .mp-showcase-thumb { flex-direction:row; min-height:48px; font-size:.73rem; gap:8px; padding:6px 9px; }
  body.site-v3.home-v3 .home-services-grid { grid-template-columns:1fr; }
  body.site-v3.home-v3 .home-service-card { min-height:0; padding:22px; }
  body.site-v3.home-v3 .home-service-card h3 { font-size:1.05rem; }
  body.site-v3.home-v3 .home-service-card strong { font-size:.82rem; }
  body.site-v3.home-v3 .products-grid { grid-template-columns:1fr!important; gap:18px; }
  body.site-v3.home-v3 .mp-portfolio-media { aspect-ratio:16/10; }
  body.site-v3.home-v3 .mp-portfolio-meta { padding:16px 18px; gap:6px; }
  body.site-v3.home-v3 .mp-portfolio-meta strong { font-size:1.05rem; }
  body.site-v3.home-v3 :is(.mp-portfolio-meta span,.mp-portfolio-meta small) { font-size:.8rem; }
  body.site-v3.home-v3 .products-section .filter-btn { min-height:44px; font-size:.8rem; }
  body.brief-v3 .page-shell { padding-block:28px; gap:28px; }
  body.brief-v3 .intro h1 { font-size:1.9rem; }
  body.brief-v3 .flow-card { padding:24px 20px; }
}
@media(prefers-reduced-motion:reduce) {
  body.site-v3 *,body.site-v3 *::before,body.site-v3 *::after { scroll-behavior:auto!important; animation:none!important; transition:none!important; }
  body.site-v3 .reveal-ready { opacity:1; transform:none; }
}
