/* =========================================================
   PFC BRAND & DESIGN SYSTEM — /pfcbranding reference page
   Everything is scoped under .pfc-brand so it never leaks
   into other pages. This is the master visual reference.
   ========================================================= */

.pfc-brand { --b-blue:#1D4594; --b-blue-deep:#132E63; --b-blue-bright:#4A7BD9; --b-ok:#3DDC84; --b-warn:#F2B23C; }
.pfc-brand * { box-sizing: border-box; }

/* ---- Section shell ---- */
.pfc-brand .b-sec {
	position: relative;
	overflow: hidden;
	padding: clamp(48px, 7vw, 104px) 24px;
}
.pfc-brand .b-inner { max-width: 1240px; margin: 0 auto; position: relative; z-index: 2; }
.pfc-brand .b-eyebrow {
	font-family: 'Bebas Neue', sans-serif;
	letter-spacing: 0.32em;
	text-transform: uppercase;
	font-size: 15px;
	color: var(--b-blue-bright);
	margin: 0 0 14px;
}

/* =========================================================
   TYPE SCALE  (Inter, scaled down; H1 < home hero)
   ========================================================= */
.pfc-brand .b-h1 { font-family:'Inter',sans-serif; font-weight:900; font-size:clamp(34px,5vw,64px); line-height:1.04; letter-spacing:-0.03em; margin:0 0 .25em; }
.pfc-brand .b-h2 { font-family:'Inter',sans-serif; font-weight:800; font-size:clamp(28px,3.6vw,44px); line-height:1.1;  letter-spacing:-0.02em; margin:0 0 .3em; }
.pfc-brand .b-h3 { font-family:'Inter',sans-serif; font-weight:700; font-size:clamp(22px,2.4vw,30px); line-height:1.2;  letter-spacing:-0.01em; margin:0 0 .35em; }
.pfc-brand .b-h4 { font-family:'Inter',sans-serif; font-weight:700; font-size:clamp(18px,1.8vw,22px); line-height:1.3;  margin:0 0 .4em; }
.pfc-brand .b-body { font-family:'Inter',sans-serif; font-weight:400; font-size:17px; line-height:1.7; margin:0 0 1em; max-width:62ch; }
.pfc-brand .b-small { font-size:14px; line-height:1.6; }
/* Heading-as-link: keep the heading color (white on dark), underline on hover */
.pfc-brand .b-h1 a, .pfc-brand .b-h2 a, .pfc-brand .b-h3 a, .pfc-brand .b-h4 a { color:inherit; text-decoration:none; }
.pfc-brand .b-h1 a:hover, .pfc-brand .b-h2 a:hover, .pfc-brand .b-h3 a:hover, .pfc-brand .b-h4 a:hover { text-decoration:underline; text-underline-offset:4px; }

/* Text-color context */
.pfc-brand .b-dark  { color:#e8ecf3; }
.pfc-brand .b-dark  .b-h1, .pfc-brand .b-dark  .b-h2, .pfc-brand .b-dark  .b-h3, .pfc-brand .b-dark  .b-h4 { color:#ffffff; }
.pfc-brand .b-dark  .b-muted { color:#94a0b4; }
.pfc-brand .b-light { color:#2d333c; }
.pfc-brand .b-light .b-h1, .pfc-brand .b-light .b-h2, .pfc-brand .b-light .b-h3, .pfc-brand .b-light .b-h4 { color:#0f1830; }
.pfc-brand .b-light .b-muted { color:#5d6577; }
.pfc-brand .b-accent { background:linear-gradient(74deg,#ffffff 0%, var(--b-blue-bright) 50%, var(--b-blue) 100%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.pfc-brand .b-light .b-accent { background:linear-gradient(74deg, var(--b-blue) 0%, var(--b-blue-bright) 100%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }

/* Text color swatches (show light + dark on every bg) */
.pfc-brand .b-textchips { display:flex; gap:14px; flex-wrap:wrap; margin-top:8px; }
.pfc-brand .b-chip { display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:600; padding:7px 12px; border-radius:8px; border:1px solid rgba(125,140,165,.3); }
.pfc-brand .b-chip .dot { width:14px; height:14px; border-radius:4px; }
.pfc-brand .b-chip .dot.is-lighttext { background:#e8ecf3; }
.pfc-brand .b-chip .dot.is-darktext  { background:#0f1830; }
.pfc-brand .b-sample-light { color:#e8ecf3; }
.pfc-brand .b-sample-dark  { color:#0f1830; }

/* =========================================================
   FOUR BACKGROUNDS (complement each other in any order)
   ========================================================= */

/* 1 — Midnight Grid */
.pfc-brand .b-bg-1 { background:#0a0d14; }
.pfc-brand .b-bg-1::before { content:''; position:absolute; inset:0; background-image:radial-gradient(rgba(74,123,217,.16) 1px, transparent 1px); background-size:26px 26px; -webkit-mask-image:radial-gradient(ellipse at 72% 18%, #000 22%, transparent 72%); mask-image:radial-gradient(ellipse at 72% 18%, #000 22%, transparent 72%); z-index:0; }
.pfc-brand .b-bg-1::after { content:''; position:absolute; top:-25%; right:-12%; width:62%; height:90%; background:radial-gradient(circle, rgba(29,69,148,.42), transparent 62%); filter:blur(46px); z-index:0; }

/* 2 — Atmosphere Light (sky gradient + faint radar rings, aviation HUD feel) */
.pfc-brand .b-bg-2 { background:linear-gradient(160deg,#f4f7fc 0%, #e6edf6 58%, #d9e3f1 100%); }
.pfc-brand .b-bg-2::before { content:''; position:absolute; inset:0; background-image:repeating-radial-gradient(circle at 86% 20%, transparent 0 32px, rgba(29,69,148,.07) 32px 33px); z-index:0; }
.pfc-brand .b-bg-2::after { content:''; position:absolute; inset:0; background:radial-gradient(120% 85% at 50% -25%, rgba(74,123,217,.16), transparent 60%); z-index:0; }

/* 3 — Brand Gradient (topographic) */
.pfc-brand .b-bg-3 { background:linear-gradient(135deg,#1D4594 0%, #122a5f 55%, #0a1838 100%); }
.pfc-brand .b-bg-3::before { content:''; position:absolute; inset:0; background-image:repeating-radial-gradient(circle at 82% 28%, transparent 0 40px, rgba(255,255,255,.06) 40px 41px); z-index:0; }
.pfc-brand .b-bg-3::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg, transparent, rgba(5,12,28,.45)); z-index:0; }

/* 4 — Carbon Steel */
.pfc-brand .b-bg-4 { background:#171b22; }
.pfc-brand .b-bg-4::before { content:''; position:absolute; inset:0; background-image:repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 1px, transparent 1px 8px); z-index:0; }
.pfc-brand .b-bg-4::after { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(90deg, transparent, var(--b-blue-bright), transparent); z-index:1; }

/* =========================================================
   CARD / BLOCK STYLES  (all four work on all backgrounds)
   ========================================================= */
.pfc-brand .b-cards { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:8px; }
.pfc-brand .b-card { border-radius:16px; padding:24px; min-height:190px; transition:transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease, border-color .35s ease; }
.pfc-brand .b-card:hover { transform:translateY(-5px); }
.pfc-brand .b-card .b-h4 { margin-top:0; }
.pfc-brand .b-card p { font-size:14px; line-height:1.6; margin:0; }

/* 1 Glass */
.pfc-brand .b-card-glass { background:rgba(255,255,255,.08); -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); border:1px solid rgba(255,255,255,.2); }
.pfc-brand .b-light .b-card-glass { background:rgba(15,28,60,.05); border-color:rgba(15,28,60,.14); }
/* 2 Solid elevated */
.pfc-brand .b-card-solid { background:#0f1726; border:1px solid rgba(255,255,255,.09); box-shadow:0 18px 44px rgba(0,0,0,.45); color:#e8ecf3; }
.pfc-brand .b-card-solid .b-h4 { color:#fff; }
.pfc-brand .b-card-solid p { color:#94a0b4; }
/* 3 Inset / recessed instrument-bezel panel */
.pfc-brand .b-card-outline { background:#0a0f1a; border:1px solid rgba(255,255,255,.07); box-shadow: inset 0 1px 0 rgba(255,255,255,.06), inset 0 0 34px rgba(0,0,0,.55); color:#e8ecf3; position:relative; }
.pfc-brand .b-card-outline .b-h4 { color:#fff; }
.pfc-brand .b-card-outline p { color:#94a0b4; }
.pfc-brand .b-light .b-card-outline { background:#e7edf6; border-color:rgba(15,28,60,.12); box-shadow: inset 0 1px 0 rgba(255,255,255,.85), inset 0 0 30px rgba(15,28,60,.07); color:#2d333c; }
.pfc-brand .b-light .b-card-outline .b-h4 { color:#0f1830; }
.pfc-brand .b-light .b-card-outline p { color:#5d6577; }
/* 4 Gradient accent */
.pfc-brand .b-card-gradient { position:relative; background:#0f1726; border:1px solid rgba(255,255,255,.08); box-shadow:0 0 0 1px rgba(29,69,148,.25), 0 18px 50px rgba(0,0,0,.4); color:#e8ecf3; overflow:hidden; }
.pfc-brand .b-card-gradient::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg, var(--b-blue), var(--b-blue-bright)); }
.pfc-brand .b-card-gradient::after { content:''; position:absolute; bottom:-40%; right:-20%; width:70%; height:80%; background:radial-gradient(circle, rgba(29,69,148,.4), transparent 65%); filter:blur(30px); }
.pfc-brand .b-card-gradient .b-h4 { color:#fff; position:relative; z-index:1; }
.pfc-brand .b-card-gradient p { color:#a9b6cc; position:relative; z-index:1; }

/* =========================================================
   BUTTONS
   ========================================================= */
.pfc-brand .b-btnrow { display:flex; flex-wrap:wrap; gap:14px; align-items:center; }
.pfc-brand .b-btn { display:inline-flex; align-items:center; gap:9px; padding:13px 26px; border-radius:8px; font-family:'Inter',sans-serif; font-weight:600; font-size:15px; letter-spacing:.01em; text-decoration:none; border:1px solid transparent; cursor:pointer; transition:transform .25s ease, box-shadow .25s ease, background .25s ease, border-color .25s ease; }
.pfc-brand .b-btn-primary { background:linear-gradient(74deg, var(--b-blue), var(--b-blue-deep)); color:#fff; box-shadow:0 8px 26px rgba(29,69,148,.45); }
.pfc-brand .b-btn-primary:hover { transform:translateY(-2px); box-shadow:0 12px 34px rgba(29,69,148,.55); }
.pfc-brand .b-btn-solid { background:#2d333c; color:#fff; }
.pfc-brand .b-light .b-btn-solid { background:#0f1830; }
.pfc-brand .b-btn-solid:hover { transform:translateY(-2px); }
.pfc-brand .b-btn-ghost { background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.22); color:inherit; -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); }
.pfc-brand .b-light .b-btn-ghost { background:rgba(15,28,60,.04); border-color:rgba(15,28,60,.2); }
.pfc-brand .b-btn-ghost:hover { border-color:var(--b-blue-bright); background:rgba(29,69,148,.16); }
.pfc-brand .b-btn-link { background:none; padding:13px 4px; color:var(--b-blue-bright); }
.pfc-brand .b-btn-link::after { content:'→'; transition:transform .25s ease; }
.pfc-brand .b-btn-link:hover::after { transform:translateX(4px); }

/* =========================================================
   BADGES / TAGS / LINKS
   ========================================================= */
.pfc-brand .b-badge { display:inline-flex; align-items:center; gap:7px; padding:5px 13px; border-radius:100px; font-size:12px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }
.pfc-brand .b-badge-blue { background:#1c3768; color:#bcd2f5; border:1px solid #2a4d8f; }
.pfc-brand .b-badge-outline { background:#232b39; color:#cfd6e4; border:1px solid #3a4456; }
.pfc-brand .b-badge-status { background:#163a25; color:#5fe39a; border:1px solid #2c6b46; }
.pfc-brand .b-badge-status .dot { width:7px; height:7px; border-radius:50%; background:var(--b-ok); box-shadow:0 0 8px var(--b-ok); }
.pfc-brand .b-link { color:var(--b-blue-bright); text-decoration:none; border-bottom:1px solid rgba(74,123,217,.4); transition:border-color .2s ease, color .2s ease; }
.pfc-brand .b-link:hover { border-color:currentColor; color:#6f97e6; }

/* =========================================================
   LISTS / BLOCKQUOTE
   ========================================================= */
.pfc-brand .b-check { list-style:none; margin:0; padding:0; }
.pfc-brand .b-check li { position:relative; padding-left:32px; margin:0 0 12px; }
.pfc-brand .b-check li::before { content:''; position:absolute; left:0; top:1px; width:20px; height:20px; border-radius:6px; background:rgba(29,69,148,.2); border:1px solid var(--b-blue); }
.pfc-brand .b-check li::after { content:''; position:absolute; left:6px; top:6px; width:8px; height:5px; border-left:2px solid var(--b-blue-bright); border-bottom:2px solid var(--b-blue-bright); transform:rotate(-45deg); }
.pfc-brand .b-quote { margin:0; border-left:3px solid var(--b-blue); padding:6px 0 6px 22px; font-size:19px; line-height:1.5; font-style:italic; }
.pfc-brand .b-quote cite { display:block; margin-top:10px; font-size:14px; font-style:normal; opacity:.7; }

/* =========================================================
   FORM FIELDS
   ========================================================= */
.pfc-brand .b-form { display:grid; gap:16px; max-width:520px; }
.pfc-brand .b-field label { display:block; font-size:13px; font-weight:600; letter-spacing:.03em; margin-bottom:7px; opacity:.85; }
.pfc-brand .b-field input, .pfc-brand .b-field textarea, .pfc-brand .b-field select { width:100%; padding:12px 14px; border-radius:8px; background:#111a2a; border:1px solid rgba(255,255,255,.16); color:inherit; font-family:'Inter',sans-serif; font-size:15px; transition:border-color .2s ease, box-shadow .2s ease; }
.pfc-brand .b-light .b-field input, .pfc-brand .b-light .b-field textarea, .pfc-brand .b-light .b-field select { background:#ffffff; border-color:rgba(15,28,60,.18); color:#0f1830; }
.pfc-brand .b-field input::placeholder, .pfc-brand .b-field textarea::placeholder { color:rgba(148,160,180,.7); }
.pfc-brand .b-field input:focus, .pfc-brand .b-field textarea:focus, .pfc-brand .b-field select:focus { outline:none; border-color:var(--b-blue-bright); box-shadow:0 0 0 3px rgba(74,123,217,.25); }
.pfc-brand .b-checkrow { display:flex; gap:18px; flex-wrap:wrap; align-items:center; }
.pfc-brand .b-checkrow label { display:inline-flex; align-items:center; gap:8px; font-size:14px; margin:0; opacity:1; }
.pfc-brand .b-checkrow input { width:auto; accent-color:var(--b-blue); }

/* =========================================================
   TABLE
   ========================================================= */
.pfc-brand .b-table { width:100%; border-collapse:collapse; font-size:15px; }
.pfc-brand .b-table th, .pfc-brand .b-table td { padding:13px 16px; text-align:left; border-bottom:1px solid rgba(125,140,165,.18); }
.pfc-brand .b-table thead th { font-weight:700; color:var(--b-blue-bright); text-transform:uppercase; letter-spacing:.05em; font-size:12px; }
.pfc-brand .b-dark .b-table tbody tr:hover { background:rgba(255,255,255,.03); }
.pfc-brand .b-light .b-table tbody tr:hover { background:rgba(15,28,60,.03); }

/* =========================================================
   ALERTS / NOTICES
   ========================================================= */
.pfc-brand .b-alert { display:flex; gap:12px; align-items:flex-start; padding:14px 18px; border-radius:10px; border:1px solid; font-size:15px; margin-bottom:14px; }
.pfc-brand .b-alert strong { font-weight:700; }
.pfc-brand .b-alert-info { background:#dce8fb; border-color:#a7c4ec; color:#1b3a73; }
.pfc-brand .b-alert-ok   { background:#d8f3e2; border-color:#8ad2ab; color:#15623c; }
.pfc-brand .b-alert-warn { background:#fceccc; border-color:#e6c879; color:#6f5212; }

/* =========================================================
   SWATCHES (color + type reference)
   ========================================================= */
.pfc-brand .b-swatches { display:grid; grid-template-columns:repeat(auto-fit,minmax(120px,1fr)); gap:14px; }
.pfc-brand .b-swatch { border-radius:12px; overflow:hidden; border:1px solid rgba(125,140,165,.2); }
.pfc-brand .b-swatch .chip { height:74px; }
.pfc-brand .b-swatch .meta { padding:10px 12px; font-size:12px; background:rgba(0,0,0,.25); }
.pfc-brand .b-swatch .meta b { display:block; font-size:13px; }

/* Utility */
.pfc-brand .b-reveal { opacity:0; transform:translateY(26px); transition:opacity .7s cubic-bezier(.2,.8,.2,1), transform .7s cubic-bezier(.2,.8,.2,1); }
.pfc-brand .b-reveal.is-visible { opacity:1; transform:none; }
.pfc-brand .b-row { display:flex; flex-wrap:wrap; gap:40px; }
.pfc-brand .b-col { flex:1 1 280px; min-width:0; }
.pfc-brand .b-divider { height:1px; background:linear-gradient(90deg, transparent, rgba(125,140,165,.4), transparent); border:0; margin:36px 0; }
.pfc-brand .b-mt { margin-top:36px; }

/* Responsive */
@media (max-width:900px){
	.pfc-brand .b-cards { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:560px){
	.pfc-brand .b-cards { grid-template-columns:1fr; }
}

/* =========================================================
   PRODUCT PAGE MOCKUP
   ========================================================= */
.pfc-brand .b-breadcrumb { font-size:13px; color:#8794a8; margin-bottom:26px; display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.pfc-brand .b-breadcrumb a { color:#9bbcf2; text-decoration:none; }
.pfc-brand .b-breadcrumb .sep { opacity:.45; }
.pfc-brand .b-product { display:grid; grid-template-columns:1.05fr 1fr; gap:48px; align-items:start; }
.pfc-brand .b-gallery-main { border:1px solid rgba(255,255,255,.09); border-radius:16px; overflow:hidden; background:radial-gradient(circle at 50% 40%, #1a2436 0%, #0a0f1a 100%); display:grid; place-items:center; min-height:340px; }
.pfc-brand .b-gallery-main img { display:block; max-width:92%; max-height:92%; filter:drop-shadow(0 16px 30px rgba(0,0,0,.55)); }
.pfc-brand .b-gallery-thumbs { display:flex; gap:12px; margin-top:14px; flex-wrap:wrap; }
.pfc-brand .b-gallery-thumbs img { width:72px; height:72px; object-fit:cover; border-radius:10px; border:1px solid rgba(255,255,255,.12); opacity:.7; transition:opacity .2s, border-color .2s; }
.pfc-brand .b-gallery-thumbs img:hover, .pfc-brand .b-gallery-thumbs img.is-active { opacity:1; border-color:var(--b-blue-bright); }
.pfc-brand .b-prod-title { font-family:'Inter',sans-serif; font-weight:800; font-size:clamp(28px,3.4vw,40px); margin:10px 0 8px; color:#fff; letter-spacing:-.02em; }
.pfc-brand .b-prod-sub { color:#94a0b4; margin:0 0 18px; }
.pfc-brand .b-prod-actions { display:flex; gap:12px; flex-wrap:wrap; margin:22px 0; align-items:center; }
.pfc-brand .b-brochure { display:inline-flex; align-items:center; gap:10px; padding:10px 16px; border:1px solid rgba(255,255,255,.14); border-radius:10px; color:#cfd6e4; text-decoration:none; font-size:14px; font-weight:600; transition:border-color .2s; }
.pfc-brand .b-brochure:hover { border-color:var(--b-blue-bright); }
.pfc-brand .b-brochure .ico { width:26px; height:26px; display:grid; place-items:center; background:#b3262b; color:#fff; border-radius:5px; font-size:9px; font-weight:800; }
.pfc-brand .b-prod-meta { border-top:1px solid rgba(255,255,255,.1); margin-top:24px; padding-top:18px; font-size:14px; color:#94a0b4; display:grid; gap:8px; }
.pfc-brand .b-prod-meta b { color:#cfd6e4; font-weight:600; }
.pfc-brand .b-prod-meta a { color:#9bbcf2; text-decoration:none; }
.pfc-brand .b-tabs { margin-top:56px; }
.pfc-brand .b-tabbar { display:flex; gap:8px; flex-wrap:wrap; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08); border-radius:14px; padding:7px; margin-bottom:28px; }
.pfc-brand .b-tab { display:inline-flex; align-items:center; justify-content:center; padding:12px 24px; border-radius:9px; font-weight:600; font-size:15px; color:#9aa6ba; cursor:pointer; transition:background .2s ease, color .2s ease, box-shadow .2s ease; }
.pfc-brand .b-tab:hover { color:#fff; background:rgba(255,255,255,.06); }
.pfc-brand .b-tab.is-active { color:#fff; background:linear-gradient(74deg,var(--b-blue),var(--b-blue-deep)); box-shadow:0 6px 18px rgba(29,69,148,.4); }
@media (max-width:560px){
	.pfc-brand .b-tabbar { flex-wrap:nowrap; overflow-x:auto; -webkit-overflow-scrolling:touch; }
	.pfc-brand .b-tab { flex:0 0 auto; }
}

/* Horizontal scroll for wide tables on small screens */
.pfc-brand .b-tablewrap { width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.pfc-brand .b-tablewrap .b-table { min-width:580px; }
.pfc-brand .b-related { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:24px; }
.pfc-brand .b-prodcard { background:#0f1726; border:1px solid rgba(255,255,255,.08); border-radius:14px; overflow:hidden; transition:transform .35s, border-color .3s, box-shadow .3s; }
.pfc-brand .b-prodcard:hover { transform:translateY(-5px); border-color:var(--b-blue); box-shadow:0 18px 44px rgba(0,0,0,.45); }
.pfc-brand .b-prodcard .img { aspect-ratio:4/3; background:radial-gradient(circle at 50% 45%, #18223a, #0a0f1a); display:grid; place-items:center; }
.pfc-brand .b-prodcard .img img { max-width:86%; max-height:86%; }
.pfc-brand .b-prodcard .pad { padding:16px 18px; }
.pfc-brand .b-prodcard h4 { margin:0 0 6px; font-size:16px; color:#fff; }
.pfc-brand .b-prodcard .price { color:#9bbcf2; font-weight:700; font-size:14px; }

/* Tab icons */
.pfc-brand .b-tab-video::before, .pfc-brand .b-tab-download::before { content:''; display:inline-block; width:15px; height:15px; margin-right:8px; vertical-align:-2px; background-color:currentColor; }
.pfc-brand .b-tab-video::before { -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E") center/contain no-repeat; }
.pfc-brand .b-tab-download::before { -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13 5v6h3l-4 5-4-5h3V5h2z'/%3E%3Cpath d='M5 18h14v2H5z'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13 5v6h3l-4 5-4-5h3V5h2z'/%3E%3Cpath d='M5 18h14v2H5z'/%3E%3C/svg%3E") center/contain no-repeat; }

/* Inline video player (video-forward product layout) */
.pfc-brand .b-videoplayer { position:relative; border-radius:16px; overflow:hidden; border:1px solid rgba(255,255,255,.09); aspect-ratio:16/9; background:#0a0f1a; cursor:pointer; }
.pfc-brand .b-videoplayer img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.9; }
.pfc-brand .b-videoplayer::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(8,11,18,.1), rgba(8,11,18,.55)); }
.pfc-brand .b-videoplayer .play { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:80px; height:80px; border-radius:50%; background:rgba(29,69,148,.94); display:grid; place-items:center; z-index:2; box-shadow:0 10px 30px rgba(0,0,0,.5), 0 0 0 8px rgba(29,69,148,.22); transition:transform .25s, box-shadow .25s; }
.pfc-brand .b-videoplayer:hover .play { transform:translate(-50%,-50%) scale(1.08); box-shadow:0 14px 38px rgba(0,0,0,.6), 0 0 0 12px rgba(29,69,148,.18); }
.pfc-brand .b-videoplayer .play::before { content:''; border-style:solid; border-width:13px 0 13px 22px; border-color:transparent transparent transparent #fff; margin-left:6px; }
.pfc-brand .b-videoplayer .vlabel { position:absolute; left:18px; bottom:16px; z-index:2; color:#fff; font-weight:600; font-size:14px; background:rgba(0,0,0,.45); padding:7px 13px; border-radius:8px; -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); }
.pfc-brand .b-product-rev { display:grid; grid-template-columns:1.15fr 1fr; gap:48px; align-items:start; }
@media (max-width:860px){ .pfc-brand .b-product-rev { grid-template-columns:1fr; } }

/* =========================================================
   POST / EVENT MOCKUP
   ========================================================= */
.pfc-brand .b-posthero { position:relative; border-radius:18px; overflow:hidden; min-height:400px; display:flex; align-items:flex-end; border:1px solid rgba(255,255,255,.09); }
.pfc-brand .b-posthero > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.pfc-brand .b-posthero::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(8,11,18,.15) 0%, rgba(8,11,18,.55) 55%, rgba(8,11,18,.94) 100%); }
.pfc-brand .b-posthero .inner { position:relative; z-index:2; padding:clamp(24px,4vw,44px); width:100%; }
.pfc-brand .b-postmeta { display:flex; gap:14px; align-items:center; flex-wrap:wrap; font-size:13px; color:#c4cedd; margin-bottom:16px; }
.pfc-brand .b-post-title { font-family:'Inter',sans-serif; font-weight:800; font-size:clamp(26px,3.6vw,46px); color:#fff; margin:0; letter-spacing:-.02em; line-height:1.08; max-width:20ch; }
.pfc-brand .b-article { max-width:760px; margin:44px auto 0; font-size:17px; line-height:1.8; color:#c5cdda; }
.pfc-brand .b-article h2 { font-size:clamp(24px,2.6vw,32px); color:#fff; margin:38px 0 14px; font-weight:800; letter-spacing:-.02em; }
.pfc-brand .b-article h3 { font-size:22px; color:#fff; margin:28px 0 10px; font-weight:700; }
.pfc-brand .b-article p { margin:0 0 18px; }
.pfc-brand .b-article .lead { font-size:20px; line-height:1.7; color:#e8ecf3; }
.pfc-brand .b-article img { width:100%; border-radius:14px; margin:26px 0; border:1px solid rgba(255,255,255,.08); }
.pfc-brand .b-article a { color:var(--b-blue-bright); }
.pfc-brand .b-article .b-quote { font-size:22px; margin:30px 0; color:#eef2f8; }
.pfc-brand .b-eventcard { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.1); border-radius:14px; overflow:hidden; margin:14px 0 30px; }
.pfc-brand .b-eventcard .cell { background:#0f1726; padding:22px; }
.pfc-brand .b-eventcard .lbl { font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--b-blue-bright); font-weight:700; margin-bottom:6px; }
.pfc-brand .b-eventcard .val { color:#fff; font-weight:600; font-size:17px; }
.pfc-brand .b-tags { display:flex; gap:10px; flex-wrap:wrap; margin:30px 0; }
.pfc-brand .b-tag { padding:6px 14px; border-radius:100px; background:#1a2331; border:1px solid rgba(255,255,255,.1); font-size:13px; color:#cfd6e4; text-decoration:none; }
.pfc-brand .b-tag:hover { border-color:var(--b-blue-bright); }
.pfc-brand .b-postfoot { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; border-top:1px solid rgba(255,255,255,.1); padding-top:24px; }
.pfc-brand .b-share { display:flex; gap:10px; align-items:center; }
.pfc-brand .b-share .s { width:40px; height:40px; border-radius:50%; border:1px solid rgba(255,255,255,.14); display:grid; place-items:center; color:#cfd6e4; font-size:13px; font-weight:700; transition:background .2s, border-color .2s; }
.pfc-brand .b-share .s:hover { background:rgba(29,69,148,.3); border-color:var(--b-blue-bright); }

@media (max-width:860px){
	.pfc-brand .b-product { grid-template-columns:1fr; }
	.pfc-brand .b-related { grid-template-columns:repeat(2,1fr); }
	.pfc-brand .b-eventcard { grid-template-columns:1fr; }
}

/* =========================================================
   MOTION (subtle, tasteful; disabled under reduced-motion below)
   ========================================================= */
/* Headline gradient shimmer */
.pfc-brand .b-accent { background-size:220% auto; animation:pfc-shimmer 7s ease-in-out infinite; }
@keyframes pfc-shimmer { 0%,100%{ background-position:0% center; } 50%{ background-position:120% center; } }
/* Gentle background texture drift */
.pfc-brand .b-bg-1::before { animation:pfc-dot-drift 28s linear infinite; }
@keyframes pfc-dot-drift { from{ background-position:0 0; } to{ background-position:26px 26px; } }
.pfc-brand .b-bg-4::before { animation:pfc-scan-drift 22s linear infinite; }
@keyframes pfc-scan-drift { from{ background-position:0 0; } to{ background-position:0 16px; } }

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
	.pfc-brand .b-reveal { opacity:1; transform:none; transition:none; }
	.pfc-brand * { animation:none !important; }
}
