/* =========================================================
   Brain Computing — Workshop Executive AI landing page
   Design tokens ported from the Claude Design system
   (brain-computing-design-system-acbb5914...)
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=Inter:wght@400;500;600;700;800&display=swap');

:root{
	/* Brand */
	--bcw-purple-50:#f3eefa; --bcw-purple-500:#5c2d91; --bcw-purple-700:#3c1d5e; --bcw-purple-800:#2a1442; --bcw-purple-900:#1a0c2a;
	--bcw-orange-50:#fef0e9; --bcw-orange-300:#f5854f; --bcw-orange-500:#f05a28; --bcw-orange-600:#d2491c;

	--bcw-ink:#14101c; --bcw-ink-soft:#1f1830; --bcw-slate:#6c6580; --bcw-mist:#a8a2b8; --bcw-line:#e7e3ef; --bcw-cloud:#f5f3fa; --bcw-white:#fff;

	--bcw-brand: var(--bcw-purple-500);
	--bcw-accent: var(--bcw-orange-500);
	--bcw-accent-soft: var(--bcw-orange-50);

	--bcw-text-strong: var(--bcw-ink);
	--bcw-text-muted: var(--bcw-slate);

	--bcw-surface-page: var(--bcw-white);
	--bcw-surface-alt: var(--bcw-cloud);
	--bcw-border-subtle: var(--bcw-line);

	--bcw-font-display: "Space Grotesk", "Inter", sans-serif;
	--bcw-font-body: "Inter", system-ui, sans-serif;
	--bcw-font-mono: "Space Grotesk", "Inter", sans-serif;

	--bcw-container: 1240px;
	--bcw-container-narrow: 840px;

	--bcw-radius-sm: 10px;
	--bcw-radius-md: 16px;
	--bcw-radius-lg: 24px;
	--bcw-radius-xl: 32px;
	--bcw-radius-pill: 999px;

	--bcw-gradient-brand: linear-gradient(90deg, var(--bcw-brand) 0%, var(--bcw-accent) 100%);
	--bcw-ease-out: cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes bcwRise{ from{opacity:0;transform:translateY(26px);} to{opacity:1;transform:translateY(0);} }
@keyframes bcwFloat{ 0%,100%{transform:translateY(0);} 50%{transform:translateY(-12px);} }

*, *::before, *::after{ box-sizing:border-box; }

.bcw-body{ margin:0; background:var(--bcw-ink); font-family:var(--bcw-font-body); color:var(--bcw-text-strong); -webkit-font-smoothing:antialiased; }
.bcw-page{ position:relative; overflow:hidden; }
html{ scroll-behavior:smooth; }
.bcw-page a{ color:var(--bcw-accent); text-decoration:none; }
.bcw-page h1,.bcw-page h2,.bcw-page h3,.bcw-page h4{ font-family:var(--bcw-font-display); margin:0; }

.bcw-container{ max-width:var(--bcw-container); margin:0 auto; padding:0 24px; }
.bcw-container-narrow{ max-width:var(--bcw-container-narrow); margin:0 auto; padding:0 24px; }

.bcw-reveal{ opacity:0; transform:translateY(30px) scale(.985); transition:opacity .8s var(--bcw-ease-out), transform .8s var(--bcw-ease-out); }
.bcw-reveal.bcw-in{ opacity:1; transform:none; }

/* ---------- Buttons ---------- */
.bcw-btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; font-family:var(--bcw-font-body); font-weight:700; border-radius:var(--bcw-radius-pill); padding:14px 26px; border:1px solid transparent; cursor:pointer; transition:transform .2s var(--bcw-ease-out), box-shadow .2s ease; }
.bcw-btn:hover{ transform:translateY(-1px); }
.bcw-btn-primary{ background:var(--bcw-gradient-brand); color:#fff !important; box-shadow:0 12px 30px rgba(240,90,40,.3); }
.bcw-btn-lg{ padding:16px 30px; font-size:1.0625rem; }
.bcw-btn-sm{ padding:9px 18px; font-size:.875rem; }

/* ---------- Eyebrow ---------- */
.bcw-eyebrow{ font-family:var(--bcw-font-display); font-size:.8125rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--bcw-brand); }
/* Must come after .bcw-eyebrow (equal specificity) so it always wins on dark sections. */
.bcw-eyebrow-light{ color:var(--bcw-accent); }
/* For eyebrows sitting on a purple gradient band (Demo, Perché BC) — not dark ink. */
.bcw-eyebrow-on-purple{ color:rgba(255,255,255,.7); }

.bcw-h2{ font-weight:700; font-size:clamp(1.5rem,3.4vw,2rem); line-height:1.2; letter-spacing:-.02em; color:var(--bcw-text-strong); margin-top:16px !important; }
.bcw-h3{ font-weight:800; font-size:clamp(1.5rem,2.6vw,2rem); line-height:1.2; color:var(--bcw-text-strong); margin:0 0 14px; }
/* Must come after .bcw-h2/.bcw-h3 (equal specificity) so it always wins when combined with either. */
.bcw-h2-light{ color:#fff; }
.bcw-lead{ margin-top:16px; font-size:1.0625rem; line-height:1.6; color:var(--bcw-text-muted); max-width:560px; }
.bcw-lead-light{ color:rgba(255,255,255,.72); }
.bcw-section-head{ max-width:680px; margin-bottom:48px; }

/* ---------- Layout helpers ---------- */
.bcw-section{ position:relative; padding:100px 0; background:var(--bcw-surface-page); }
.bcw-g4{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.bcw-2col{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.bcw-split{ display:grid; grid-template-columns:.95fr 1.05fr; gap:56px; align-items:start; }

/* ---------- Nav ---------- */
.bcw-nav{ position:fixed; top:0; left:0; right:0; z-index:80; background:#544e64; border-bottom:1px solid rgba(255,255,255,.12); }
.bcw-nav-inner{ padding:20px 24px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.bcw-brand{ font-family:var(--bcw-font-display); font-weight:800; font-size:1.1rem; color:#fff !important; letter-spacing:-.01em; display:flex; align-items:center; }
.bcw-brand-logo{ height:28px; display:block; }
.bcw-nav-links{ display:flex; align-items:center; gap:32px; }
.bcw-nav-links > a:not(.bcw-btn){ color:rgba(255,255,255,.82) !important; font-size:1rem; font-weight:600; }

/* ---------- V5 narrative intro (hero + problem sections) ---------- */
.bcw-v5{ font-family:'Inter', var(--bcw-font-body); }
.bcw-v5 h1, .bcw-v5 h2, .bcw-v5 h3{ font-family:'Space Grotesk','Inter',sans-serif; font-weight:700; letter-spacing:-.02em; margin:0; }

.bcw-v5-eyebrow{ font-family:'Space Grotesk','Inter',sans-serif; font-weight:600; font-size:.78125rem; letter-spacing:.14em; text-transform:uppercase; color:var(--bcw-brand); display:block; margin-bottom:18px; }

.bcw-v5-hero{ padding:132px 0 64px; background:var(--bcw-white); }
.bcw-v5-hero-title{ font-size:clamp(2rem,5vw,3.125rem); line-height:1.2; max-width:820px; color:var(--bcw-text-strong); margin:18px 0 0; }
.bcw-v5-mark{ color:var(--bcw-orange-600); }
.bcw-v5-hero-sub{ margin-top:26px; font-size:1.1875rem; color:var(--bcw-text-muted); max-width:620px; }
.bcw-v5-hero-cta{ margin-top:36px; }

.bcw-v5-section{ padding:96px 0; background:var(--bcw-white); }
#workshop{ padding-bottom:0; }
.bcw-v5-section-tint{ background:var(--bcw-cloud); }
.bcw-v5-media-row{ display:grid; grid-template-columns:1.15fr .85fr; gap:56px; align-items:stretch; }
.bcw-v5-media-img{ width:100%; border-radius:20px; overflow:hidden; min-height:320px; }
.bcw-v5-media-img img{ width:100%; height:100%; object-fit:cover; display:block; }
.bcw-v5-hero .bcw-v5-media-row{ align-items:center; }
.bcw-v5-hero .bcw-v5-media-img{ width:100%; max-width:420px; aspect-ratio:3/4; min-height:0; margin:0 auto; border-radius:0; overflow:visible; }
.bcw-v5-hero .bcw-v5-media-img img{ object-fit:contain; object-position:top center; }
.bcw-v5-media-row--reverse{ grid-template-columns:.85fr 1.15fr; }
@media (max-width:900px){
	.bcw-v5-media-row{ grid-template-columns:1fr; }
	.bcw-v5-media-img{ order:-1; aspect-ratio:16/9; min-height:0; margin-bottom:8px; }
	.bcw-v5-hero .bcw-v5-media-img{ width:100%; max-width:260px; aspect-ratio:3/4; margin:0 auto 8px; }
}

.bcw-v5-statement-card{ border:1.5px solid var(--bcw-brand); border-radius:20px; padding:40px 36px; }
.bcw-v5-statement-card h2{ font-size:clamp(1.375rem,3vw,1.75rem); line-height:1.2; color:var(--bcw-purple-700); }
.bcw-v5-statement-card p{ margin-top:16px; font-size:1.03125rem; color:var(--bcw-text-muted); }

.bcw-v5-pullband{ background:linear-gradient(155deg, var(--bcw-brand), var(--bcw-purple-700)); color:#fff; padding:88px 0; text-align:center; }
.bcw-v5-pullband .bcw-container{ max-width:820px; }
.bcw-v5-pullband-lead{ font-size:.9375rem; text-transform:uppercase; letter-spacing:.12em; color:rgba(255,255,255,.65); font-family:'Space Grotesk','Inter',sans-serif; font-weight:600; margin:0; }
.bcw-v5-pullband h2{ color:#fff; font-size:clamp(1.625rem,4.2vw,2.5rem); line-height:1.2; margin-top:18px; }
.bcw-v5-pullband h2 em{ font-style:normal; color:var(--bcw-accent); }
.bcw-v5-pullband h2 .hl{ color:var(--bcw-accent); }

.bcw-v5-problem-title{ font-size:clamp(1.5rem,3.4vw,2.125rem); line-height:1.2; color:var(--bcw-text-strong); }
.bcw-v5-problem-title .hl{ color:var(--bcw-accent); }
.bcw-v5-problem-text{ margin-top:20px; font-size:1.0625rem; color:var(--bcw-text-muted); max-width:760px; }
.bcw-v5-problem-text strong{ color:var(--bcw-text-strong); }

.bcw-v5-gap-chart{ display:flex; align-items:flex-end; align-self:center; gap:40px; flex-wrap:wrap; }
.bcw-v5-gap-chart svg{ width:100%; max-width:520px; height:auto; }
.bcw-v5-gap-legend{ display:flex; flex-direction:column; gap:14px; font-size:.90625rem; color:var(--bcw-text-muted); min-width:200px; }
.bcw-v5-gap-legend .item{ display:flex; align-items:center; gap:10px; }
.bcw-v5-gap-legend .dot{ width:11px; height:11px; border-radius:50%; flex:none; }
.bcw-v5-gap-legend .dot--orange{ background:var(--bcw-accent); }
.bcw-v5-gap-legend .dot--grey{ background:var(--bcw-mist); }

.bcw-v5-intro{ font-size:1.0625rem; color:var(--bcw-text-muted); max-width:720px; margin-top:20px; }
.bcw-v5-cost-list{ margin-top:32px; display:flex; flex-direction:column; max-width:760px; }
.bcw-v5-cost-item{ display:flex; gap:16px; padding:20px 0; border-bottom:1px solid var(--bcw-border-subtle); }
.bcw-v5-cost-item:first-child{ padding-top:0; }
.bcw-v5-cost-item p{ font-size:1rem; color:var(--bcw-text-strong); font-weight:500; margin:0; }
.bcw-v5-cost-mark{ width:26px; height:26px; border-radius:7px; flex:none; background:var(--bcw-accent-soft); color:var(--bcw-orange-600); display:flex; align-items:center; justify-content:center; font-family:'Space Grotesk','Inter',sans-serif; font-weight:700; font-size:.8125rem; margin-top:2px; }
.bcw-v5-cost-close{ margin-top:36px; padding:26px 30px; border-radius:16px; background:var(--bcw-ink); color:#fff; font-size:1.03125rem; font-weight:500; }
.bcw-v5-cost-close b{ color:var(--bcw-accent); }

.bcw-v5-why-title{ font-size:clamp(1.5rem,3.4vw,2rem); line-height:1.2; max-width:700px; color:var(--bcw-text-strong); }
.bcw-v5-why-not{ margin-top:32px; display:flex; flex-direction:column; gap:14px; max-width:680px; }
.bcw-v5-why-not .row{ display:flex; gap:14px; align-items:flex-start; font-size:1rem; color:var(--bcw-mist); }
.bcw-v5-why-not .row svg{ width:18px; height:18px; color:var(--bcw-brand); flex:none; margin-top:3px; }
.bcw-v5-why-not .row span{ text-decoration:line-through; text-decoration-color:var(--bcw-brand); text-decoration-thickness:1.5px; }
.bcw-v5-why-reveal{ margin-top:36px; font-size:clamp(1.3125rem,2.8vw,1.6875rem); font-family:'Space Grotesk','Inter',sans-serif; font-weight:700; color:var(--bcw-orange-600); max-width:680px; line-height:1.35; }
.bcw-v5-why-body{ margin-top:24px; font-size:1.0625rem; color:var(--bcw-text-muted); max-width:700px; }
.bcw-v5-why-final{ margin-top:20px; font-size:1.0625rem; color:var(--bcw-text-strong); font-weight:600; max-width:700px; }

/* ---------- Il valore del workshop ---------- */
.bcw-v5-value-grid{ display:grid; grid-template-columns:1.05fr .95fr; gap:48px; align-items:start; margin-top:36px; }
.bcw-v5-value-list{ display:flex; flex-direction:column; margin:0; padding:0; list-style:none; }
.bcw-v5-value-item{ display:flex; gap:14px; padding:16px 0; border-bottom:1px solid var(--bcw-border-subtle); }
.bcw-v5-value-item:first-child{ padding-top:0; }
.bcw-v5-value-item svg{ width:20px; height:20px; color:var(--bcw-brand); flex:none; margin-top:2px; }
.bcw-v5-value-item p{ font-size:.96875rem; color:var(--bcw-text-strong); font-weight:500; margin:0; }
.bcw-v5-onsite-card{ border:1.5px solid var(--bcw-brand); border-radius:20px; padding:32px 30px; display:flex; flex-direction:column; }
.bcw-v5-onsite-card h3{ font-size:1.25rem; margin-top:10px; color:var(--bcw-purple-700); }
.bcw-v5-onsite-card p{ margin-top:12px; font-size:.9375rem; color:var(--bcw-text-muted); flex:1; }
.bcw-v5-onsite-card .bcw-btn{ margin-top:22px; width:100%; justify-content:center; }
@media (max-width:860px){ .bcw-v5-value-grid{ grid-template-columns:1fr; } }

/* ---------- Programma modules ---------- */
.bcw-v5-module{ display:grid; grid-template-columns:110px 1fr; gap:36px; padding:52px 0; border-top:1px solid var(--bcw-border-subtle); }
.bcw-v5-module:last-child{ border-bottom:1px solid var(--bcw-border-subtle); }
.bcw-v5-module-num{ font-family:var(--bcw-font-display); font-weight:700; font-size:3.25rem; line-height:1; color:var(--bcw-brand); }
.bcw-v5-module-num small{ display:block; margin-top:8px; font-family:var(--bcw-font-display); font-size:.6875rem; letter-spacing:.1em; color:var(--bcw-mist); text-transform:uppercase; }
.bcw-v5-module h3{ font-size:clamp(1.25rem,2.4vw,1.5625rem); margin-bottom:12px; }
.bcw-v5-module-desc{ color:var(--bcw-text-muted); font-size:.96875rem; max-width:640px; margin:0; }

.bcw-v5-tools-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:26px; }
.bcw-v5-tool-card{ border:1px solid var(--bcw-border-subtle); border-radius:14px; padding:18px; background:var(--bcw-white); }
.bcw-v5-tool-card h4{ font-size:.9375rem; margin:0; }
.bcw-v5-tool-card p{ font-size:.84375rem; color:var(--bcw-text-muted); margin:6px 0 0; }
.bcw-v5-tool-mark{ width:34px; height:34px; border-radius:9px; display:flex; align-items:center; justify-content:center; background:var(--bcw-purple-50); color:var(--bcw-brand); font-family:var(--bcw-font-display); font-weight:700; font-size:.8125rem; margin-bottom:12px; }
.bcw-v5-tool-mark-logo{ background:var(--bcw-white); border:1px solid var(--bcw-border-subtle); overflow:hidden; }
.bcw-v5-tool-mark-logo img{ width:22px; height:22px; object-fit:contain; }

.bcw-v5-aiact-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:14px; margin-top:26px; }
.bcw-v5-aiact-item{ padding:20px; border-radius:14px; background:var(--bcw-cloud); border:1px solid var(--bcw-border-subtle); }
.bcw-v5-aiact-item h4{ font-size:.90625rem; display:flex; gap:9px; align-items:center; margin:0; }
.bcw-v5-aiact-item h4 svg{ color:var(--bcw-brand); flex:none; }
.bcw-v5-aiact-item p{ font-size:.84375rem; color:var(--bcw-text-muted); margin:7px 0 0; }
.bcw-v5-aiact-callout{ margin-top:18px; padding:16px 20px; border-radius:14px; background:var(--bcw-ink); color:#fff; font-size:.875rem; font-weight:500; display:flex; gap:10px; align-items:flex-start; }
.bcw-v5-aiact-callout svg{ color:var(--bcw-accent); flex:none; margin-top:2px; }

.bcw-v5-agents-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:26px; }
.bcw-v5-agent-card{ padding:20px; border-radius:14px; background:var(--bcw-white); border:1px solid var(--bcw-border-subtle); }
.bcw-v5-agent-card h4{ font-size:.90625rem; margin:0; }
.bcw-v5-agent-card p{ font-size:.8125rem; color:var(--bcw-text-muted); margin:6px 0 0; }
.bcw-v5-agent-icon{ width:32px; height:32px; border-radius:9px; background:var(--bcw-accent-soft); color:var(--bcw-orange-600); display:flex; align-items:center; justify-content:center; margin-bottom:12px; }

@media (max-width:700px){ .bcw-section, .bcw-v5-section{ padding:64px 0; } .bcw-v5-module{ grid-template-columns:1fr; gap:16px; } .bcw-v5-tools-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:600px){ .bcw-v5-aiact-grid{ grid-template-columns:1fr; } }
@media (max-width:460px){ .bcw-v5-tools-grid, .bcw-v5-agents-grid{ grid-template-columns:1fr; } }

/* ---------- Demo (purple gradient band) ---------- */
.bcw-v5-demo-band{ background:linear-gradient(155deg, var(--bcw-brand), var(--bcw-purple-700)); color:#fff; padding:88px 0; }
.bcw-v5-demo-grid{ display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:36px; }
.bcw-v5-demo-item{ display:flex; align-items:center; gap:14px; padding:16px 18px; border-radius:12px; background:rgba(255,255,255,.08); }
.bcw-v5-demo-item p{ font-size:.875rem; font-weight:500; margin:0; color:#fff; }
.bcw-v5-demo-dot{ width:28px; height:28px; border-radius:50%; flex:none; background:rgba(255,255,255,.14); color:var(--bcw-accent); display:flex; align-items:center; justify-content:center; }
.bcw-v5-demo-note{ margin-top:24px; font-size:.84375rem; color:rgba(255,255,255,.7); display:flex; gap:8px; align-items:center; }
.bcw-v5-demo-note svg{ color:var(--bcw-accent); flex:none; }
@media (max-width:700px){ .bcw-v5-demo-grid{ grid-template-columns:1fr; } }

/* ---------- Audience / outcomes ---------- */
.bcw-check-list{ margin:26px 0 0; padding:0; list-style:none; display:flex; flex-direction:column; gap:14px; }
.bcw-check-list li{ display:flex; gap:12px; align-items:flex-start; font-size:1rem; color:var(--bcw-text-strong); font-weight:500; }
.bcw-check-list li svg{ flex:none; margin-top:2px; color:var(--bcw-brand); }

/* ---------- Perché BC / stats ---------- */
.bcw-v5-stats-band{ background:linear-gradient(155deg, var(--bcw-purple-700), var(--bcw-ink)); color:#fff; padding:80px 0; }
.bcw-stat{ border-top:1px solid rgba(255,255,255,.18); padding-top:18px; }
.bcw-stat-value{ font-family:var(--bcw-font-display); font-size:clamp(1.625rem,3.4vw,2.25rem); font-weight:700; color:#fff; line-height:1; }
.bcw-stat-value span{ color:var(--bcw-accent); }
.bcw-stat-label{ margin-top:6px; font-size:.8125rem; color:rgba(255,255,255,.7); }

/* ---------- FAQ ---------- */
.bcw-faq-head{ text-align:center; margin-bottom:44px; }
.bcw-faq-item{ border-bottom:1px solid var(--bcw-border-subtle); }
.bcw-faq-question{ width:100%; text-align:left; background:none; border:none; cursor:pointer; padding:24px 4px; display:flex; align-items:center; justify-content:space-between; gap:20px; font-size:1.0625rem; font-weight:700; color:var(--bcw-text-strong); font-family:var(--bcw-font-body); }
.bcw-faq-plus{ width:28px; height:28px; border-radius:50%; flex:none; border:1.5px solid var(--bcw-brand); position:relative; transition:transform .25s var(--bcw-ease-out), background .25s ease, border-color .25s ease; }
.bcw-faq-plus::before, .bcw-faq-plus::after{ content:""; position:absolute; background:var(--bcw-brand); top:50%; left:50%; }
.bcw-faq-plus::before{ width:11px; height:1.8px; transform:translate(-50%,-50%); }
.bcw-faq-plus::after{ width:1.8px; height:11px; transform:translate(-50%,-50%); }
.bcw-faq-answer{ max-height:0; overflow:hidden; transition:max-height .32s var(--bcw-ease-out); }
.bcw-faq-answer p{ padding:0 4px 24px; margin:0; font-size:.96875rem; color:var(--bcw-text-muted); line-height:1.6; }
.bcw-faq-item.is-open .bcw-faq-plus{ transform:rotate(180deg); background:var(--bcw-brand); border-color:var(--bcw-brand); }
.bcw-faq-item.is-open .bcw-faq-plus::before, .bcw-faq-item.is-open .bcw-faq-plus::after{ background:#fff; }
.bcw-faq-item.is-open .bcw-faq-plus::after{ opacity:0; }

/* ---------- Urgenza + Final CTA (v5) ---------- */
.bcw-v5-urgency-band{ position:relative; background:linear-gradient(155deg, var(--bcw-ink), #241f2e); color:#fff; overflow:hidden; }
.bcw-v5-urgency-band::before{ content:""; position:absolute; inset:0; pointer-events:none; background:radial-gradient(600px 400px at 88% 15%, rgba(240,90,40,.22), transparent 65%); }
.bcw-v5-urgency-band .bcw-container{ position:relative; z-index:1; }
.bcw-v5-urgency-row{ display:grid; grid-template-columns:1.3fr .7fr; gap:44px; align-items:center; }
.bcw-v5-urgency-text{ margin-top:14px; color:rgba(255,255,255,.68); font-size:.9375rem; max-width:480px; }
.bcw-v5-seats-card{ background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); border-radius:18px; padding:26px; text-align:center; }
.bcw-v5-seats-value{ font-family:var(--bcw-font-display); font-size:2.875rem; font-weight:700; color:var(--bcw-accent); line-height:1; }
.bcw-v5-seats-note{ margin-top:6px; font-size:.75rem; letter-spacing:.06em; text-transform:uppercase; color:rgba(255,255,255,.65); font-family:var(--bcw-font-display); }
.bcw-v5-seats-bar{ margin-top:16px; height:6px; border-radius:100px; background:rgba(255,255,255,.12); overflow:hidden; }
.bcw-v5-seats-bar-fill{ height:100%; width:78%; background:linear-gradient(90deg, var(--bcw-accent), var(--bcw-brand)); border-radius:100px; }

.bcw-v5-final-cta{ text-align:center; padding:100px 0 60px; background:linear-gradient(180deg, #fff, var(--bcw-cloud)); }
.bcw-v5-final-cta h2{ font-size:clamp(1.625rem,4vw,2.25rem); line-height:1.2; max-width:640px; margin:0 auto; }
.bcw-v5-final-cta p{ margin-top:18px; color:var(--bcw-text-muted); font-size:1.03125rem; max-width:520px; margin-left:auto; margin-right:auto; }
.bcw-v5-final-cta .bcw-btn{ margin-top:32px; }

/* ---------- Registrazione / form ---------- */
.bcw-v5-register-points{ margin-top:28px; }
.bcw-v5-req{ margin-top:22px; font-size:.875rem; color:var(--bcw-mist); }
.bcw-v5-req b{ color:var(--bcw-text-strong); }

.bcw-form-card{ background:#fff; border:1.5px solid var(--bcw-brand); border-radius:20px; padding:34px; color:var(--bcw-text-strong); }
.bcw-form-row{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.bcw-field{ margin-bottom:14px; }
.bcw-field label{ display:block; font-size:.78125rem; font-weight:600; color:var(--bcw-text-muted); margin-bottom:7px; }
.bcw-field label span{ font-weight:400; color:var(--bcw-mist); }
.bcw-field-check{ display:flex; align-items:flex-start; gap:10px; margin:16px 0 20px; }

/* Contact Form 7 styling to match the reference's bordered light form card */
.bcw-form-card .wpcf7-form p{ margin:0; }
.bcw-form-card .wpcf7-form-control{ font-family:var(--bcw-font-body); font-size:.90625rem; padding:13px 14px; border:1px solid var(--bcw-border-subtle); border-radius:10px; background:var(--bcw-cloud); color:var(--bcw-text-strong); width:100%; transition:border-color .2s ease, background .2s ease; }
.bcw-form-card .wpcf7-form-control:focus{ outline:none; border-color:var(--bcw-brand); background:#fff; }
.bcw-form-card .wpcf7-acceptance label{ font-size:.8125rem; color:var(--bcw-text-muted); font-weight:400; line-height:1.5; }
.bcw-form-card .wpcf7-acceptance label a{ color:var(--bcw-brand); text-decoration:underline; }
.bcw-form-card .wpcf7-acceptance input{ width:16px; height:16px; margin-top:3px; accent-color:var(--bcw-brand); flex:none; }
.bcw-form-card .wpcf7-submit{ display:inline-flex; align-items:center; justify-content:center; width:100%; font-family:var(--bcw-font-body); font-weight:700; border-radius:var(--bcw-radius-pill); padding:16px 26px; border:none; cursor:pointer; background:var(--bcw-gradient-brand); color:#fff; font-size:1.0625rem; box-shadow:0 12px 30px rgba(240,90,40,.3); }
.bcw-form-card .wpcf7-response-output{ margin-top:14px !important; border-radius:var(--bcw-radius-sm); font-size:.875rem; }
.bcw-form-card .wpcf7-not-valid-tip{ font-size:.8125rem; margin-top:4px; }
.bcw-form-card .wpcf7-spinner{ display:block; margin:10px auto 0; }

/* ---------- Footer ---------- */
.bcw-footer{ padding:52px 0; text-align:center; background:var(--bcw-ink); border-top:1px solid rgba(255,255,255,.08); }
.bcw-footer-brand{ display:inline-block; margin-bottom:16px; opacity:.9; }
.bcw-footer-logo{ height:18px; margin:0 auto; }
.bcw-footer-text{ margin:0; font-family:var(--bcw-font-mono); font-size:.75rem; color:rgba(255,255,255,.5); letter-spacing:.06em; }

/* ---------- Sticky CTA ---------- */
.bcw-sticky-cta{ position:fixed; left:0; right:0; bottom:0; z-index:90; transform:translateY(120%); transition:transform .4s var(--bcw-ease-out); background:rgba(20,12,42,.9); backdrop-filter:blur(16px); border-top:1px solid rgba(255,255,255,.1); padding:14px 0; }
.bcw-sticky-cta.is-visible{ transform:translateY(0); }
.bcw-sticky-inner{ display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.bcw-sticky-inner span{ font-size:.9375rem; font-weight:600; color:#fff; }

/* =========================================================
   Responsive
   ========================================================= */
@media (max-width:960px){
	.bcw-2col, .bcw-split, .bcw-v5-urgency-row{ grid-template-columns:1fr !important; }
	.bcw-g4{ grid-template-columns:1fr 1fr !important; }
	.bcw-nav-links{ gap:16px; }
	.bcw-nav-links > a:not(.bcw-btn){ display:none; }
}
@media (max-width:600px){
	.bcw-g4{ grid-template-columns:1fr !important; }
	.bcw-form-row{ grid-template-columns:1fr !important; }
}
@media (prefers-reduced-motion: reduce){
	*{ animation-duration:.001ms !important; }
	html{ scroll-behavior:auto; }
	.bcw-reveal{ opacity:1 !important; transform:none !important; }
}
