/* ==========================================================================
   Bevel & Mitre Gears (1719) — editorial section layer below the hero.
   Loaded after product.css + product-v2.css (CG_BEVEL_PAGE_ID in functions.php).
   Elementor hooks (Advanced → CSS Classes): .cgbv-s (section), .cgbv-center,
   .cgbv-statement, .cgbv-hl, .cgbv-lede(--sm), .cgbv-promises, .cgbv-vsrow/.cgbv-vs
   (--bevel/--mitre), .cgbv-art, .cgbv-figs(--proof)/.cgbv-fig, .cgbv-steps/.cgbv-step,
   .cgbv-chips, .cgbv-photo, .cgbv-machines, .cgbv-pills(--sm), .cgbv-tiles/.cgbv-tile,
   .cgbv-also, .cgbv-quote, .cgbv-pfrs/.cgbv-pfr, .cgbv-cta, .cgbv-faq.
   ========================================================================== */

body.cg-bevel-page :is(.cgbv-center, .cgbv-vs, .cgbv-fig, .cgbv-step, .cgbv-tile, .cgbv-pfr) { gap: 0 !important; }
body.cg-bevel-page .elementor-element.cgbv-s { --padding-top: 150px !important; --padding-bottom: 150px !important; }
body.cg-bevel-page .elementor-element.cgbv-s--tight { --padding-top: 120px !important; --padding-bottom: 120px !important; }

/* Centered heading blocks */
body.cg-bevel-page .elementor-element.cgbv-center { align-items: center !important; text-align: center; max-width: 900px; margin: 0 auto; }
.cgbv-center .cgpd-eyebrow .elementor-heading-title { justify-content: center; }
.cgbv-center .cgpd-title .elementor-heading-title { text-align: center; }

/* 2 · Editorial statement */
.cgbv-statement { margin-top: 26px !important; }
.cgbv-statement .elementor-heading-title { font: 500 clamp(30px, 3.4vw, 50px)/1.22 var(--pd-head) !important; letter-spacing: -.025em !important; color: var(--pd-ink) !important; text-align: center; text-wrap: balance; }
.cgbv-hl { color: var(--pd-accent); background: linear-gradient(transparent 70%, rgba(242, 165, 65, .35) 70%); padding: 0 .08em; }
.cgbv-lede { margin-top: 30px !important; }
.cgbv-lede p { margin: 0 auto; max-width: 640px; font-size: 19px; line-height: 1.75; color: var(--pd-body); text-align: center; }
.cgbv-lede--sm p { font-size: 17.5px; }
.cgbv-lede a { color: var(--pd-accent); font-weight: 600; }
.cgbv-promises { margin-top: 44px !important; }
.cgbv-promises .elementor-icon-list-items { display: flex !important; flex-wrap: wrap; justify-content: center; gap: 12px 36px; }
.cgbv-promises .elementor-icon-list-item { margin: 0 !important; padding: 0 !important; }
.cgbv-promises .elementor-icon-list-item::after { display: none !important; }
.cgbv-promises .elementor-icon-list-icon { display: grid !important; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: var(--pd-accent) !important; }
.cgbv-promises .elementor-icon-list-icon svg { width: 11px !important; fill: #fff !important; }
.cgbv-promises .elementor-icon-list-text { padding-left: 12px !important; font: 600 15.5px/1.3 var(--pd-head) !important; color: var(--pd-ink) !important; }

/* 3 · Bevel or mitre */
.cgbv-vsrow { margin-top: 64px !important; }
.cgbv-vs {
	flex: 1 1 0;
	--padding-top: 38px !important; --padding-right: 36px !important; --padding-bottom: 36px !important; --padding-left: 36px !important;
	border: 1px solid rgba(157, 184, 255, .2);
	border-radius: 24px;
	background: rgba(12, 26, 46, .6) !important;
	transition: transform .5s var(--pd-ease), border-color .4s ease !important;
}
.cgbv-vs:hover { transform: translateY(-6px); border-color: rgba(157, 184, 255, .5); }
.cgbv-vs--mitre { border-color: rgba(242, 165, 65, .35); }
.cgbv-vs__tag .elementor-heading-title { font: 600 11px/1 var(--pd-mono) !important; letter-spacing: .2em !important; text-transform: uppercase; color: var(--pd-ice) !important; }
.cgbv-vs--mitre .cgbv-vs__tag .elementor-heading-title { color: #F2A541 !important; }
.cgbv-vs__title { margin-top: 16px !important; }
.cgbv-vs__title .elementor-heading-title { font: 600 clamp(30px, 2.8vw, 40px)/1.05 var(--pd-head) !important; letter-spacing: -.02em !important; color: #fff !important; }
.cgbv-vs__text { margin-top: 14px !important; }
.cgbv-vs__text p { margin: 0; font-size: 16px; line-height: 1.7; color: #B4C1D4; }
.cgbv-vs__pts { margin-top: 22px !important; }
.cgbv-vs__pts .elementor-icon-list-item { margin: 0 !important; padding: 10px 0 !important; border-top: 1px solid rgba(157, 184, 255, .14); }
.cgbv-vs__pts .elementor-icon-list-item::after { display: none !important; }
.cgbv-vs__pts .elementor-icon-list-icon svg { width: 12px !important; fill: var(--pd-ice) !important; }
.cgbv-vs--mitre .cgbv-vs__pts .elementor-icon-list-icon svg { fill: #F2A541 !important; }
.cgbv-vs__pts .elementor-icon-list-text { padding-left: 10px !important; font-size: 15px !important; color: #DCE7FF !important; }
.cgbv-art { flex: 0 0 38% !important; width: 38% !important; margin: 0 !important; }
.cgbv-art img { display: block; width: 100% !important; height: auto !important; }

/* 4 & 11 · Giant figures */
.cgbv-figs { margin-top: 72px !important; }
body.cg-bevel-page .elementor-element.cgbv-figs { grid-template-rows: none !important; grid-auto-rows: auto !important; border-top: 1px solid var(--pd-line); border-bottom: 1px solid var(--pd-line); }
.cgbv-fig { --padding-top: 44px !important; --padding-right: 28px !important; --padding-bottom: 40px !important; --padding-left: 28px !important; border-right: 1px solid var(--pd-line); transition: background-color .4s ease; }
.cgbv-fig:last-child { border-right: 0; }
.cgbv-fig:hover { background: #F7F9FD !important; }
.cgbv-fig__v .elementor-heading-title { font: 600 clamp(48px, 5vw, 76px)/1 var(--pd-head) !important; letter-spacing: -.04em !important; color: var(--pd-ink) !important; }
.cgbv-fig__v .elementor-heading-title::after { content: ""; display: block; width: 32px; height: 3px; margin-top: 20px; border-radius: 2px; background: #F2A541; transition: width .6s var(--pd-ease); }
.cgbv-fig:hover .cgbv-fig__v .elementor-heading-title::after { width: 64px; }
.cgbv-fig__l { margin-top: 16px !important; }
.cgbv-fig__l .elementor-heading-title { font-size: 15px !important; line-height: 1.55 !important; color: var(--pd-body) !important; max-width: 220px; }
body.cg-bevel-page .cgbv-s .cgpd-link { margin-top: 44px !important; }
.cgbv-figs--proof .cgbv-fig__v .elementor-heading-title { color: var(--pd-accent) !important; }

/* 5 · Steps */
.cgbv-steps { margin-top: 64px !important; position: relative; }
body.cg-bevel-page .elementor-element.cgbv-steps { grid-template-rows: none !important; grid-auto-rows: auto !important; }
.cgbv-step {
	position: relative;
	--padding-top: 36px !important; --padding-right: 30px !important; --padding-bottom: 32px !important; --padding-left: 30px !important;
	border: 1px solid var(--pd-line);
	border-radius: 22px;
	background: #fff !important;
	transition: transform .5s var(--pd-ease), box-shadow .5s ease, border-color .4s ease !important;
}
.cgbv-step:hover { transform: translateY(-6px); border-color: rgba(53, 99, 224, .3); box-shadow: 0 36px 60px -44px rgba(12, 24, 37, .5); }
/* connector arrow to the next step (desktop) */
@media (min-width: 1025px) {
	.cgbv-step:not(:last-child)::after {
		content: "";
		position: absolute;
		top: 58px;
		right: -19px;
		z-index: 2;
		width: 14px;
		height: 14px;
		border-radius: 50%;
		background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M8 5l5 5-5 5' fill='none' stroke='%231B3FA0' stroke-width='2.4'/%3E%3C/svg%3E") center / 12px no-repeat;
		box-shadow: 0 0 0 1px var(--pd-line);
	}
}
.cgbv-step__icon { margin: 0 !important; }
.cgbv-step__icon .elementor-icon { display: grid !important; place-items: center; width: 56px; height: 56px; padding: 0 !important; border-radius: 16px; font-size: 20px !important; background: var(--pd-navy) !important; color: var(--pd-ice) !important; transition: background-color .4s ease, transform .6s var(--pd-ease); }
.cgbv-step__icon svg { width: 20px; height: 20px; fill: currentColor !important; }
.cgbv-step:hover .cgbv-step__icon .elementor-icon { background: var(--pd-accent) !important; color: #fff !important; transform: rotate(-10deg); }
.cgbv-step__title { margin-top: 26px !important; }
.cgbv-step__title .elementor-heading-title { font: 600 21px/1.25 var(--pd-head) !important; color: var(--pd-ink) !important; }
.cgbv-step__text { margin-top: 10px !important; }
.cgbv-step__text p { margin: 0; font-size: 15px; line-height: 1.65; color: var(--pd-body); }
.cgbv-chips { margin-top: 22px !important; padding-top: 18px; border-top: 1px dashed var(--pd-line); }
.cgbv-chips .elementor-icon-list-items { display: flex !important; flex-wrap: wrap; gap: 6px; }
.cgbv-chips .elementor-icon-list-item { margin: 0 !important; padding: 6px 10px !important; border-radius: 8px; background: #F2F5FB; }
.cgbv-chips .elementor-icon-list-item::after, .cgbv-chips .elementor-icon-list-icon { display: none !important; }
.cgbv-chips .elementor-icon-list-text { padding: 0 !important; font-size: 13px !important; color: var(--pd-ink) !important; }

/* 6 & 9 · Photo splits */
.cgbv-photo { margin: 0 !important; }
.cgbv-photo img { display: block; width: 100% !important; height: 520px !important; object-fit: cover; border-radius: 26px !important; box-shadow: 0 50px 90px -50px rgba(7, 17, 31, .8); transition: transform 1.2s var(--pd-ease); }
.cgbv-photo:hover img { transform: scale(1.02); }
body.cg-bevel-page .elementor-element-bx6row, body.cg-bevel-page .elementor-element-bx9row { gap: 88px !important; }
.cgbv-machines { margin-top: 32px !important; }
.cgbv-machines .elementor-icon-list-items { display: grid !important; gap: 12px; }
.cgbv-machines .elementor-icon-list-item { margin: 0 !important; padding: 18px 20px !important; border: 1px solid rgba(157, 184, 255, .2); border-radius: 14px; background: rgba(12, 26, 46, .6); transition: border-color .3s ease, transform .4s var(--pd-ease); }
.cgbv-machines .elementor-icon-list-item:hover { border-color: rgba(242, 165, 65, .6); transform: translateX(6px); }
.cgbv-machines .elementor-icon-list-item::after { display: none !important; }
.cgbv-machines .elementor-icon-list-icon svg { width: 16px !important; fill: #F2A541 !important; animation: cgv2Spin 8s linear infinite; }
.cgbv-machines .elementor-icon-list-text { padding-left: 14px !important; font: 500 15px/1.35 var(--pd-mono) !important; color: #fff !important; }

/* 7 · Pills */
.cgbv-pills { margin-top: 40px !important; }
.cgbv-pills .elementor-icon-list-items { display: flex !important; flex-wrap: wrap; justify-content: center; gap: 10px; }
.cgbv-pills .elementor-icon-list-item { margin: 0 !important; padding: 12px 18px !important; border: 1px solid rgba(27, 63, 160, .2); border-radius: 999px; background: #fff; transition: background-color .3s ease, border-color .3s ease, transform .3s var(--pd-ease); }
.cgbv-pills .elementor-icon-list-item:hover { background: var(--pd-navy); border-color: var(--pd-navy); transform: translateY(-3px); }
.cgbv-pills .elementor-icon-list-item:hover .elementor-icon-list-text { color: #fff !important; }
.cgbv-pills .elementor-icon-list-item::after { display: none !important; }
.cgbv-pills .elementor-icon-list-icon svg { width: 11px !important; fill: var(--pd-accent) !important; }
.cgbv-pills .elementor-icon-list-text { padding-left: 8px !important; font-size: 14.5px !important; font-weight: 500; color: var(--pd-ink) !important; transition: color .3s ease; }
.cgbv-pills--sm { margin-top: 0 !important; }
.cgbv-pills--sm .elementor-icon-list-items { justify-content: flex-start; }
.cgbv-pills--sm .elementor-icon-list-item { padding: 8px 14px !important; }
.cgbv-pills--sm .elementor-icon-list-icon svg { width: 6px !important; }

/* 8 · Application tiles */
.cgbv-tiles { margin-top: 64px !important; }
body.cg-bevel-page .elementor-element.cgbv-tiles { grid-template-rows: none !important; grid-auto-rows: auto !important; }
.cgbv-tile {
	align-items: flex-start;
	justify-content: space-between;
	min-height: 200px;
	--padding-top: 30px !important; --padding-right: 26px !important; --padding-bottom: 26px !important; --padding-left: 26px !important;
	border: 1px solid var(--pd-line);
	border-radius: 22px;
	background: #fff !important;
	text-decoration: none;
	transition: background-color .45s ease, transform .5s var(--pd-ease), box-shadow .5s ease !important;
}
.cgbv-tile:hover { background: var(--pd-navy) !important; transform: translateY(-6px); box-shadow: 0 36px 60px -40px rgba(7, 17, 31, .8); }
.cgbv-tile__icon { margin: 0 !important; }
.cgbv-tile__icon .elementor-icon { display: grid !important; place-items: center; width: 54px; height: 54px; padding: 0 !important; border-radius: 50%; font-size: 21px !important; background: #EEF3FD !important; color: var(--pd-accent) !important; transition: background-color .45s ease, color .45s ease; }
.cgbv-tile__icon svg { width: 21px; height: 21px; fill: currentColor !important; }
.cgbv-tile:hover .cgbv-tile__icon .elementor-icon { background: #F2A541 !important; color: var(--pd-navy) !important; }
.cgbv-tile__title .elementor-heading-title { font: 600 18px/1.3 var(--pd-head) !important; color: var(--pd-ink) !important; transition: color .45s ease; }
.cgbv-tile__title .elementor-heading-title::after { content: " \2192"; opacity: 0; transition: opacity .3s ease; }
.cgbv-tile:hover .cgbv-tile__title .elementor-heading-title { color: #fff !important; }
.cgbv-tile:hover .cgbv-tile__title .elementor-heading-title::after { opacity: 1; }
.cgbv-also { margin-top: 36px !important; }
.cgbv-also__label .elementor-heading-title { font: 500 11px/1 var(--pd-mono) !important; letter-spacing: .18em !important; text-transform: uppercase; color: var(--pd-body) !important; }
.cgbv-also .cgpd-link { margin-top: 0 !important; margin-left: auto !important; }

/* 10 · Case study */
.cgbv-quote { margin-top: 26px !important; }
.cgbv-quote .elementor-heading-title { font: 500 clamp(32px, 3.6vw, 52px)/1.18 var(--pd-head) !important; letter-spacing: -.02em !important; color: #fff !important; text-align: center; text-wrap: balance; }
.cgbv-pfrs { margin-top: 64px !important; }
body.cg-bevel-page .elementor-element.cgbv-pfrs { grid-template-rows: none !important; grid-auto-rows: auto !important; }
.cgbv-pfr { --padding-top: 30px !important; --padding-right: 28px !important; --padding-bottom: 30px !important; --padding-left: 28px !important; border-top: 2px solid rgba(157, 184, 255, .25); background: linear-gradient(180deg, rgba(157, 184, 255, .06), transparent) !important; }
.cgbv-pfr:last-child { border-top-color: #F2A541; }
.cgbv-pfr__tag .elementor-heading-title { font: 600 11px/1 var(--pd-mono) !important; letter-spacing: .2em !important; text-transform: uppercase; color: var(--pd-ice) !important; }
.cgbv-pfr:last-child .cgbv-pfr__tag .elementor-heading-title { color: #F2A541 !important; }
.cgbv-pfr__text { margin-top: 14px !important; }
.cgbv-pfr__text p { margin: 0; font: 500 19px/1.5 var(--pd-head); color: #fff; }

/* 13 · FAQ */
body.cg-bevel-page .elementor-element.cgbv-faq { max-width: 860px; margin: 56px auto 0 !important; width: 100%; }

/* Reveal: new blocks rise in (product.js adds .cgpd-rv / .is-in) */

/* ── Responsive ──────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
	body.cg-bevel-page .elementor-element.cgbv-s { --padding-top: 110px !important; --padding-bottom: 110px !important; }
	.cgbv-art { width: 70% !important; flex: none !important; order: -1; }
	.cgbv-vs { width: 100%; }
	.cgbv-fig:nth-child(2n) { border-right: 0; }
	.cgbv-fig:nth-child(-n+2) { border-bottom: 1px solid var(--pd-line); }
	.cgbv-photo img { height: 420px !important; }
	body.cg-bevel-page .elementor-element-bx6row, body.cg-bevel-page .elementor-element-bx9row { gap: 48px !important; }
}
@media (max-width: 767px) {
	body.cg-bevel-page .elementor-element.cgbv-s { --padding-top: 84px !important; --padding-bottom: 84px !important; }
	.cgbv-lede p { font-size: 17px; }
	.cgbv-art { width: 100% !important; }
	.cgbv-vs { --padding-right: 24px !important; --padding-left: 24px !important; }
	.cgbv-fig { --padding-right: 16px !important; --padding-left: 16px !important; --padding-top: 30px !important; --padding-bottom: 28px !important; }
	.cgbv-photo img { height: 300px !important; }
	.cgbv-tile { min-height: 150px; }
	.cgbv-also .cgpd-link { margin-left: 0 !important; }
	.cgbv-promises .elementor-icon-list-items { flex-direction: column; align-items: center; gap: 14px; }
}
body.cg-bevel-page .elementor-element.cgbv-also { flex-wrap: nowrap !important; align-items: center !important; }
body.cg-bevel-page .cgbv-also .cgbv-pills { flex: 1 1 auto; }
@media (max-width: 1024px) { body.cg-bevel-page .elementor-element.cgbv-also { flex-wrap: wrap !important; } }

/* == v6 components (16-section layout) == */
body.cg-bevel-page :is(.cgbv-card, .cgbv-feat, .cgbv-mini, .cgbv-block, .cgbv-app, .cgbv-ind, .cgbv-hlcard, .cgbv-rfq, .cgbv-eq) { gap: 0 !important; }
body.cg-bevel-page .cgbv-center + .elementor-element { margin-top: 64px !important; }
body.cg-bevel-page .elementor-element:is(.cgbv-cards, .cgbv-minis, .cgbv-blocks, .cgbv-apps, .cgbv-inds, .cgbv-rfqs, .cgbv-pfrs, .cgbv-figs, .cgpd-reasons) { grid-template-rows: none !important; grid-auto-rows: auto !important; }

/* Shared icon badge */
:is(.cgbv-card__icon, .cgbv-mini__icon, .cgbv-block__icon, .cgbv-rfq__icon, .cgbv-feat__icon, .cgbv-app__icon, .cgbv-eq__icon, .cgbv-hlcard__icon) { margin: 0 !important; }
:is(.cgbv-card__icon, .cgbv-mini__icon, .cgbv-block__icon, .cgbv-rfq__icon, .cgbv-feat__icon, .cgbv-app__icon, .cgbv-eq__icon, .cgbv-hlcard__icon) .elementor-icon {
	display: grid !important; place-items: center; padding: 0 !important; width: 56px; height: 56px; border-radius: 16px;
	font-size: 21px !important; background: #EEF3FD !important; color: var(--pd-accent) !important;
	transition: background-color .4s ease, color .4s ease, transform .5s var(--pd-ease);
}
body.cg-bevel-page :is(.cgbv-card__icon, .cgbv-mini__icon, .cgbv-block__icon, .cgbv-rfq__icon, .cgbv-feat__icon, .cgbv-app__icon, .cgbv-eq__icon, .cgbv-hlcard__icon) .elementor-icon :is(svg, svg path) { width: 21px; height: 21px; fill: currentColor !important; }

.cgbv-photo--tall img { height: 600px !important; }

/* 03 specs */
body.cg-bevel-page .cgbv-figs:has(> .cgbv-fig:nth-child(3):last-child) .cgbv-fig { text-align: center; align-items: center; }
body.cg-bevel-page .cgbv-figs:has(> .cgbv-fig:nth-child(3):last-child) .cgbv-fig__v .elementor-heading-title::after { margin-left: auto; margin-right: auto; }
body.cg-bevel-page .cgbv-figs:has(> .cgbv-fig:nth-child(3):last-child) .cgbv-fig__l .elementor-heading-title { max-width: none; }
body.cg-bevel-page .elementor-element.cgbv-specwrap { max-width: 820px; width: 100%; margin: 64px auto 0 !important; }

/* 04 gear-type cards */
body.cg-bevel-page .elementor-element.cgbv-cards { max-width: 1000px; margin-left: auto !important; margin-right: auto !important; width: 100%; }
.cgbv-card {
	--padding-top: 44px !important; --padding-right: 44px !important; --padding-bottom: 42px !important; --padding-left: 44px !important;
	border: 1px solid var(--pd-line); border-radius: 24px; background: #fff !important; position: relative; overflow: hidden;
	transition: transform .5s var(--pd-ease), box-shadow .5s ease, border-color .4s ease !important;
}
.cgbv-card::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: linear-gradient(90deg, var(--pd-accent), #F2A541); transform: scaleX(0); transform-origin: 0 50%; transition: transform .6s var(--pd-ease); }
.cgbv-card:hover { transform: translateY(-6px); border-color: rgba(53, 99, 224, .25); box-shadow: 0 40px 70px -48px rgba(12, 24, 37, .55); }
.cgbv-card:hover::after { transform: scaleX(1); }
.cgbv-card:hover .cgbv-card__icon .elementor-icon { background: var(--pd-accent) !important; color: #fff !important; transform: rotate(-8deg); }
.cgbv-card:nth-child(3) { background: radial-gradient(420px 260px at 100% 0%, rgba(53, 99, 224, .4), transparent 70%), var(--pd-navy) !important; border-color: transparent; }
.cgbv-card:nth-child(3) .cgbv-card__title .elementor-heading-title { color: #fff !important; }
.cgbv-card:nth-child(3) .cgbv-card__text p { color: #B4C1D4; }
.cgbv-card:nth-child(3) .cgbv-card__icon .elementor-icon { background: rgba(242, 165, 65, .16) !important; color: #F2A541 !important; }
.cgbv-card__title { margin-top: 28px !important; }
.cgbv-card__title .elementor-heading-title { font: 600 24px/1.25 var(--pd-head) !important; color: var(--pd-ink) !important; }
.cgbv-card__text { margin-top: 12px !important; }
.cgbv-card__text p { margin: 0; font-size: 16.5px; line-height: 1.7; color: var(--pd-body); max-width: 400px; }

/* 05 equipment */
.cgbv-eqs { margin-top: 36px !important; gap: 14px !important; }
.cgbv-eq { --padding-top: 20px !important; --padding-right: 22px !important; --padding-bottom: 20px !important; --padding-left: 20px !important; border-radius: 18px; background: var(--pd-navy) !important; border: 1px solid transparent; transition: transform .45s var(--pd-ease), border-color .35s ease !important; }
.cgbv-eq:hover { transform: translateX(8px); border-color: rgba(242, 165, 65, .55); }
.cgbv-eq__icon .elementor-icon { width: 50px; height: 50px; background: rgba(242, 165, 65, .14) !important; color: #F2A541 !important; }
.cgbv-eq__icon .elementor-icon svg { animation: cgv2Spin 10s linear infinite; }
.cgbv-eq__model .elementor-heading-title { font: 600 19px/1.2 var(--pd-head) !important; color: #fff !important; }
.cgbv-eq__desc { margin-top: 4px !important; }
.cgbv-eq__desc .elementor-heading-title { font: 500 12.5px/1.4 var(--pd-mono) !important; letter-spacing: .03em !important; color: #9FB0C8 !important; }

/* 06 coniflex */
.cgbv-art--panel { flex: none !important; width: 100% !important; padding: 20px; border-radius: 26px; border: 1px solid rgba(157, 184, 255, .18); background: rgba(12, 26, 46, .55); }
.cgbv-feats { margin-top: 30px !important; }
.cgbv-feat { flex-direction: row !important; align-items: center; --padding-top: 16px !important; --padding-right: 16px !important; --padding-bottom: 16px !important; --padding-left: 16px !important; border: 1px solid rgba(157, 184, 255, .2); border-radius: 16px; background: rgba(12, 26, 46, .6) !important; transition: border-color .35s ease !important; }
.cgbv-feat:hover { border-color: rgba(242, 165, 65, .55); }
.cgbv-feat__icon .elementor-icon { width: 42px; height: 42px; border-radius: 12px; font-size: 16px !important; background: rgba(157, 184, 255, .12) !important; color: var(--pd-ice) !important; }
body.cg-bevel-page .cgbv-feat__icon .elementor-icon :is(svg, svg path) { width: 16px; height: 16px; }
.cgbv-feat__title { margin-left: 14px !important; }
.cgbv-feat__title .elementor-heading-title { font: 600 15.5px/1.3 var(--pd-head) !important; color: #fff !important; }

/* 07 CNC minis */
body.cg-bevel-page .elementor-element.cgbv-minis { max-width: 960px; margin-left: auto !important; margin-right: auto !important; width: 100%; }
.cgbv-mini { flex-direction: row !important; align-items: center; --padding-top: 24px !important; --padding-right: 24px !important; --padding-bottom: 24px !important; --padding-left: 24px !important; border: 1px solid var(--pd-line); border-radius: 18px; background: #fff !important; transition: transform .45s var(--pd-ease), box-shadow .45s ease, border-color .35s ease !important; }
.cgbv-mini:hover { transform: translateY(-4px); border-color: rgba(53, 99, 224, .3); box-shadow: 0 26px 50px -36px rgba(12, 24, 37, .5); }
.cgbv-mini:hover .cgbv-mini__icon .elementor-icon { background: var(--pd-accent) !important; color: #fff !important; }
.cgbv-mini__icon .elementor-icon { width: 50px; height: 50px; }
.cgbv-mini__title { margin-left: 18px !important; }
.cgbv-mini__title .elementor-heading-title { font: 600 17px/1.3 var(--pd-head) !important; color: var(--pd-ink) !important; }

/* 08 & 12 icon lists */
.cgbv-iconlist { max-width: 960px; margin-left: auto !important; margin-right: auto !important; width: 100%; }
.cgbv-iconlist .elementor-icon-list-items { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px 28px; }
.cgbv-iconlist--2 { max-width: none; }
.cgbv-iconlist--2 .elementor-icon-list-items { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.cgbv-iconlist .elementor-icon-list-item { align-items: center !important; margin: 0 !important; padding: 18px 20px !important; border-radius: 16px; background: #fff; border: 1px solid var(--pd-line); transition: border-color .35s ease, transform .45s var(--pd-ease); }
.cgbv-iconlist .elementor-icon-list-item:hover { border-color: rgba(53, 99, 224, .3); transform: translateY(-3px); }
.cgbv-iconlist .elementor-icon-list-item::after { display: none !important; }
.cgbv-iconlist .elementor-icon-list-icon { flex: none; display: grid !important; place-items: center; width: 44px !important; height: 44px; border-radius: 12px; background: #EEF3FD; }
body.cg-bevel-page .cgbv-iconlist .elementor-icon-list-icon svg { width: 17px !important; height: 17px !important; fill: var(--pd-accent) !important; }
.cgbv-iconlist .elementor-icon-list-text { padding-left: 16px !important; font: 600 15.5px/1.35 var(--pd-head) !important; color: var(--pd-ink) !important; }

/* 09 production blocks */
.cgbv-block { --padding-top: 38px !important; --padding-right: 30px !important; --padding-bottom: 36px !important; --padding-left: 30px !important; border-radius: 22px; background: var(--pd-mist) !important; border: 1px solid transparent; transition: background-color .45s ease, transform .5s var(--pd-ease) !important; }
.cgbv-block:hover { background: var(--pd-navy) !important; transform: translateY(-6px); }
.cgbv-block__icon .elementor-icon { background: #fff !important; }
.cgbv-block:hover .cgbv-block__icon .elementor-icon { background: rgba(242, 165, 65, .16) !important; color: #F2A541 !important; }
.cgbv-block__title { margin-top: 26px !important; }
.cgbv-block__title .elementor-heading-title { font: 600 20px/1.3 var(--pd-head) !important; color: var(--pd-ink) !important; transition: color .45s ease; }
.cgbv-block__text { margin-top: 10px !important; }
.cgbv-block__text p { margin: 0; font-size: 15.5px; line-height: 1.65; color: var(--pd-body); transition: color .45s ease; }
.cgbv-block:hover .cgbv-block__title .elementor-heading-title { color: #fff !important; }
.cgbv-block:hover .cgbv-block__text p { color: #B4C1D4; }

/* 10 applications */
.cgbv-apps .cgbv-app { align-items: center; text-align: center; --padding-top: 40px !important; --padding-right: 24px !important; --padding-bottom: 36px !important; --padding-left: 24px !important; border: 1px solid rgba(157, 184, 255, .2); border-radius: 22px; background: rgba(12, 26, 46, .55) !important; transition: border-color .4s ease, transform .5s var(--pd-ease) !important; }
.cgbv-app:hover { border-color: rgba(242, 165, 65, .55); transform: translateY(-6px); }
.cgbv-app__icon .elementor-icon { width: 64px; height: 64px; border-radius: 50%; font-size: 24px !important; background: rgba(157, 184, 255, .12) !important; color: var(--pd-ice) !important; }
.cgbv-app:hover .cgbv-app__icon .elementor-icon { background: #F2A541 !important; color: var(--pd-navy) !important; }
.cgbv-app__title { margin-top: 22px !important; }
.cgbv-app__title .elementor-heading-title { font: 600 18px/1.3 var(--pd-head) !important; color: #fff !important; text-align: center; }
.cgpd-sec--navy .cgbv-lede p { color: #B4C1D4; }

/* 11 industry cards */
.cgbv-ind { position: relative; overflow: hidden; border-radius: 22px; min-height: 300px; justify-content: flex-end; text-decoration: none; isolation: isolate; box-shadow: 0 30px 60px -44px rgba(7, 17, 31, .7); }
body.cg-bevel-page .cgbv-ind > .cgbv-ind__img { position: absolute !important; inset: 0; margin: 0 !important; z-index: 0; width: 100% !important; }
.cgbv-ind__img :is(.elementor-widget-container, img) { width: 100% !important; height: 100% !important; }
.cgbv-ind__img img { object-fit: cover; transition: transform 1.2s var(--pd-ease); }
.cgbv-ind:hover .cgbv-ind__img img { transform: scale(1.07); }
.cgbv-ind::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(0deg, rgba(7, 17, 31, .92) 10%, rgba(7, 17, 31, .2) 60%, transparent); pointer-events: none; }
.cgbv-ind__title { position: relative; z-index: 2; padding: 0 26px 24px; }
.cgbv-ind__title .elementor-heading-title { font: 600 20px/1.3 var(--pd-head) !important; color: #fff !important; }
.cgbv-ind__title .elementor-heading-title::after { content: "\2192"; display: inline-block; margin-left: 10px; color: #F2A541; transition: transform .4s var(--pd-ease); }
.cgbv-ind:hover .cgbv-ind__title .elementor-heading-title::after { transform: translateX(6px); }

/* 12 highlight card */
body.cg-bevel-page .elementor-element.cgbv-hlcard { height: 100%; justify-content: center; --padding-top: 40px !important; --padding-right: 36px !important; --padding-bottom: 36px !important; --padding-left: 36px !important; border-radius: 24px; background: radial-gradient(360px 260px at 100% 0%, rgba(53, 99, 224, .45), transparent 70%), var(--pd-grid), var(--pd-navy) !important; background-size: auto, 28px 28px, 28px 28px, auto !important; box-shadow: inset 0 3px 0 #F2A541; }
.cgbv-hlcard__icon .elementor-icon { background: rgba(242, 165, 65, .16) !important; color: #F2A541 !important; }
.cgbv-hlcard__tag { margin-top: 26px !important; }
.cgbv-hlcard__tag .elementor-heading-title { font: 500 11px/1.3 var(--pd-mono) !important; letter-spacing: .18em !important; text-transform: uppercase; color: var(--pd-ice) !important; }
.cgbv-hlcard__title { margin-top: 12px !important; }
.cgbv-hlcard__title .elementor-heading-title { font: 600 26px/1.2 var(--pd-head) !important; color: #fff !important; }
.cgbv-hlcard .cgpd-link { margin-top: 26px !important; }
.cgbv-hlcard .cgpd-link .elementor-button { color: var(--pd-ice) !important; box-shadow: inset 0 -1px 0 rgba(157, 184, 255, .4) !important; }
body.cg-bevel-page .elementor-element-by12row { gap: 28px !important; }

/* 13 case steps */
.cgbv-pfr { position: relative; --padding-top: 36px !important; --padding-bottom: 36px !important; border-radius: 0 0 18px 18px; }
.cgbv-pfr__n .elementor-heading-title { font: 600 48px/1 var(--pd-head) !important; color: transparent !important; -webkit-text-stroke: 1.2px rgba(157, 184, 255, .6); }
.cgbv-pfr:last-child .cgbv-pfr__n .elementor-heading-title { -webkit-text-stroke-color: #F2A541; }
.cgbv-pfr__tag { margin-top: 20px !important; }
.cgbv-pfr__tag .elementor-heading-title { font: 600 19px/1.3 var(--pd-head) !important; letter-spacing: 0 !important; text-transform: none; color: #fff !important; }
.cgbv-pfr__text p { font: 400 16px/1.65 Inter, sans-serif !important; color: #B4C1D4 !important; }
@media (min-width: 1025px) {
	.cgbv-pfr:not(:last-child)::after { content: "\2192"; position: absolute; right: -20px; top: 42px; font: 600 22px/1 var(--pd-head); color: #F2A541; }
}

/* 15 RFQ */
.cgbv-rfq { --padding-top: 34px !important; --padding-right: 28px !important; --padding-bottom: 30px !important; --padding-left: 28px !important; border-radius: 22px; background: #fff !important; border: 1px solid var(--pd-line); }
.cgbv-rfq:nth-child(2) { background: var(--pd-navy) !important; border-color: transparent; }
.cgbv-rfq:nth-child(2) .cgbv-rfq__title .elementor-heading-title { color: #fff !important; }
.cgbv-rfq:nth-child(2) .cgbv-rfq__list .elementor-icon-list-text { color: #DCE7FF !important; }
.cgbv-rfq:nth-child(2) .cgbv-rfq__list .elementor-icon-list-item { border-color: rgba(157, 184, 255, .14) !important; }
.cgbv-rfq:nth-child(2) .cgbv-rfq__icon .elementor-icon { background: rgba(242, 165, 65, .16) !important; color: #F2A541 !important; }
.cgbv-rfq__title { margin-top: 24px !important; }
.cgbv-rfq__title .elementor-heading-title { font: 600 18px/1.3 var(--pd-head) !important; color: var(--pd-ink) !important; }
.cgbv-rfq__list { margin-top: 14px !important; }
.cgbv-rfq__list .elementor-icon-list-item { margin: 0 !important; padding: 10px 0 !important; border-top: 1px solid var(--pd-line); }
.cgbv-rfq__list .elementor-icon-list-item::after { display: none !important; }
.cgbv-rfq__list .elementor-icon-list-icon svg { width: 11px !important; fill: var(--pd-accent) !important; }
.cgbv-rfq:nth-child(2) .cgbv-rfq__list .elementor-icon-list-icon svg { fill: #F2A541 !important; }
.cgbv-rfq__list .elementor-icon-list-text { padding-left: 10px !important; font-size: 15px !important; color: var(--pd-ink) !important; }
body.cg-bevel-page .elementor-element-by15act { margin-top: 56px !important; }
.cgbv-btn-outline .elementor-button { padding: 16px 24px !important; border-radius: 8px !important; background: #fff !important; border: 1px solid rgba(27, 63, 160, .35) !important; color: var(--pd-accent) !important; font: 600 13px/1 Inter, sans-serif !important; letter-spacing: .08em !important; text-transform: uppercase; }
.cgbv-btn-outline .elementor-button:hover { background: var(--pd-accent) !important; color: #fff !important; }

@media (max-width: 1024px) {
	.cgbv-iconlist .elementor-icon-list-items { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.cgbv-photo--tall img { height: 440px !important; }
	body.cg-bevel-page .elementor-element-by12row { flex-direction: column !important; }
}
@media (max-width: 767px) {
	body.cg-bevel-page .cgbv-center + .elementor-element { margin-top: 44px !important; }
	.cgbv-card { --padding-top: 32px !important; --padding-right: 24px !important; --padding-bottom: 30px !important; --padding-left: 24px !important; }
	.cgbv-iconlist .elementor-icon-list-items, .cgbv-iconlist--2 .elementor-icon-list-items { grid-template-columns: 1fr; }
	.cgbv-mini { --padding-top: 18px !important; --padding-bottom: 18px !important; --padding-left: 16px !important; --padding-right: 12px !important; }
	.cgbv-mini__icon .elementor-icon { width: 40px; height: 40px; }
	.cgbv-mini__title { margin-left: 12px !important; }
	.cgbv-mini__title .elementor-heading-title { font-size: 15px !important; }
	.cgbv-ind { min-height: 240px; }
	.cgbv-photo--tall img { height: 300px !important; }
	.cgbv-fig__v .elementor-heading-title { font-size: 44px !important; }
}
/* Secondary ops: centred rows so an odd last item doesn't hang left */
@media (min-width: 768px) {
	body.cg-bevel-page .cgbv-iconlist:not(.cgbv-iconlist--2) .elementor-icon-list-items { display: flex !important; flex-wrap: wrap; justify-content: center; }
	body.cg-bevel-page .cgbv-iconlist:not(.cgbv-iconlist--2) .elementor-icon-list-item { flex: 0 0 calc((100% - 56px) / 3); }
}
@media (min-width: 768px) and (max-width: 1024px) {
	body.cg-bevel-page .cgbv-iconlist:not(.cgbv-iconlist--2) .elementor-icon-list-item { flex-basis: calc((100% - 28px) / 2); }
}

/* == v7: side nav, reveal-on-hover cards, cursor light, spec table == */

/* -- Side navigation (built by bevel.js) -- */
.cgbv-nav {
	position: fixed; right: 22px; top: 50%; z-index: 90;
	display: flex; flex-direction: column; align-items: center; gap: 4px;
	padding: 14px 8px;
	border-radius: 999px;
	background: rgba(255, 255, 255, .82);
	-webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
	box-shadow: 0 20px 40px -24px rgba(12, 24, 37, .45), 0 0 0 1px rgba(12, 24, 37, .06);
	opacity: 0; transform: translate(20px, -50%); pointer-events: none;
	transition: opacity .5s ease, transform .6s var(--pd-ease), background-color .4s ease;
}
.cgbv-nav.is-on { opacity: 1; transform: translate(0, -50%); pointer-events: auto; }
.cgbv-nav.is-dark { background: rgba(7, 17, 31, .72); box-shadow: 0 20px 40px -24px rgba(0, 0, 0, .8), 0 0 0 1px rgba(157, 184, 255, .2); }
.cgbv-nav__progress { position: absolute; left: 50%; top: 18px; bottom: 18px; width: 2px; margin-left: -1px; border-radius: 2px; background: linear-gradient(180deg, var(--pd-accent), #F2A541); transform-origin: 50% 0; opacity: .18; pointer-events: none; }
.cgbv-nav__item { position: relative; display: grid; place-items: center; width: 22px; height: 22px; text-decoration: none; }
.cgbv-nav__dot { width: 7px; height: 7px; border-radius: 99px; background: #B6C0CF; transition: height .45s var(--pd-ease), background-color .3s ease, transform .3s ease; }
.cgbv-nav__item:hover .cgbv-nav__dot { background: var(--pd-accent-2); transform: scale(1.35); }
.cgbv-nav__item.is-active .cgbv-nav__dot { height: 20px; background: var(--pd-accent); box-shadow: 0 0 12px rgba(53, 99, 224, .5); }
.cgbv-nav.is-dark .cgbv-nav__dot { background: rgba(157, 184, 255, .45); }
.cgbv-nav.is-dark .cgbv-nav__item.is-active .cgbv-nav__dot { background: #F2A541; box-shadow: 0 0 12px rgba(242, 165, 65, .6); }
.cgbv-nav__label {
	position: absolute; right: calc(100% + 16px); top: 50%;
	padding: 7px 12px; border-radius: 8px; white-space: nowrap;
	background: var(--pd-navy); color: #fff;
	font: 600 11px/1 var(--pd-mono); letter-spacing: .1em; text-transform: uppercase;
	opacity: 0; transform: translate(8px, -50%); pointer-events: none;
	transition: opacity .25s ease, transform .35s var(--pd-ease);
	box-shadow: 0 12px 24px -12px rgba(0, 0, 0, .6);
}
.cgbv-nav__label::after { content: ""; position: absolute; right: -4px; top: 50%; width: 8px; height: 8px; margin-top: -4px; background: var(--pd-navy); transform: rotate(45deg); }
.cgbv-nav__item:hover .cgbv-nav__label, .cgbv-nav__item:focus-visible .cgbv-nav__label { opacity: 1; transform: translate(0, -50%); }
@media (max-width: 1199px) { .cgbv-nav { display: none; } }

/* -- Reveal-on-hover cards (.cgbv-rv, bevel.js adds body.cgbv-js) -- */
body.cgbv-js .cgbv-rv { cursor: pointer; justify-content: flex-start !important; outline: none; }
body.cgbv-js .cgbv-rv:focus-visible { box-shadow: 0 0 0 3px rgba(53, 99, 224, .45) !important; }
body.cgbv-js .cgbv-rv > .elementor-widget-text-editor {
	max-height: 0; opacity: 0; overflow: hidden; margin-top: 0 !important;
	transform: translateY(10px); filter: blur(4px);
	transition: max-height .6s var(--pd-ease), opacity .45s ease .05s, transform .6s var(--pd-ease), filter .5s ease, margin-top .5s var(--pd-ease);
}
body.cgbv-js .cgbv-rv.is-open > .elementor-widget-text-editor { max-height: 180px; opacity: 1; transform: none; filter: none; margin-top: 12px !important; }
@media (hover: hover) {
	body.cgbv-js .cgbv-rv:hover > .elementor-widget-text-editor, body.cgbv-js .cgbv-rv:focus-within > .elementor-widget-text-editor { max-height: 180px; opacity: 1; transform: none; filter: none; margin-top: 12px !important; }
}
/* + hint */
.cgbv-plus { position: absolute; top: 20px; right: 20px; z-index: 3; width: 28px; height: 28px; border-radius: 50%; border: 1px solid rgba(27, 63, 160, .22); background: rgba(255, 255, 255, .7); transition: transform .45s var(--pd-ease), background-color .3s ease, border-color .3s ease; pointer-events: none; }
.cgbv-plus::before, .cgbv-plus::after { content: ""; position: absolute; left: 50%; top: 50%; width: 10px; height: 1.5px; margin: -.75px 0 0 -5px; background: var(--pd-accent); border-radius: 2px; }
.cgbv-plus::after { transform: rotate(90deg); }
.cgbv-rv.is-open .cgbv-plus { transform: rotate(45deg); background: var(--pd-accent); border-color: var(--pd-accent); }
.cgbv-rv.is-open .cgbv-plus::before, .cgbv-rv.is-open .cgbv-plus::after { background: #fff; }
@media (hover: hover) {
	.cgbv-rv:hover .cgbv-plus { transform: rotate(45deg); background: var(--pd-accent); border-color: var(--pd-accent); }
	.cgbv-rv:hover .cgbv-plus::before, .cgbv-rv:hover .cgbv-plus::after { background: #fff; }
}
:is(.cgpd-sec--navy, .cgbv-card:nth-child(3), .cgbv-ind) .cgbv-plus { background: rgba(7, 17, 31, .45); border-color: rgba(157, 184, 255, .35); }
:is(.cgpd-sec--navy, .cgbv-card:nth-child(3), .cgbv-ind) .cgbv-plus::before, :is(.cgpd-sec--navy, .cgbv-card:nth-child(3), .cgbv-ind) .cgbv-plus::after { background: var(--pd-ice); }

/* Card heights reserve room so revealed text never reflows the grid */
body.cgbv-js .cgbv-card.cgbv-rv { min-height: 290px; }
body.cgbv-js .cgbv-block.cgbv-rv { min-height: 290px; }
body.cgbv-js .cgpd-reason.cgbv-rv { min-height: 250px; }
body.cgbv-js .cgbv-app.cgbv-rv { min-height: 260px; }
body.cgbv-js .cgbv-feat.cgbv-rv { min-height: 150px; }
body.cgbv-js .cgbv-mini.cgbv-rv { min-height: 190px; }
body.cgbv-js .cgbv-minis--2 .cgbv-mini.cgbv-rv { min-height: 170px; }

/* Minis + feats become vertical (icon, title, hidden text) */
body.cg-bevel-page .cgbv-mini.cgbv-rv, body.cg-bevel-page .cgbv-feat.cgbv-rv { flex-direction: column !important; align-items: flex-start !important; }
body.cg-bevel-page .cgbv-mini.cgbv-rv .cgbv-mini__title, body.cg-bevel-page .cgbv-feat.cgbv-rv .cgbv-feat__title { margin: 18px 0 0 !important; }
.cgbv-mini__text p { margin: 0; font-size: 14.5px; line-height: 1.6; color: var(--pd-body); }
.cgbv-feat__text p { margin: 0; font-size: 14px; line-height: 1.6; color: #B4C1D4; }
.cgbv-app__text p { margin: 0; font-size: 14.5px; line-height: 1.6; color: #B4C1D4; text-align: center; }
.cgbv-feat.cgbv-rv { --padding-top: 20px !important; --padding-right: 20px !important; --padding-bottom: 20px !important; --padding-left: 20px !important; }
body.cg-bevel-page .cgbv-minis > .cgbv-mini:last-child:nth-child(3n+1) { grid-column: 2; }
@media (max-width: 1024px) { body.cg-bevel-page .cgbv-minis > .cgbv-mini:last-child:nth-child(3n+1) { grid-column: auto; } }
body.cg-bevel-page .elementor-element.cgbv-minis--2 { max-width: none; }

/* Industry cards: summary slides up on a frosted backdrop */
body.cgbv-js .cgbv-ind > .cgbv-ind__text { position: relative; z-index: 2; margin: 0 16px 16px !important; padding: 0 12px; border-radius: 14px; background: rgba(7, 17, 31, .55); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
body.cgbv-js .cgbv-ind.cgbv-rv:is(.is-open) > .cgbv-ind__text { padding: 12px; margin: 0 16px 16px !important; }
@media (hover: hover) { body.cgbv-js .cgbv-ind.cgbv-rv:hover > .cgbv-ind__text { padding: 12px; margin: 0 16px 16px !important; } }
.cgbv-ind__text p { margin: 0; font-size: 14px; line-height: 1.55; color: #DCE7FF; }
.cgbv-ind .cgbv-ind__title { transition: transform .5s var(--pd-ease); }

/* Open/hover state of light cards: soft gradient backdrop + lift */
body.cgbv-js .cgbv-rv.is-open:is(.cgbv-mini, .cgbv-card:not(:nth-child(3)), .cgpd-reason) { border-color: rgba(53, 99, 224, .3) !important; box-shadow: 0 30px 60px -44px rgba(12, 24, 37, .55); }

/* -- Cursor light (span.cgbv-glow added by bevel.js) -- */
:is(.cgbv-rv, .cgbv-eq, .cgbv-rfq, .cgbv-fig, .cgbv-pfr, .cgbv-hlcard) { position: relative; }
.cgbv-glow { position: absolute; inset: 0; z-index: 1; border-radius: inherit; pointer-events: none; opacity: 0; transition: opacity .45s ease; background: radial-gradient(280px circle at var(--gx, -300px) var(--gy, -300px), rgba(53, 99, 224, .13), transparent 62%); }
:is(.cgpd-sec--navy, .cgbv-card:nth-child(3), .cgbv-eq, .cgbv-rfq:nth-child(2), .cgbv-hlcard, .cgbv-ind, .cgbv-block:hover) .cgbv-glow { background: radial-gradient(300px circle at var(--gx, -300px) var(--gy, -300px), rgba(157, 184, 255, .2), transparent 62%); mix-blend-mode: screen; }
:is(.cgbv-rv, .cgbv-eq, .cgbv-rfq, .cgbv-fig, .cgbv-pfr, .cgbv-hlcard):hover > .cgbv-glow { opacity: 1; }
:is(.cgbv-rv, .cgbv-eq, .cgbv-rfq, .cgbv-fig, .cgbv-pfr, .cgbv-hlcard) > .elementor-element { position: relative; z-index: 2; }
body.cg-bevel-page .cgbv-ind > .cgbv-ind__img { z-index: 0 !important; }

/* Micro: icon badge lifts, figures count underline */
@media (hover: hover) {
	.cgbv-rv:hover :is(.cgbv-mini__icon, .cgbv-feat__icon, .cgbv-app__icon, .cgbv-block__icon, .cgbv-card__icon, .cgpd-reason__icon) .elementor-icon { transform: translateY(-3px) rotate(-8deg); }
}

/* -- Specification table: floating rows with icons -- */
.cgbv-specwrap .cgpd-spec { border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; overflow: visible !important; border-collapse: separate !important; border-spacing: 0 12px !important; }
.cgbv-specwrap .cgpd-spec thead th { background: transparent !important; padding: 0 28px 2px !important; font: 500 11px/1.3 var(--pd-mono) !important; letter-spacing: .2em !important; color: var(--pd-body) !important; }
.cgbv-specwrap .cgpd-spec thead th:last-child { text-align: right; }
.cgbv-specwrap .cgpd-spec tbody tr { background: transparent !important; transition: transform .45s var(--pd-ease); }
.cgbv-specwrap .cgpd-spec td { position: relative; padding: 22px 28px !important; border: 0 !important; background: #fff !important; box-shadow: 0 1px 0 var(--pd-line), 0 16px 30px -26px rgba(12, 24, 37, .5); transition: background-color .35s ease, box-shadow .35s ease; }
.cgbv-specwrap .cgpd-spec td:first-child { width: 55% !important; padding-left: 82px !important; border-radius: 16px 0 0 16px !important; font: 600 16.5px/1.3 var(--pd-head) !important; color: var(--pd-ink) !important; }
.cgbv-specwrap .cgpd-spec td:last-child { border-radius: 0 16px 16px 0 !important; text-align: right; font: 600 18px/1.3 var(--pd-head) !important; color: var(--pd-accent) !important; }
.cgbv-specwrap .cgpd-spec td:first-child::before { content: ""; position: absolute; left: 24px; top: 50%; width: 40px; height: 40px; margin-top: -20px; border-radius: 12px; background: #EEF3FD center / 20px no-repeat; transition: background-color .35s ease; }
.cgbv-specwrap .cgpd-spec td:first-child::after { content: ""; position: absolute; left: 0; top: 14px; bottom: 14px; width: 3px; border-radius: 3px; background: linear-gradient(180deg, var(--pd-accent), #F2A541); transform: scaleY(0); transition: transform .45s var(--pd-ease); }
.cgbv-specwrap .cgpd-spec tbody tr:hover { transform: translateX(8px); }
.cgbv-specwrap .cgpd-spec tbody tr:hover td { background: #FBFCFF !important; box-shadow: 0 1px 0 rgba(53, 99, 224, .25), 0 24px 40px -28px rgba(12, 24, 37, .55); }
.cgbv-specwrap .cgpd-spec tbody tr:hover td:first-child::after { transform: scaleY(1); }
.cgbv-specwrap .cgpd-spec tbody tr:hover td:first-child::before { background-color: #DDE7FB; }
.cgbv-specwrap .cgpd-spec tbody tr:nth-child(1) td:first-child::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B3FA0' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M5.6 18.4L18.4 5.6'/%3E%3C/svg%3E"); }
.cgbv-specwrap .cgpd-spec tbody tr:nth-child(2) td:first-child::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B3FA0' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12h18M6 9l-3 3 3 3M18 9l3 3-3 3M3 5v14M21 5v14'/%3E%3C/svg%3E"); }
.cgbv-specwrap .cgpd-spec tbody tr:nth-child(3) td:first-child::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B3FA0' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M10.3 2h3.4l.5 2.6 2 .8 2.2-1.5 2.4 2.4-1.5 2.2.8 2 2.6.5v3.4l-2.6.5-.8 2 1.5 2.2-2.4 2.4-2.2-1.5-2 .8-.5 2.6h-3.4l-.5-2.6-2-.8-2.2 1.5-2.4-2.4 1.5-2.2-.8-2L2 13.7v-3.4l2.6-.5.8-2-1.5-2.2 2.4-2.4 2.2 1.5 2-.8z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E"); }
.cgbv-specwrap .cgpd-spec tbody tr:nth-child(4) td:first-child::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B3FA0' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M12 3l9 5-9 5-9-5z'/%3E%3Cpath d='M3 13l9 5 9-5'/%3E%3C/svg%3E"); }
.cgbv-specwrap .cgpd-spec tbody tr:nth-child(5) td:first-child::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B3FA0' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 3v5h5M9 13h6M9 17h4'/%3E%3C/svg%3E"); }
@media (max-width: 767px) {
	.cgbv-specwrap .cgpd-spec td { padding: 16px 14px !important; }
	.cgbv-specwrap .cgpd-spec td:first-child { padding-left: 60px !important; font-size: 14.5px !important; width: 52% !important; }
	.cgbv-specwrap .cgpd-spec td:first-child::before { left: 14px; width: 34px; height: 34px; margin-top: -17px; background-size: 17px; }
	.cgbv-specwrap .cgpd-spec td:last-child { font-size: 15px !important; }
	.cgbv-specwrap .cgpd-spec thead th { padding: 0 14px 2px !important; }
}
@media (prefers-reduced-motion: reduce) {
	body.cgbv-js .cgbv-rv > .elementor-widget-text-editor { transition: none; filter: none; }
}
body.cgbv-js .cgbv-ind.cgbv-rv { justify-content: flex-end !important; }
body.cgbv-js .cgbv-ind > .cgbv-ind__text { margin: 0 16px 0 !important; }
.cgbv-specwrap .cgpd-spec thead, .cgbv-specwrap .cgpd-spec thead tr, .cgbv-specwrap .cgpd-spec thead th { border: 0 !important; box-shadow: none !important; background: transparent !important; }
.cgbv-specwrap .cgpd-spec { border-top: 0 !important; }

/* == v8: content always visible; a distinct card design per section == */
body.cg-bevel-page :is(.cgbv-ft, .cgbv-ft__panel, .cgbv-ft__cap, .cgbv-dash, .cgbv-notch, .cgbv-check, .cgbv-poster, .cgbv-arow) { gap: 0 !important; }
body.cg-bevel-page .elementor-element:is(.cgbv-fts, .cgbv-dashes, .cgbv-checks, .cgbv-posters, .cgbv-arows) { grid-template-rows: none !important; grid-auto-rows: auto !important; }
:is(.cgbv-ft__panel, .cgbv-dash, .cgbv-notch, .cgbv-check, .cgbv-poster, .cgbv-arow, .cgbv-feat, .cgpd-reason) { position: relative; }
:is(.cgbv-ft__panel, .cgbv-dash, .cgbv-notch, .cgbv-check, .cgbv-poster, .cgbv-arow, .cgbv-feat, .cgpd-reason) > .elementor-element { position: relative; z-index: 2; }

/* -- 04 Gear types: two-part feature cards (illustration panel + caption) -- */
body.cg-bevel-page .elementor-element.cgbv-fts { max-width: 1040px; width: 100%; margin-left: auto !important; margin-right: auto !important; gap: 24px !important; }
.cgbv-ft { gap: 8px !important; transition: transform .5s var(--pd-ease) !important; }
.cgbv-ft:hover { transform: translateY(-6px); }
.cgbv-ft__panel {
	--padding-top: 22px !important; --padding-right: 22px !important; --padding-bottom: 10px !important; --padding-left: 22px !important;
	border-radius: 20px; background: #fff !important; border: 1px solid var(--pd-line);
	box-shadow: 0 1px 0 rgba(12, 24, 37, .04), 0 24px 44px -34px rgba(12, 24, 37, .45);
	overflow: hidden; transition: box-shadow .5s ease, border-color .4s ease !important;
}
.cgbv-ft:hover .cgbv-ft__panel { border-color: rgba(53, 99, 224, .3); box-shadow: 0 34px 60px -38px rgba(12, 24, 37, .55); }
.cgbv-ft__panel::after { content: "\2197"; position: absolute; top: 18px; right: 20px; z-index: 3; width: 28px; height: 28px; display: grid; place-items: center; border-radius: 8px; border: 1px solid var(--pd-line); font: 600 13px/1 var(--pd-head); color: var(--pd-accent); transition: background-color .3s ease, color .3s ease, transform .4s var(--pd-ease); }
.cgbv-ft:hover .cgbv-ft__panel::after { background: var(--pd-accent); color: #fff; transform: rotate(45deg); }
.cgbv-ft__title .elementor-heading-title { font: 600 20px/1.25 var(--pd-head) !important; color: var(--pd-ink) !important; padding-right: 40px; }
.cgbv-ft__art { margin: 16px -8px 0 !important; }
.cgbv-ft__art img { display: block; width: 100% !important; height: auto !important; border-radius: 12px; border: 1px dashed rgba(12, 24, 37, .12); transition: transform 1s var(--pd-ease); }
.cgbv-ft:hover .cgbv-ft__art img { transform: scale(1.03); }
.cgbv-ft__cap { --padding-top: 18px !important; --padding-right: 22px !important; --padding-bottom: 18px !important; --padding-left: 22px !important; border-radius: 16px; background: #fff !important; border: 1px solid var(--pd-line); }
.cgbv-ft__text p { margin: 0; font-size: 15px; line-height: 1.6; color: var(--pd-body); }
.cgbv-ft--dark .cgbv-ft__panel, .cgbv-ft--dark .cgbv-ft__cap { background: var(--pd-navy) !important; border-color: transparent; }
.cgbv-ft--dark .cgbv-ft__panel { background: radial-gradient(320px 220px at 100% 0%, rgba(53, 99, 224, .45), transparent 70%), var(--pd-navy) !important; }
.cgbv-ft--dark .cgbv-ft__title .elementor-heading-title { color: #fff !important; }
.cgbv-ft--dark .cgbv-ft__text p { color: #B4C1D4; }
.cgbv-ft--dark .cgbv-ft__panel::after { border-color: rgba(157, 184, 255, .3); color: #F2A541; }
.cgbv-ft--dark .cgbv-ft__art img { border-color: rgba(157, 184, 255, .18); }
.cgbv-ft--dark .cgbv-ft__cap { box-shadow: inset 0 3px 0 #F2A541; }

/* -- 07 CNC: dashboard cards (header row, body, footer action bar) -- */
body.cg-bevel-page .elementor-element.cgbv-dashes { max-width: 1040px; width: 100%; margin-left: auto !important; margin-right: auto !important; gap: 20px !important; }
.cgbv-dash {
	display: grid !important; grid-template-columns: auto 1fr; grid-template-areas: "icon title" "text text" "foot foot"; align-items: center;
	--padding-top: 0px !important; --padding-right: 0px !important; --padding-bottom: 0px !important; --padding-left: 0px !important;
	border-radius: 18px; background: #fff !important; border: 1px solid var(--pd-line); overflow: hidden;
	box-shadow: 0 1px 0 rgba(12, 24, 37, .04), 0 20px 40px -32px rgba(12, 24, 37, .4);
	transition: transform .45s var(--pd-ease), box-shadow .45s ease, border-color .35s ease !important;
}
.cgbv-dash:hover { transform: translateY(-5px); border-color: rgba(53, 99, 224, .3); box-shadow: 0 30px 56px -38px rgba(12, 24, 37, .55); }
.cgbv-dash::after { content: "\00B7\00B7\00B7"; position: absolute; top: 20px; right: 20px; z-index: 3; font: 700 18px/1 var(--pd-head); letter-spacing: 1px; color: #A7B1C2; }
.cgbv-dash > .cgbv-mini__icon { grid-area: icon; margin: 20px 0 0 22px !important; }
.cgbv-dash > .cgbv-mini__icon .elementor-icon { width: 38px !important; height: 38px !important; border-radius: 10px !important; font-size: 15px !important; }
body.cg-bevel-page .cgbv-dash > .cgbv-mini__icon .elementor-icon :is(svg, svg path) { width: 15px !important; height: 15px !important; }
body.cg-bevel-page .cgbv-dash > .cgbv-mini__title { grid-area: title; margin: 20px 44px 0 12px !important; }
.cgbv-dash > .cgbv-mini__title .elementor-heading-title { font: 600 16px/1.3 var(--pd-head) !important; }
.cgbv-dash > .cgbv-mini__text { grid-area: text; padding: 14px 22px 20px; margin: 0 !important; }
.cgbv-dash > .cgbv-mini__text p { font-size: 14.5px; line-height: 1.6; color: var(--pd-body); }
/* soft chart-like glow in the body on hover */
.cgbv-dash::before { content: ""; position: absolute; left: 0; right: 0; top: 60px; height: 90px; z-index: 1; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 90' preserveAspectRatio='none'%3E%3Cpath d='M0 80 C40 70 60 40 100 50 S160 20 200 30 S260 5 300 10 V90 H0Z' fill='%233563E0' fill-opacity='.08'/%3E%3Cpath d='M0 80 C40 70 60 40 100 50 S160 20 200 30 S260 5 300 10' fill='none' stroke='%233563E0' stroke-opacity='.35' stroke-width='1.5'/%3E%3C/svg%3E") center / 100% 100% no-repeat; opacity: 0; transform: translateY(8px); transition: opacity .5s ease, transform .6s var(--pd-ease); pointer-events: none; }
.cgbv-dash:hover::before { opacity: 1; transform: none; }
.cgbv-dash > .cgbv-dash__foot { grid-area: foot; margin: 0 !important; width: 100% !important; }
.cgbv-dash__foot .elementor-button { width: 100%; display: flex !important; justify-content: space-between; padding: 14px 22px !important; border: 0 !important; border-top: 1px solid var(--pd-line) !important; border-radius: 0 !important; background: #F6F8FB !important; color: var(--pd-ink) !important; font: 600 13.5px/1 var(--pd-head) !important; letter-spacing: 0 !important; text-transform: none !important; box-shadow: none !important; transition: background-color .3s ease, color .3s ease !important; }
.cgbv-dash__foot .elementor-button-content-wrapper { width: 100%; justify-content: space-between; }
.cgbv-dash__foot .elementor-button :is(svg, svg path) { fill: currentColor !important; width: 12px; transition: transform .3s var(--pd-ease); }
.cgbv-dash:hover .cgbv-dash__foot .elementor-button { background: var(--pd-navy) !important; color: #fff !important; }
.cgbv-dash:hover .cgbv-dash__foot .elementor-button svg { transform: translateX(4px); }

/* -- 08 Secondary operations: notch cards (icon sits in a cut-out corner) -- */
body.cg-bevel-page .elementor-element.cgbv-notches { display: flex !important; flex-wrap: wrap; justify-content: center; gap: 22px !important; max-width: 1040px; width: 100%; margin-left: auto !important; margin-right: auto !important; }
.cgbv-notch {
	flex: 0 0 calc((100% - 44px) / 3); min-height: 170px;
	--padding-top: 26px !important; --padding-right: 26px !important; --padding-bottom: 28px !important; --padding-left: 26px !important;
	border-radius: 22px; background: #fff !important; box-shadow: 0 1px 0 rgba(12, 24, 37, .05), 0 22px 44px -34px rgba(12, 24, 37, .45);
	transition: transform .5s var(--pd-ease), box-shadow .5s ease !important;
}
.cgbv-notch::after { content: ""; position: absolute; right: -1px; bottom: -1px; z-index: 1; width: 86px; height: 86px; border-top-left-radius: 30px; background: #F4F6F9; box-shadow: -10px -10px 0 -4px #fff; }
.cgbv-notch:hover { transform: translateY(-5px); box-shadow: 0 30px 56px -36px rgba(12, 24, 37, .55); }
body.cg-bevel-page .cgbv-notch > .cgbv-mini__icon { position: absolute !important; right: 8px; bottom: 8px; z-index: 3; width: auto !important; margin: 0 !important; }
.cgbv-notch > .cgbv-mini__icon .elementor-icon { width: 64px !important; height: 64px !important; border-radius: 22px !important; background: var(--pd-navy) !important; color: #F2A541 !important; transition: transform .6s var(--pd-ease), background-color .4s ease !important; }
.cgbv-notch:hover > .cgbv-mini__icon .elementor-icon { transform: rotate(-12deg); background: var(--pd-accent) !important; color: #fff !important; }
body.cg-bevel-page .cgbv-notch > .cgbv-mini__title { margin: 0 !important; padding-right: 10px; }
.cgbv-notch > .cgbv-mini__title .elementor-heading-title { font: 600 18px/1.3 var(--pd-head) !important; }
.cgbv-notch > .cgbv-mini__text { margin: 10px 0 0 !important; padding-right: 72px; }
.cgbv-notch > .cgbv-mini__text p { margin: 0; font-size: 14.5px; line-height: 1.6; color: var(--pd-body); }

/* -- 09 Production: fanned poster cards -- */
body.cg-bevel-page .elementor-element.cgbv-posters { display: flex !important; justify-content: center; align-items: stretch; gap: 0 !important; max-width: 1100px; width: 100%; margin-left: auto !important; margin-right: auto !important; padding: 20px 0; }
.cgbv-poster {
	flex: 0 0 25%; min-height: 330px; margin: 0 -8px !important; justify-content: space-between;
	--padding-top: 30px !important; --padding-right: 28px !important; --padding-bottom: 30px !important; --padding-left: 28px !important;
	border-radius: 22px; overflow: hidden; border: 0 !important;
	box-shadow: 0 30px 60px -34px rgba(7, 17, 31, .55), 0 0 0 1px rgba(255, 255, 255, .5) inset;
	transition: transform .6s var(--pd-ease), box-shadow .5s ease, z-index 0s !important;
}
.cgbv-poster:nth-child(1) { background: radial-gradient(120% 90% at 0% 100%, #3563E0 0%, transparent 60%), linear-gradient(160deg, #0C1A2E, #07111F) !important; transform: rotate(-4deg) translateY(10px); z-index: 1; }
.cgbv-poster:nth-child(2) { background: radial-gradient(90% 70% at 100% 0%, rgba(53, 99, 224, .35), transparent 70%), linear-gradient(160deg, #EEF3FD, #fff) !important; transform: rotate(2deg); z-index: 2; }
.cgbv-poster:nth-child(3) { background: radial-gradient(100% 80% at 100% 100%, #F2A541, transparent 70%), linear-gradient(160deg, #FFF6EA, #FBE3C2) !important; transform: rotate(-2deg) translateY(6px); z-index: 3; }
.cgbv-poster:nth-child(4) { background: radial-gradient(100% 80% at 0% 0%, rgba(157, 184, 255, .5), transparent 70%), linear-gradient(160deg, #1B3FA0, #0C1A2E) !important; transform: rotate(4deg) translateY(-4px); z-index: 4; }
.cgbv-poster:hover { transform: rotate(0) translateY(-14px) scale(1.03); z-index: 10; box-shadow: 0 50px 80px -40px rgba(7, 17, 31, .7); }
.cgbv-poster > .cgbv-block__icon .elementor-icon { width: 48px !important; height: 48px !important; border-radius: 14px !important; background: rgba(255, 255, 255, .85) !important; color: var(--pd-accent) !important; }
.cgbv-poster > .cgbv-block__title { margin-top: auto !important; padding-top: 70px; }
.cgbv-poster > .cgbv-block__title .elementor-heading-title { font: 600 26px/1.12 var(--pd-head) !important; letter-spacing: -.02em !important; color: var(--pd-ink) !important; }
.cgbv-poster > .cgbv-block__text { margin-top: 12px !important; }
.cgbv-poster > .cgbv-block__text p { margin: 0; font-size: 14.5px; line-height: 1.55; color: var(--pd-body); }
.cgbv-poster:is(:nth-child(1), :nth-child(4)) .cgbv-block__title .elementor-heading-title { color: #fff !important; }
.cgbv-poster:is(:nth-child(1), :nth-child(4)) .cgbv-block__text p { color: #C9D5E6; }
.cgbv-poster:nth-child(3) .cgbv-block__icon .elementor-icon { color: #B96A0A !important; }

/* -- 06 Coniflex points & 12 inspection: compact rows with visible text -- */
.cgbv-feat, .cgbv-check {
	display: grid !important; grid-template-columns: auto 1fr; grid-template-areas: "icon title" "icon text"; column-gap: 16px !important; row-gap: 4px !important; align-items: start;
}
/* by class, not :nth-child — the Elementor editor inserts an overlay div as first child, which shifted every cell */
.cgbv-feat > .cgbv-feat__icon, .cgbv-check > .cgbv-mini__icon { grid-area: icon; margin: 2px 0 0 !important; }
body.cg-bevel-page .cgbv-feat > .cgbv-feat__title, body.cg-bevel-page .cgbv-check > .cgbv-mini__title { grid-area: title; margin: 0 !important; }
.cgbv-feat > .cgbv-feat__text, .cgbv-check > .cgbv-mini__text { grid-area: text; margin: 0 !important; }
.cgbv-feat__text p { margin: 0; font-size: 14px; line-height: 1.55; color: #B4C1D4; }
.cgbv-check { --padding-top: 20px !important; --padding-right: 22px !important; --padding-bottom: 20px !important; --padding-left: 20px !important; border-radius: 16px; background: #fff !important; border: 1px solid var(--pd-line); transition: border-color .35s ease, transform .45s var(--pd-ease) !important; }
.cgbv-check:hover { border-color: rgba(53, 99, 224, .35); transform: translateX(4px); }
.cgbv-check > .cgbv-mini__icon .elementor-icon { width: 42px !important; height: 42px !important; border-radius: 50% !important; }
body.cg-bevel-page .cgbv-check > .cgbv-mini__icon .elementor-icon :is(svg, svg path) { width: 16px !important; height: 16px !important; }
.cgbv-check > .cgbv-mini__title .elementor-heading-title { font: 600 16px/1.3 var(--pd-head) !important; }
.cgbv-check > .cgbv-mini__text p { margin: 0; font-size: 14px; line-height: 1.55; color: var(--pd-body); }
body.cg-bevel-page .elementor-element.cgbv-checks { gap: 12px !important; }

/* -- 10 Applications (navy): list rows, 2 columns -- */
body.cg-bevel-page .elementor-element.cgbv-arows { max-width: 1000px; width: 100%; margin-left: auto !important; margin-right: auto !important; gap: 0 40px !important; }
.cgbv-arow {
	display: grid !important; grid-template-columns: auto 1fr; grid-template-areas: "icon title" "icon text"; column-gap: 22px !important; row-gap: 6px !important; align-items: start;
	--padding-top: 26px !important; --padding-right: 12px !important; --padding-bottom: 26px !important; --padding-left: 12px !important;
	border-bottom: 1px solid rgba(157, 184, 255, .16); border-radius: 0; background: transparent !important;
	transition: background-color .4s ease !important;
}
.cgbv-arow:hover { background: rgba(157, 184, 255, .06) !important; }
.cgbv-arow > :first-child { grid-area: icon; margin: 0 !important; }
body.cg-bevel-page .cgbv-arow > :nth-child(2) { grid-area: title; margin: 4px 0 0 !important; }
.cgbv-arow > :nth-child(3) { grid-area: text; margin: 0 !important; }
.cgbv-arow > .cgbv-app__icon .elementor-icon { width: 56px !important; height: 56px !important; border-radius: 16px !important; background: rgba(157, 184, 255, .12) !important; color: var(--pd-ice) !important; transition: background-color .4s ease, color .4s ease, transform .5s var(--pd-ease) !important; }
.cgbv-arow:hover > .cgbv-app__icon .elementor-icon { background: #F2A541 !important; color: var(--pd-navy) !important; transform: rotate(-8deg); }
.cgbv-arow .cgbv-app__title .elementor-heading-title { text-align: left !important; font: 600 19px/1.3 var(--pd-head) !important; }
.cgbv-arow .cgbv-app__text p { text-align: left !important; margin: 0; font-size: 15px; line-height: 1.6; color: #B4C1D4; }

/* -- 11 Industries: summary always shown on a frosted strip -- */

/* -- 14 Why: remove leftover empty height -- */
body.cg-bevel-page .cgpd-reason { min-height: 0 !important; }

/* glow on the new cards */
.cgbv-ft__panel > .cgbv-glow { border-radius: 20px; }

@media (max-width: 1024px) {
	.cgbv-notch { flex-basis: calc((100% - 22px) / 2); }
	body.cg-bevel-page .elementor-element.cgbv-posters { flex-wrap: wrap; gap: 20px !important; }
	.cgbv-poster { flex: 0 0 calc(50% - 10px); margin: 0 !important; transform: none !important; }
	body.cg-bevel-page .elementor-element.cgbv-arows { grid-template-columns: 1fr !important; }
}
@media (max-width: 767px) {
	.cgbv-notch, .cgbv-poster { flex-basis: 100%; }
	.cgbv-poster { min-height: 260px; }
	.cgbv-poster > .cgbv-block__title { padding-top: 40px; }
}
body.cg-bevel-page .elementor-element.cgbv-notch { flex: 0 0 calc((100% - 44px) / 3) !important; width: calc((100% - 44px) / 3) !important; max-width: none !important; }
body.cg-bevel-page .elementor-element.cgbv-arows { row-gap: 0 !important; column-gap: 40px !important; }
@media (max-width: 1024px) { body.cg-bevel-page .elementor-element.cgbv-notch { flex-basis: calc((100% - 22px) / 2) !important; width: calc((100% - 22px) / 2) !important; } }
@media (max-width: 767px) { body.cg-bevel-page .elementor-element.cgbv-notch { flex-basis: 100% !important; width: 100% !important; } }
body.cg-bevel-page .elementor-element.cgbv-arows { align-content: start !important; height: auto !important; min-height: 0 !important; }
body.cg-bevel-page .cgpd-in > .elementor-element.e-con.cgbv-arows { gap: 0 40px !important; row-gap: 0 !important; }
@media (max-width: 767px) { body.cg-bevel-page .elementor-element.cgbv-dashes { grid-template-columns: minmax(0, 1fr) !important; } }

/* == v9: notch corner button light -> solid dark on hover; posters single-tone with grid == */
.cgbv-notch > .cgbv-mini__icon .elementor-icon { background: #EEF3FD !important; color: var(--pd-accent) !important; border: 1px solid rgba(27, 63, 160, .14); }
.cgbv-notch > .cgbv-mini__icon .elementor-icon :is(svg, svg path) { fill: currentColor; }
.cgbv-notch:hover > .cgbv-mini__icon .elementor-icon { background: var(--pd-navy) !important; color: #fff !important; border-color: var(--pd-navy); }

body.cg-bevel-page .cgbv-poster:is(:nth-child(1), :nth-child(2), :nth-child(3), :nth-child(4)) {
	background-color: #fff !important;
	background-image:
		linear-gradient(rgba(27, 63, 160, .07) 1px, transparent 1px),
		linear-gradient(90deg, rgba(27, 63, 160, .07) 1px, transparent 1px),
		linear-gradient(rgba(27, 63, 160, .035) 1px, transparent 1px),
		linear-gradient(90deg, rgba(27, 63, 160, .035) 1px, transparent 1px) !important;
	background-size: 48px 48px, 48px 48px, 12px 12px, 12px 12px !important;
	background-position: -1px -1px !important;
	border: 1px solid var(--pd-line) !important;
	box-shadow: 0 30px 60px -34px rgba(7, 17, 31, .45), 0 2px 6px rgba(12, 24, 37, .04);
}
body.cg-bevel-page .cgbv-poster:hover { border-color: rgba(53, 99, 224, .35) !important; box-shadow: 0 50px 80px -40px rgba(7, 17, 31, .6); }
.cgbv-poster > .cgbv-block__icon .elementor-icon { background: #EEF3FD !important; color: var(--pd-accent) !important; border: 1px solid rgba(27, 63, 160, .14); }
body.cg-bevel-page .cgbv-poster .cgbv-block__title .elementor-heading-title { color: var(--pd-ink) !important; }
body.cg-bevel-page .cgbv-poster .cgbv-block__text p { color: var(--pd-body); }

/* == v10 ================================================================ */
/* Always-visible description on former reveal cards (.cgbv-rv.cgbv-open); card heights kept */
body.cgbv-js .cgbv-rv.cgbv-open { cursor: default; }
body.cgbv-js .cgbv-rv.cgbv-open > .elementor-widget-text-editor { max-height: none; opacity: 1; overflow: visible; transform: none; filter: none; margin-top: 12px !important; }
body.cgbv-js .cgbv-rv.cgbv-open.cgbv-app > .elementor-widget-text-editor { margin-top: 14px !important; }
body.cgbv-js .cgbv-card.cgbv-open .cgbv-card__text p, body.cgbv-js .cgbv-mini.cgbv-open .cgbv-mini__text p { margin: 0; }

/* Gleason equipment cards: icon | model + description, vertically centred */
body.cg-bevel-page .elementor-element.cgbv-eq { gap: 18px !important; align-items: center !important; min-height: 0 !important; }
body.cg-bevel-page .cgbv-eq > .e-con { flex: 1 1 auto !important; width: auto !important; min-height: 0 !important; gap: 6px !important; justify-content: center !important; --padding-top: 0px; --padding-right: 0px; --padding-bottom: 0px; --padding-left: 0px; padding: 0 !important; }
body.cg-bevel-page .cgbv-eq > .e-con > .elementor-element { margin: 0 !important; }
body.cg-bevel-page .cgbv-eq > .cgbv-eq__icon { flex: 0 0 auto !important; width: auto !important; }

/* Coniflex inspection points: breathing room between icon, title and text */
body.cg-bevel-page .elementor-element.cgbv-feat { column-gap: 16px !important; row-gap: 8px !important; align-content: start !important; --padding-top: 24px !important; --padding-right: 24px !important; --padding-bottom: 24px !important; --padding-left: 22px !important; padding: 24px 24px 24px 22px !important; }
body.cg-bevel-page .cgbv-feat > .cgbv-feat__icon { margin: 0 !important; }
body.cg-bevel-page .cgbv-feat > .cgbv-feat__title { margin: 0 !important; align-self: center; }
body.cg-bevel-page .cgbv-feat > .cgbv-feat__title .elementor-heading-title { line-height: 1.3 !important; }
body.cg-bevel-page .elementor-element.cgbv-feats { gap: 16px !important; }

/* -- Hover effects (section classes, editable in Elementor > Advanced > CSS Classes) -- */
:is(.cgbv-notch, .cgbv-poster, .cgbv-feat, .cgpd-reason, .cgbv-rfq, .cgbv-eq, .cgbv-rv):hover > .cgbv-glow { opacity: 1; }

/* 1) cgbv-fx-grid: a blueprint grid lights up around the cursor with a soft gradient */
.cgbv-fx-grid .cgbv-glow { background: radial-gradient(260px circle at var(--gx, -300px) var(--gy, -300px), rgba(53, 99, 224, .12), transparent 65%) !important; mix-blend-mode: normal !important; overflow: hidden; }
.cgbv-fx-grid .cgbv-glow::before { content: ""; position: absolute; inset: 0; border-radius: inherit;
	background-image: linear-gradient(rgba(27, 63, 160, .16) 1px, transparent 1px), linear-gradient(90deg, rgba(27, 63, 160, .16) 1px, transparent 1px);
	background-size: 22px 22px; background-position: -1px -1px;
	-webkit-mask-image: radial-gradient(200px circle at var(--gx, -300px) var(--gy, -300px), #000 0%, rgba(0, 0, 0, .4) 45%, transparent 72%);
	mask-image: radial-gradient(200px circle at var(--gx, -300px) var(--gy, -300px), #000 0%, rgba(0, 0, 0, .4) 45%, transparent 72%); }
.cgbv-fx-grid .cgbv-card:nth-child(3) .cgbv-glow { background: radial-gradient(260px circle at var(--gx, -300px) var(--gy, -300px), rgba(157, 184, 255, .16), transparent 65%) !important; }
.cgbv-fx-grid .cgbv-card:nth-child(3) .cgbv-glow::before { background-image: linear-gradient(rgba(157, 184, 255, .2) 1px, transparent 1px), linear-gradient(90deg, rgba(157, 184, 255, .2) 1px, transparent 1px); }

/* 2) cgbv-fx-shine: a diagonal light sweep crosses the card */
.cgbv-fx-shine .cgbv-glow { background: linear-gradient(115deg, transparent 30%, rgba(53, 99, 224, .10) 44%, rgba(255, 255, 255, .75) 50%, rgba(53, 99, 224, .10) 56%, transparent 70%) !important; background-size: 260% 100% !important; background-position: 130% 0; mix-blend-mode: normal !important; opacity: 1 !important; transition: background-position 0s; }
.cgbv-fx-shine :hover > .cgbv-glow { background-position: -30% 0; transition: background-position 1s var(--pd-ease); }
.cgbv-fx-shine .cgbv-eq .cgbv-glow { background: linear-gradient(115deg, transparent 30%, rgba(242, 165, 65, .08) 44%, rgba(255, 255, 255, .16) 50%, rgba(242, 165, 65, .08) 56%, transparent 70%) !important; background-size: 260% 100% !important; }
.cgbv-fx-shine .cgbv-eq:hover { box-shadow: 0 24px 44px -30px rgba(7, 17, 31, .7); }

/* 3) cgbv-fx-border: a light runs around the card border (navy sections) */
@property --cgbv-a { syntax: "<angle>"; inherits: false; initial-value: 0deg; }
.cgbv-fx-border .cgbv-glow { inset: -1px !important; padding: 1.5px; mix-blend-mode: normal !important;
	background: conic-gradient(from var(--cgbv-a), transparent 0 62%, rgba(157, 184, 255, .9) 78%, #F2A541 88%, transparent 96%) !important;
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0); }
.cgbv-fx-border :hover > .cgbv-glow { animation: cgbvSpinBorder 2.6s linear infinite; }
@keyframes cgbvSpinBorder { to { --cgbv-a: 360deg; } }
.cgbv-fx-border :is(.cgbv-app, .cgbv-feat):hover { background-color: rgba(27, 63, 160, .18) !important; }

/* -- Exploded photos (bevel.js builds .cgbv-shards over the image) -- */
.cgbv-explode__box { position: relative; display: block; }
.cgbv-shards { position: absolute; left: 0; top: 0; z-index: 2; pointer-events: none; }
.cgbv-shard { position: absolute; background-repeat: no-repeat; border-radius: 6px; will-change: transform, opacity; box-shadow: 0 18px 30px -22px rgba(7, 17, 31, .7); }
.cgbv-explode.is-exploding img { visibility: hidden; }
.cgbv-explode.is-exploding.is-merged img { visibility: visible; }
.cgbv-explode.is-merged .cgbv-shards { visibility: hidden; }
.cgbv-shards .cgbv-shard:nth-child(1) { border-top-left-radius: 26px; }
.cgbv-shards .cgbv-shard:nth-child(4) { border-top-right-radius: 26px; }
.cgbv-shards .cgbv-shard:nth-child(13) { border-bottom-left-radius: 26px; }
.cgbv-shards .cgbv-shard:nth-child(16) { border-bottom-right-radius: 26px; }
body.cg-bevel-page .elementor-element.cgbv-s:has(.cgbv-explode) { overflow-x: clip; }
.cgbv-shard { border-radius: calc(6px * var(--k, 1)); }
.cgbv-shards .cgbv-shard:nth-child(1) { border-radius: 26px calc(6px * var(--k, 1)) calc(6px * var(--k, 1)) calc(6px * var(--k, 1)); }
.cgbv-shards .cgbv-shard:nth-child(4) { border-radius: calc(6px * var(--k, 1)) 26px calc(6px * var(--k, 1)) calc(6px * var(--k, 1)); }
.cgbv-shards .cgbv-shard:nth-child(13) { border-radius: calc(6px * var(--k, 1)) calc(6px * var(--k, 1)) calc(6px * var(--k, 1)) 26px; }
.cgbv-shards .cgbv-shard:nth-child(16) { border-radius: calc(6px * var(--k, 1)) calc(6px * var(--k, 1)) 26px calc(6px * var(--k, 1)); }

/* == v11: Spec section = blueprint drawing + range gauges + band ======== */
body.cg-bevel-page .elementor-element.cgbv-spgrid { margin-top: 64px !important; gap: 28px !important; align-items: stretch !important; }
body.cg-bevel-page .elementor-element.cgbv-bp { position: relative; justify-content: center !important; padding: 36px !important; border-radius: 26px; overflow: hidden;
	background-color: #0B1627 !important;
	background-image: linear-gradient(rgba(157, 184, 255, .07) 1px, transparent 1px), linear-gradient(90deg, rgba(157, 184, 255, .07) 1px, transparent 1px), linear-gradient(rgba(157, 184, 255, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(157, 184, 255, .035) 1px, transparent 1px), radial-gradient(90% 70% at 100% 0%, rgba(53, 99, 224, .28), transparent 70%) !important;
	background-size: 60px 60px, 60px 60px, 12px 12px, 12px 12px, 100% 100% !important;
	box-shadow: 0 50px 90px -50px rgba(7, 17, 31, .85); }
.cgbv-bp::before, .cgbv-bp::after { content: ""; position: absolute; width: 22px; height: 22px; border: 1.5px solid rgba(242, 165, 65, .7); pointer-events: none; }
.cgbv-bp::before { top: 16px; left: 16px; border-right: 0; border-bottom: 0; border-radius: 6px 0 0 0; }
.cgbv-bp::after { bottom: 16px; right: 16px; border-left: 0; border-top: 0; border-radius: 0 0 6px 0; }
.cgbv-draw, .cgbv-draw .elementor-widget-container { width: 100%; }
.cgbv-draw img, .cgbv-draw svg { display: block; width: 100% !important; height: auto !important; max-height: none; }

body.cg-bevel-page .elementor-element.cgbv-gauges { gap: 16px !important; justify-content: space-between !important; }
body.cg-bevel-page .elementor-element.cgbv-gauge { position: relative; flex: 1 1 0 !important; display: grid !important; grid-template-columns: 1fr auto; grid-template-areas: "l v" "t v"; align-content: start; column-gap: 24px !important; row-gap: 8px !important;
	padding: 24px 28px 58px !important; border-radius: 20px; background: #fff !important; border: 1px solid var(--pd-line); overflow: hidden;
	transition: transform .5s var(--pd-ease), box-shadow .5s ease, border-color .35s ease !important; }
.cgbv-gauge:hover { transform: translateY(-4px); border-color: rgba(53, 99, 224, .3); box-shadow: 0 34px 60px -40px rgba(12, 24, 37, .55); }
body.cg-bevel-page .cgbv-gauge > .cgbv-gauge__l { grid-area: l; margin: 0 !important; }
body.cg-bevel-page .cgbv-gauge > .cgbv-gauge__v { grid-area: v; margin: 0 !important; align-self: center; }
body.cg-bevel-page .cgbv-gauge > .cgbv-gauge__t { grid-area: t; margin: 0 !important; }
.cgbv-gauge__l .elementor-heading-title { font: 500 11.5px/1.3 var(--pd-mono) !important; letter-spacing: .2em !important; text-transform: uppercase; color: var(--pd-accent) !important; }
.cgbv-gauge__v .elementor-heading-title { font: 600 clamp(28px, 2.6vw, 40px)/1 var(--pd-head) !important; letter-spacing: -.03em !important; color: var(--pd-ink) !important; white-space: nowrap; }
.cgbv-gauge__t p { margin: 0; font-size: 14.5px; line-height: 1.55; color: var(--pd-body); max-width: 300px; }
/* scale track (ticks) + animated fill */
.cgbv-gauge::before, .cgbv-gauge::after { content: ""; position: absolute; left: 28px; right: 28px; bottom: 24px; pointer-events: none; }
.cgbv-gauge::before { height: 14px; border-bottom: 2px solid #E3E9F4; }
.cgbv-gauge--dia::before { background: repeating-linear-gradient(90deg, rgba(27, 63, 160, .28) 0 1px, transparent 1px 6.25%) bottom / 100% 8px no-repeat, repeating-linear-gradient(90deg, rgba(27, 63, 160, .45) 0 1.5px, transparent 1.5px 25%) bottom / 100% 14px no-repeat; }
.cgbv-gauge--face::before { background: repeating-linear-gradient(90deg, rgba(27, 63, 160, .28) 0 1px, transparent 1px 14.285%) bottom / 100% 8px no-repeat, repeating-linear-gradient(90deg, rgba(27, 63, 160, .45) 0 1.5px, transparent 1.5px 28.57%) bottom / 100% 14px no-repeat; }
.cgbv-gauge--dia::after, .cgbv-gauge--face::after { height: 4px; bottom: 23px; border-radius: 4px; background: linear-gradient(90deg, var(--pd-accent), #3563E0 70%, #F2A541); transform-origin: 0 50%; transform: scaleX(1); }
/* pitch: teeth grow from fine (64 D.P.) to coarse (3 D.P.) */
.cgbv-gauge--dp::before { height: 20px; border: 0; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 20' preserveAspectRatio='none'%3E%3Cpath d='M0 20L2 16L4 16L6 20L8 16L10 16L12 20L15 14L17 14L20 20L24 13L27 13L31 20L36 12L39 12L44 20L50 10L54 10L60 20L68 8L73 8L81 20L91 6L97 6L107 20L120 4L128 4L141 20L158 2L168 2L185 20L207 1L220 1L242 20L270 0L286 0L314 20L350 0L368 0L400 20' fill='none' stroke='%23C9D5EA' stroke-width='1.4' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center / 100% 100% no-repeat; }
.cgbv-gauge--dp::after { height: 20px; bottom: 24px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 20' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g'%3E%3Cstop offset='0' stop-color='%231B3FA0'/%3E%3Cstop offset='.7' stop-color='%233563E0'/%3E%3Cstop offset='1' stop-color='%23F2A541'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M0 20L2 16L4 16L6 20L8 16L10 16L12 20L15 14L17 14L20 20L24 13L27 13L31 20L36 12L39 12L44 20L50 10L54 10L60 20L68 8L73 8L81 20L91 6L97 6L107 20L120 4L128 4L141 20L158 2L168 2L185 20L207 1L220 1L242 20L270 0L286 0L314 20L350 0L368 0L400 20' fill='none' stroke='url(%23g)' stroke-width='2' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center / 100% 100% no-repeat; clip-path: inset(0 0 0 0); }
body.cgbv-js .cgbv-gauge--dia::after, body.cgbv-js .cgbv-gauge--face::after { transform: scaleX(0); transition: transform 1.4s var(--pd-ease); }
body.cgbv-js .cgbv-gauge--dp::after { clip-path: inset(0 100% 0 0); transition: clip-path 1.6s var(--pd-ease); }
body.cgbv-js .cgbv-gauge.is-in::after { transform: scaleX(1); clip-path: inset(0 0 0 0); }
body.cgbv-js .cgbv-gauge:nth-child(2)::after { transition-delay: .15s; }
body.cgbv-js .cgbv-gauge:nth-child(3)::after { transition-delay: .3s; }

/* band: gear types | manufacturing */
body.cg-bevel-page .elementor-element.cgbv-spband { margin-top: 28px !important; border-radius: 20px; overflow: hidden; background: #fff !important; border: 1px solid var(--pd-line); }
body.cg-bevel-page .elementor-element.cgbv-sptile { position: relative; flex: 1 1 0 !important; align-items: center !important; gap: 18px !important; padding: 24px 28px !important; transition: background-color .4s ease !important; }
.cgbv-sptile + .cgbv-sptile { border-left: 1px solid var(--pd-line); }
.cgbv-sptile:hover { background-color: #F7F9FD !important; }
body.cg-bevel-page .cgbv-sptile > .cgbv-sptile__icon { flex: 0 0 auto !important; width: auto !important; margin: 0 !important; }
.cgbv-sptile__icon .elementor-icon { display: grid !important; place-items: center; width: 52px; height: 52px; border-radius: 16px; background: var(--pd-navy) !important; color: #F2A541 !important; font-size: 20px !important; transition: transform .6s var(--pd-ease) !important; }
body.cg-bevel-page .cgbv-sptile__icon .elementor-icon :is(svg, svg path) { width: 20px; height: 20px; fill: #F2A541 !important; }
.cgbv-sptile:hover .cgbv-sptile__icon .elementor-icon { transform: rotate(-10deg) scale(1.06); }
body.cg-bevel-page .elementor-element.cgbv-sptile__body { gap: 4px !important; flex: 1 1 auto !important; width: auto !important; }
body.cg-bevel-page .cgbv-sptile__body > .elementor-element { margin: 0 !important; }
.cgbv-sptile__l .elementor-heading-title { font: 500 11px/1.3 var(--pd-mono) !important; letter-spacing: .2em !important; text-transform: uppercase; color: var(--pd-body) !important; }
.cgbv-sptile__v .elementor-heading-title { font: 600 20px/1.3 var(--pd-head) !important; color: var(--pd-ink) !important; }
@media (max-width: 1024px) {
	body.cg-bevel-page .elementor-element.cgbv-bp, body.cg-bevel-page .elementor-element.cgbv-gauges { width: 100% !important; }
}
@media (max-width: 767px) {
	body.cg-bevel-page .elementor-element.cgbv-spgrid { margin-top: 40px !important; }
	body.cg-bevel-page .elementor-element.cgbv-bp { padding: 18px !important; border-radius: 20px; }
	body.cg-bevel-page .elementor-element.cgbv-gauge { grid-template-columns: 1fr; grid-template-areas: "l" "v" "t"; padding: 22px 22px 56px !important; }
	.cgbv-gauge::before, .cgbv-gauge::after { left: 22px; right: 22px; }
	.cgbv-sptile + .cgbv-sptile { border-left: 0; border-top: 1px solid var(--pd-line); }
	body.cg-bevel-page .elementor-element.cgbv-sptile { padding: 20px 22px !important; }
}

/* == v11: Industry cards: staged entrance + richer hover ================= */
.cgbv-inds { counter-reset: cgbvInd; perspective: 1400px; }
.cgbv-ind { counter-increment: cgbvInd; transform-style: preserve-3d; will-change: transform; }
body.cg-bevel-page .elementor-element.cgbv-ind { transition: transform .6s var(--pd-ease), box-shadow .6s ease, clip-path 1.1s var(--pd-ease), opacity .8s ease !important; }
.cgbv-ind .cgbv-ind__img img { filter: saturate(.8) brightness(.9); transition: transform 1.2s var(--pd-ease), filter .6s ease !important; }
/* number tag */
.cgbv-ind > .cgbv-ind__img::after { content: counter(cgbvInd, decimal-leading-zero); position: absolute; top: 20px; left: 22px; z-index: 3; padding: 6px 10px; border-radius: 999px; font: 600 11px/1 var(--pd-mono); letter-spacing: .16em; color: #fff; background: rgba(7, 17, 31, .45); border: 1px solid rgba(255, 255, 255, .22); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); transition: background-color .4s ease, color .4s ease, border-color .4s ease; }
/* light sweep */
.cgbv-ind > .cgbv-ind__img::before { content: ""; position: absolute; inset: 0; z-index: 2; background: linear-gradient(115deg, transparent 35%, rgba(255, 255, 255, .22) 48%, rgba(242, 165, 65, .18) 52%, transparent 65%); background-size: 260% 100%; background-position: 140% 0; pointer-events: none; }
/* colour wash */
.cgbv-ind::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(200deg, rgba(53, 99, 224, .5), rgba(7, 17, 31, 0) 55%); opacity: 0; transition: opacity .6s ease; pointer-events: none; }
/* arrow button replaces the + */
.cgbv-ind .cgbv-plus { top: 18px !important; right: 18px !important; width: 40px !important; height: 40px !important; background: rgba(7, 17, 31, .45) !important; border-color: rgba(255, 255, 255, .28) !important; -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); transform: none !important; }
.cgbv-ind .cgbv-plus::before { content: "\2197"; width: auto !important; height: auto !important; margin: 0 !important; background: none !important; transform: translate(-50%, -52%); font: 600 16px/1 var(--pd-head); color: #fff; transition: transform .5s var(--pd-ease); }
.cgbv-ind .cgbv-plus::after { display: none; }
@media (hover: hover) {
	.cgbv-ind:hover { transform: perspective(1200px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)) translateY(-8px); box-shadow: 0 50px 80px -44px rgba(7, 17, 31, .8), 0 0 0 1px rgba(242, 165, 65, .55); }
	.cgbv-ind:hover .cgbv-ind__img img { transform: scale(1.1); filter: saturate(1.1) brightness(1); }
	.cgbv-ind:hover > .cgbv-ind__img::before { background-position: -40% 0; transition: background-position 1.1s var(--pd-ease); }
	.cgbv-ind:hover::before { opacity: 1; }
	.cgbv-ind:hover > .cgbv-ind__img::after { background: #F2A541; color: #07111F; border-color: #F2A541; }
	.cgbv-ind:hover .cgbv-plus { background: #F2A541 !important; border-color: #F2A541 !important; }
	.cgbv-ind:hover .cgbv-plus::before { color: #07111F; transform: translate(-50%, -52%) rotate(45deg); }
}
/* staged entrance (bevel.js adds .is-in on the grid when it scrolls into view) */
body.cgbv-js .cgbv-inds:not(.is-in) .cgbv-ind { clip-path: inset(100% 0 0 0 round 22px); opacity: .2; }
body.cgbv-js .cgbv-inds .cgbv-ind { clip-path: inset(0 0 0 0 round 22px); }
body.cgbv-js .cgbv-inds:not(.is-in) .cgbv-ind .cgbv-ind__img img { transform: scale(1.35); }
body.cgbv-js .cgbv-inds:not(.is-in) .cgbv-ind .cgbv-ind__title { opacity: 0; transform: translateY(24px); }
body.cgbv-js .cgbv-inds .cgbv-ind .cgbv-ind__title { transition: opacity .7s ease .5s, transform .8s var(--pd-ease) .5s !important; }
body.cgbv-js .cgbv-inds.is-in .cgbv-ind .cgbv-ind__img img { transition: transform 1.6s var(--pd-ease), filter .6s ease !important; }
body.cgbv-js .cgbv-inds .cgbv-ind:nth-child(2) { transition-delay: 0s, 0s, .12s, .12s !important; }
body.cgbv-js .cgbv-inds .cgbv-ind:nth-child(3) { transition-delay: 0s, 0s, .24s, .24s !important; }
body.cgbv-js .cgbv-inds .cgbv-ind:nth-child(4) { transition-delay: 0s, 0s, .12s, .12s !important; }
body.cgbv-js .cgbv-inds .cgbv-ind:nth-child(5) { transition-delay: 0s, 0s, .24s, .24s !important; }
body.cgbv-js .cgbv-inds .cgbv-ind:nth-child(6) { transition-delay: 0s, 0s, .36s, .36s !important; }
@media (prefers-reduced-motion: reduce) {
	body.cgbv-js .cgbv-inds .cgbv-ind { clip-path: none !important; opacity: 1 !important; }
	body.cgbv-js .cgbv-inds .cgbv-ind .cgbv-ind__title { opacity: 1 !important; transform: none !important; }
}
/* v11 fix: Elementor's container ::before (background overlay) sets inset/size - pin the gauge track to the bottom */
body.cg-bevel-page .elementor-element.cgbv-gauge::before, body.cg-bevel-page .elementor-element.cgbv-gauge::after { top: auto !important; left: 28px !important; right: 28px !important; width: auto !important; border-radius: 0; opacity: 1 !important; mix-blend-mode: normal !important; z-index: 1; }
body.cg-bevel-page .elementor-element.cgbv-gauge::before { bottom: 24px !important; height: 14px !important; }
body.cg-bevel-page .elementor-element.cgbv-gauge--dp::before { height: 20px !important; }
body.cg-bevel-page .elementor-element.cgbv-gauge:is(.cgbv-gauge--dia, .cgbv-gauge--face)::after { bottom: 23px !important; height: 4px !important; border-radius: 4px; }
body.cg-bevel-page .elementor-element.cgbv-gauge--dp::after { bottom: 24px !important; height: 20px !important; }
@media (max-width: 767px) { body.cg-bevel-page .elementor-element.cgbv-gauge::before, body.cg-bevel-page .elementor-element.cgbv-gauge::after { left: 22px !important; right: 22px !important; } }
@media (max-width: 1024px) {
	body.cg-bevel-page .elementor-element.cgbv-gauge { flex: 0 0 auto !important; }
	body.cg-bevel-page .elementor-element.cgbv-sptile { flex-direction: row !important; flex: 0 0 auto !important; }
	body.cg-bevel-page .elementor-element.cgbv-spgrid { gap: 20px !important; }
}
body.cg-bevel-page .elementor-element.cgbv-sptile { flex-wrap: nowrap !important; }
body.cg-bevel-page .elementor-element.cgbv-sptile__body { min-width: 0; }

/* == v12: Inspection map (section by12) ================================= */
body.cg-bevel-page .elementor-element.cgbv-imap { margin-top: 64px !important; align-items: stretch !important; gap: 0 !important; counter-reset: cgbvChk; }
body.cg-bevel-page .elementor-element.cgbv-imap__side { flex: 0 0 28% !important; width: 28% !important; justify-content: space-around !important; gap: 12px !important; padding: 10px 0 !important; }
body.cg-bevel-page .elementor-element.cgbv-imap__panel { flex: 0 0 44% !important; width: 44% !important; }

/* check entries */
body.cg-bevel-page .elementor-element.cgbv-ichk { position: relative; counter-increment: cgbvChk; gap: 6px !important; padding: 18px 22px 18px 76px !important; border-radius: 18px; border: 1px solid transparent; background: transparent !important; cursor: pointer; outline: none;
	transition: background-color .45s ease, border-color .45s ease, box-shadow .5s ease, transform .5s var(--pd-ease) !important; }
body.cg-bevel-page .cgbv-ichk > .elementor-element { margin: 0 !important; }
.cgbv-ichk::before { content: counter(cgbvChk, decimal-leading-zero); position: absolute; left: 20px; top: 18px; width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; border: 1px solid rgba(27, 63, 160, .25); background: #fff; font: 700 12px/1 var(--pd-mono); letter-spacing: .04em; color: var(--pd-accent); transition: background-color .4s ease, color .4s ease, border-color .4s ease, transform .5s var(--pd-ease); }
.cgbv-ichk::after { content: ""; position: absolute; top: 38px; width: 34px; height: 2px; background: linear-gradient(90deg, #F2A541, rgba(242, 165, 65, 0)); transform: scaleX(0); transition: transform .5s var(--pd-ease); pointer-events: none; }
.cgbv-imap__side--l .cgbv-ichk::after { left: 100%; transform-origin: 0 50%; background: linear-gradient(90deg, rgba(242, 165, 65, 0), #F2A541); }
.cgbv-imap__side--r .cgbv-ichk::after { right: 100%; transform-origin: 100% 50%; background: linear-gradient(90deg, #F2A541, rgba(242, 165, 65, 0)); }
/* left column mirrors: number on the right, text right-aligned towards the gear */
body.cg-bevel-page .cgbv-imap__side--l .elementor-element.cgbv-ichk { padding: 18px 76px 18px 22px !important; text-align: right; }
.cgbv-imap__side--l .cgbv-ichk::before { left: auto; right: 20px; }
.cgbv-ichk__title .elementor-heading-title { font: 600 17px/1.3 var(--pd-head) !important; color: var(--pd-ink) !important; transition: color .35s ease; }
.cgbv-ichk__text p { margin: 0; font-size: 14px; line-height: 1.55; color: var(--pd-body); }
body.cg-bevel-page .cgbv-ichk:is(.is-active, :focus-visible) { background: #fff !important; border-color: rgba(53, 99, 224, .22); box-shadow: 0 30px 56px -38px rgba(12, 24, 37, .55); }
.cgbv-imap__side--l .cgbv-ichk.is-active { transform: translateX(-6px); }
.cgbv-imap__side--r .cgbv-ichk.is-active { transform: translateX(6px); }
.cgbv-ichk.is-active::before { background: var(--pd-navy); border-color: var(--pd-navy); color: #F2A541; transform: scale(1.08); }
.cgbv-ichk.is-active::after { transform: scaleX(1); }
.cgbv-ichk.is-active .cgbv-ichk__title .elementor-heading-title { color: var(--pd-accent) !important; }

/* navy panel */
body.cg-bevel-page .elementor-element.cgbv-imap__panel { position: relative; justify-content: space-between !important; gap: 18px !important; padding: 28px !important; border-radius: 28px; overflow: hidden;
	background-color: #0B1627 !important;
	background-image: radial-gradient(60% 50% at 50% 42%, rgba(53, 99, 224, .22), transparent 70%), linear-gradient(rgba(157, 184, 255, .06) 1px, transparent 1px), linear-gradient(90deg, rgba(157, 184, 255, .06) 1px, transparent 1px) !important;
	background-size: 100% 100%, 40px 40px, 40px 40px !important;
	box-shadow: 0 60px 100px -60px rgba(7, 17, 31, .9); }
.cgbv-imap__svg, .cgbv-imap__svg .elementor-widget-container { width: 100%; }
.cgbv-imap__svg img, .cgbv-imap__svg svg { display: block; width: 100% !important; max-width: 470px; height: auto !important; margin: 26px auto 0; }
/* live readout (built by bevel.js) */
.cgbv-imap__readout { position: absolute; top: 22px; left: 26px; right: 26px; z-index: 3; display: flex; align-items: center; gap: 12px; font: 600 11px/1.2 var(--pd-mono); letter-spacing: .16em; text-transform: uppercase; color: #9FB0C8; pointer-events: none; }
.cgbv-imap__readout b { color: #F2A541; font-weight: 700; }
.cgbv-imap__readout .t { color: #fff; letter-spacing: .1em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cgbv-imap__readout .dot { width: 8px; height: 8px; flex: 0 0 auto; border-radius: 50%; background: #3DDC97; box-shadow: 0 0 0 0 rgba(61, 220, 151, .6); animation: cgbvLive 1.8s ease-out infinite; }
.cgbv-imap__readout .bar { margin-left: auto; width: 64px; height: 3px; flex: 0 0 auto; border-radius: 3px; background: rgba(157, 184, 255, .18); overflow: hidden; }
.cgbv-imap__readout .bar i { display: block; height: 100%; width: 100%; background: #F2A541; transform-origin: 0 50%; transform: scaleX(0); }
.cgbv-imap__readout.is-run .bar i { animation: cgbvBar var(--dur, 3.2s) linear forwards; }
@keyframes cgbvBar { to { transform: scaleX(1); } }
@keyframes cgbvLive { 70% { box-shadow: 0 0 0 8px rgba(61, 220, 151, 0); } 100% { box-shadow: 0 0 0 0 rgba(61, 220, 151, 0); } }

/* Gleason #6 strip */
body.cg-bevel-page .elementor-element.cgbv-imap__eq { position: relative; z-index: 2; align-items: center !important; gap: 16px !important; padding: 16px 18px !important; border-radius: 18px; background: rgba(255, 255, 255, .04) !important; border: 1px solid rgba(157, 184, 255, .16); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
body.cg-bevel-page .cgbv-imap__eq > .elementor-element { margin: 0 !important; }
body.cg-bevel-page .cgbv-imap__eq > .cgbv-imap__eqicon { flex: 0 0 auto !important; width: auto !important; }
.cgbv-imap__eqicon .elementor-icon { display: grid !important; place-items: center; width: 46px; height: 46px; border-radius: 14px; background: rgba(242, 165, 65, .14) !important; color: #F2A541 !important; font-size: 18px !important; }
body.cg-bevel-page .cgbv-imap__eqicon .elementor-icon :is(svg, svg path) { width: 18px; height: 18px; fill: #F2A541 !important; }
body.cg-bevel-page .elementor-element.cgbv-imap__eqbody { flex: 1 1 auto !important; width: auto !important; min-width: 0; gap: 4px !important; }
body.cg-bevel-page .cgbv-imap__eqbody > .elementor-element { margin: 0 !important; }
.cgbv-imap__eqeb .elementor-heading-title { font: 500 10.5px/1.3 var(--pd-mono) !important; letter-spacing: .18em !important; text-transform: uppercase; color: var(--pd-ice) !important; }
.cgbv-imap__eqeb .elementor-heading-title::before, .cgbv-imap__eqeb .elementor-heading-title::after { display: none !important; }
.cgbv-imap__eqtitle .elementor-heading-title { font: 600 17px/1.3 var(--pd-head) !important; color: #fff !important; }
body.cg-bevel-page .cgbv-imap__eq > .cgbv-imap__eqlink { flex: 0 0 auto !important; width: auto !important; }
body.cg-bevel-page .cgbv-imap__eqlink .elementor-button { padding: 10px 14px !important; border-radius: 12px !important; background: transparent !important; border: 1px solid rgba(242, 165, 65, .45) !important; color: #F2A541 !important; font: 600 12px/1 var(--pd-head) !important; letter-spacing: .06em !important; text-transform: uppercase; box-shadow: none !important; transition: background-color .3s ease, color .3s ease !important; }
body.cg-bevel-page .cgbv-imap__eqlink .elementor-button:hover { background: #F2A541 !important; color: #07111F !important; }
body.cg-bevel-page .cgbv-imap__eqlink .elementor-button :is(svg, svg path) { fill: currentColor !important; }
body.cg-bevel-page .cgbv-imap__eqlink .elementor-button::after, body.cg-bevel-page .cgbv-imap__eqlink .elementor-button::before { display: none !important; }

@media (max-width: 1024px) {
	body.cg-bevel-page .elementor-element.cgbv-imap { gap: 24px !important; }
	body.cg-bevel-page .elementor-element.cgbv-imap__panel { order: -1; flex: 0 0 auto !important; width: 100% !important; max-width: 620px; margin: 0 auto !important; }
	body.cg-bevel-page .elementor-element.cgbv-imap__side { flex: 0 0 auto !important; width: 100% !important; display: grid !important; grid-template-columns: 1fr 1fr; gap: 12px !important; padding: 0 !important; }
	body.cg-bevel-page .cgbv-imap__side--l .elementor-element.cgbv-ichk { padding: 18px 22px 18px 76px !important; text-align: left; }
	.cgbv-imap__side--l .cgbv-ichk::before { left: 20px; right: auto; }
	.cgbv-ichk::after { display: none; }
	body.cg-bevel-page .cgbv-ichk { background: #fff !important; border-color: var(--pd-line); }
	.cgbv-ichk.is-active { transform: none !important; }
}
@media (max-width: 767px) {
	body.cg-bevel-page .elementor-element.cgbv-imap { margin-top: 40px !important; }
	body.cg-bevel-page .elementor-element.cgbv-imap__side { grid-template-columns: 1fr; }
	body.cg-bevel-page .elementor-element.cgbv-imap__panel { padding: 18px !important; border-radius: 22px; }
	.cgbv-imap__readout { top: 16px; left: 18px; right: 18px; font-size: 10px; }
	body.cg-bevel-page .elementor-element.cgbv-imap__eq { flex-wrap: wrap !important; }
	body.cg-bevel-page .cgbv-imap__eq > .cgbv-imap__eqlink { width: 100% !important; }
	body.cg-bevel-page .cgbv-imap__eqlink .elementor-button { width: 100%; justify-content: center; }
}
body.cg-bevel-page .elementor-element.cgbv-imap__eq { flex-wrap: nowrap !important; }
body.cg-bevel-page .cgbv-imap__eq > .elementor-element.cgbv-imap__eqbody { flex: 1 1 0 !important; }
.cgbv-imap__eqeb .elementor-heading-title { white-space: nowrap; }
@media (max-width: 767px) { body.cg-bevel-page .elementor-element.cgbv-imap__eq { flex-wrap: wrap !important; } body.cg-bevel-page .cgbv-imap__eq > .elementor-element.cgbv-imap__eqbody { flex: 1 1 60% !important; } .cgbv-imap__eqeb .elementor-heading-title { white-space: normal; } }
@media (min-width: 768px) and (max-width: 1024px) { body.cg-bevel-page .elementor-element.cgbv-sptile { flex: 1 1 0 !important; min-width: 0; } }
/* Gleason strip: icon + text on one line, link beneath the text */
body.cg-bevel-page .elementor-element.cgbv-imap__eq { flex-wrap: wrap !important; row-gap: 12px !important; }
body.cg-bevel-page .cgbv-imap__eq > .elementor-element.cgbv-imap__eqbody { flex: 1 1 calc(100% - 62px) !important; }
body.cg-bevel-page .cgbv-imap__eq > .cgbv-imap__eqlink { margin-left: 62px !important; }
@media (max-width: 767px) {
	body.cg-bevel-page .cgbv-imap__eq > .cgbv-imap__eqlink { margin-left: 0 !important; }
	.cgbv-imap__readout > span:nth-child(2) { white-space: nowrap; }
	.cgbv-imap__readout .t { flex: 1 1 auto; min-width: 0; }
	.cgbv-imap__readout .bar { width: 40px; }
}
@media (max-width: 1024px) { body.cg-bevel-page .elementor-element.cgbv-imap { flex-direction: column !important; --flex-direction: column; } }

/* == Spur Gears (2598) on the same layout ============================== */
body.cg-bevel-page .elementor-element-sv15act { margin-top: 56px !important; }
body.cgbv-js .cgbv-inds .cgbv-ind:nth-child(7) { transition-delay: 0s, 0s, .12s, .12s !important; }
body.cgbv-js .cgbv-inds .cgbv-ind:nth-child(8) { transition-delay: 0s, 0s, .24s, .24s !important; }
body.cgbv-js .cgbv-inds .cgbv-ind:nth-child(9) { transition-delay: 0s, 0s, .36s, .36s !important; }
body.cg-bevel-page .cgbv-spnote { margin: 32px auto 0 !important; max-width: 720px; text-align: center; }
.cgbv-spnote p { margin: 0; font-size: 15px; line-height: 1.65; color: var(--pd-body); }
.cgbv-spnote a { color: var(--pd-accent); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
body.cg-bevel-page .elementor-element-sv4cta { margin-top: 44px !important; }

/* == v14: mobile card sliders (Bevel + Spur) ============================ */
/* bevel.js adds .cgbv-dots after each track; dots only show on phones */
.cgbv-dots { display: none; }
@media (max-width: 767px) {
	body.cg-bevel-page .elementor-element:is(.cgbv-cards, .cgbv-minis, .cgbv-notches, .cgbv-posters, .cgbv-apps, .cgbv-inds, .cgpd-reasons, .cgbv-rfqs, .cgbv-feats), body.cg-bevel-page .cgbv-imap__track {
		position: relative; display: flex !important; flex-wrap: nowrap !important; grid-template-columns: none !important; justify-content: flex-start !important; align-items: stretch !important;
		overflow-x: auto !important; overflow-y: hidden !important; scroll-snap-type: x mandatory; scroll-padding-inline: 20px; -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain; scrollbar-width: none;
		gap: 14px !important; width: auto !important; max-width: none !important; margin-left: -20px !important; margin-right: -20px !important; padding: 8px 20px 24px !important; }
	body.cg-bevel-page .elementor-element:is(.cgbv-cards, .cgbv-minis, .cgbv-notches, .cgbv-posters, .cgbv-apps, .cgbv-inds, .cgpd-reasons, .cgbv-rfqs, .cgbv-feats)::-webkit-scrollbar, body.cg-bevel-page .cgbv-imap__track::-webkit-scrollbar { display: none; }
	body.cg-bevel-page .elementor-element:is(.cgbv-cards, .cgbv-minis, .cgbv-notches, .cgbv-posters, .cgbv-apps, .cgbv-inds, .cgpd-reasons, .cgbv-rfqs, .cgbv-feats) > .elementor-element, body.cg-bevel-page .cgbv-imap__track > .cgbv-ichk {
		flex: 0 0 84% !important; width: 84% !important; max-width: none !important; min-width: 0; margin: 0 !important; scroll-snap-align: start; scroll-snap-stop: always; grid-column: auto !important; }
	body.cg-bevel-page .cgbv-posters > .cgbv-poster { transform: none !important; min-height: 300px; }
	/* dots */
	.cgbv-dots { display: flex; justify-content: center; align-items: center; gap: 6px; margin: 2px auto 0; }
	.cgbv-dots button { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 8px; background: rgba(27, 63, 160, .22); cursor: pointer; transition: width .35s var(--pd-ease), background-color .3s ease; }
	.cgbv-dots button.is-active { width: 24px; background: var(--pd-accent); }
	.cgpd-sec--navy .cgbv-dots button { background: rgba(157, 184, 255, .3); }
	.cgpd-sec--navy .cgbv-dots button.is-active { background: #F2A541; }
	/* inspection map: the 8 checks move into one track below the gear panel */
	body.cgbv-js.cg-bevel-page .elementor-element.cgbv-imap__side { display: none !important; }
	body.cg-bevel-page .cgbv-imap__track > .cgbv-ichk { background: #fff !important; border-color: var(--pd-line) !important; transform: none !important; }
	body.cg-bevel-page .cgbv-imap__track > .cgbv-ichk.is-active { border-color: rgba(53, 99, 224, .4) !important; box-shadow: 0 20px 40px -30px rgba(12, 24, 37, .55); }
	/* equipment cards: icon stays beside the text */
	body.cg-bevel-page .elementor-element.cgbv-eq { flex-wrap: nowrap !important; }
	body.cg-bevel-page .cgbv-eq > .e-con { flex: 1 1 0 !important; min-width: 0; }
}
@media (max-width: 767px) {
	body.cg-bevel-page .elementor-element:is(.cgbv-cards, .cgbv-minis, .cgbv-notches, .cgbv-posters, .cgbv-apps, .cgbv-inds, .cgpd-reasons, .cgbv-rfqs, .cgbv-feats), body.cg-bevel-page .cgbv-imap__track {
		width: calc(100% + 40px) !important; max-width: calc(100% + 40px) !important; min-width: 0 !important; align-self: stretch !important; flex-shrink: 0 !important; box-sizing: border-box !important; }
	body.cg-bevel-page .elementor-element:is(.cgbv-cards, .cgbv-minis, .cgbv-notches, .cgbv-posters, .cgbv-apps, .cgbv-inds, .cgpd-reasons, .cgbv-rfqs, .cgbv-feats) > .elementor-element, body.cg-bevel-page .cgbv-imap__track > .cgbv-ichk { flex: 0 0 calc(100% - 64px) !important; width: calc(100% - 64px) !important; }
}
@media (max-width: 767px) {
	body.cg-bevel-page .elementor-element:is(.cgbv-cards, .cgbv-minis, .cgbv-notches, .cgbv-posters, .cgbv-apps, .cgbv-inds, .cgpd-reasons, .cgbv-rfqs, .cgbv-feats), body.cg-bevel-page .cgbv-imap__track {
		width: 100% !important; max-width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; padding: 8px 0 24px !important; scroll-padding-inline: 0; }
	body.cg-bevel-page .elementor-element:is(.cgbv-cards, .cgbv-minis, .cgbv-notches, .cgbv-posters, .cgbv-apps, .cgbv-inds, .cgpd-reasons, .cgbv-rfqs, .cgbv-feats) > .elementor-element, body.cg-bevel-page .cgbv-imap__track > .cgbv-ichk { flex: 0 0 calc(100% - 36px) !important; width: calc(100% - 36px) !important; }
}

/* == Product pages: text-only spec gauge (no scale track) ============== */
body.cg-bevel-page .elementor-element.cgbv-gauge.cgbv-gauge--plain { padding-bottom: 24px !important; }
body.cg-bevel-page .elementor-element.cgbv-gauge.cgbv-gauge--plain::before, body.cg-bevel-page .elementor-element.cgbv-gauge.cgbv-gauge--plain::after { display: none !important; }
body.cg-bevel-page .cgbv-gauge--plain .cgbv-gauge__v .elementor-heading-title { font-size: clamp(22px, 2vw, 28px) !important; white-space: normal; text-align: right; }
body.cg-bevel-page .cgbv-gauge__v .elementor-heading-title { white-space: normal; }
@media (max-width: 767px) { body.cg-bevel-page .cgbv-gauge--plain .cgbv-gauge__v .elementor-heading-title { text-align: left; } }

/* == Class-based spacing (no page-specific element IDs) ================= */
/* action rows / links that follow a card grid (quote buttons, "view all" links) */
body.cg-bevel-page .cgpd-in > .elementor-element:is(.cgbv-cards, .cgbv-minis, .cgbv-notches, .cgbv-posters, .cgbv-apps, .cgbv-inds, .cgpd-reasons, .cgbv-rfqs, .cgbv-feats) ~ .elementor-element.cgbv-center { margin-top: 56px !important; }
body.cg-bevel-page .cgpd-in > .cgbv-dots + .elementor-element.cgbv-center { margin-top: 28px !important; }
@media (max-width: 767px) { body.cg-bevel-page .cgpd-in > .elementor-element:is(.cgbv-cards, .cgbv-minis, .cgbv-notches, .cgbv-posters, .cgbv-apps, .cgbv-inds, .cgpd-reasons, .cgbv-rfqs, .cgbv-feats) ~ .elementor-element.cgbv-center { margin-top: 28px !important; } }
