/* GEBA SAFETY — isolated front-end design system */
:root {
--gn-ink: #111318;
--gn-black: #090b10;
--gn-night: #0d1017;
--gn-paper: #f2f2f5;
--gn-white: #ffffff;
--gn-muted: #a7aab3;
--gn-line: rgba(255, 255, 255, 0.14);
--gn-indigo: #4c46d8;
--gn-magenta: #ff4897;
--gn-amber: #ffba20;
--gn-shell: min(1440px, calc(100vw - 64px));
--gn-font: Manrope, Inter, "Helvetica Neue", Arial, sans-serif;
--gn-mono: "IBM Plex Mono", "SFMono-Regular", Consolas, monospace;
}
body.geba-next-takeover {
margin: 0;
background: var(--gn-black);
}
.geba-next,
.geba-next *,
.geba-next *::before,
.geba-next *::after {
box-sizing: border-box;
}
.geba-next {
position: relative;
isolation: isolate;
overflow: clip;
width: 100%;
color: var(--gn-white);
background: var(--gn-black);
font-family: var(--gn-font);
font-size: 16px;
line-height: 1.5;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
}
.geba-next :where(h1, h2, h3, p, figure) {
margin: 0;
}
.geba-next :where(button, input, select, textarea) {
font: inherit;
}
.geba-next :where(a) {
color: inherit;
text-decoration: none;
}
.geba-next :where(img) {
display: block;
max-width: 100%;
}
.geba-next :where(button, a, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])):focus-visible {
outline: 3px solid var(--gn-amber);
outline-offset: 4px;
}
.geba-next .gn-shell {
width: var(--gn-shell);
margin-inline: auto;
}
.geba-next .gn-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
}
.geba-next .gn-skip {
position: fixed;
z-index: 10001;
top: 10px;
left: 10px;
padding: 10px 14px;
color: var(--gn-black);
background: var(--gn-amber);
transform: translateY(-160%);
}
.geba-next .gn-skip:focus {
transform: translateY(0);
}
/* Header */
.geba-next .gn-header {
position: absolute;
z-index: 100;
inset: 0 0 auto;
height: 88px;
border-bottom: 1px solid rgba(255, 255, 255, 0.08);
transition: background .25s ease, height .25s ease, transform .25s ease;
}
.geba-next .gn-header.is-sticky {
position: fixed;
height: 72px;
background: rgba(9, 11, 16, 0.86);
border-color: rgba(255, 255, 255, 0.12);
backdrop-filter: blur(18px);
}
.geba-next .gn-header__inner {
display: flex;
align-items: center;
justify-content: space-between;
height: 100%;
}
.geba-next .gn-logo {
display: inline-flex;
align-items: baseline;
min-height: 44px;
font-size: 18px;
font-weight: 800;
letter-spacing: -0.06em;
}
.geba-next .gn-logo img {
width: auto;
max-width: 156px;
height: 44px;
object-fit: contain;
}
.geba-next .gn-logo b {
color: var(--gn-magenta);
font-weight: inherit;
}
.geba-next .gn-nav {
display: flex;
align-items: center;
gap: clamp(20px, 2.4vw, 40px);
font-size: 13px;
font-weight: 650;
}
.geba-next .gn-nav > a {
position: relative;
color: rgba(255, 255, 255, 0.76);
}
.geba-next .gn-nav > a::after {
position: absolute;
right: 0;
bottom: -8px;
left: 0;
height: 1px;
content: "";
background: var(--gn-magenta);
transform: scaleX(0);
transform-origin: right;
transition: transform .25s ease;
}
.geba-next .gn-nav > a:hover {
color: #fff;
}
.geba-next .gn-nav > a:hover::after {
transform: scaleX(1);
transform-origin: left;
}
.geba-next .gn-nav__cta {
min-height: 42px;
padding: 0 18px;
color: #fff;
font-weight: 750;
background: transparent;
border: 1px solid rgba(255, 255, 255, 0.28);
border-radius: 0;
cursor: pointer;
transition: color .2s ease, background .2s ease, border .2s ease;
}
.geba-next .gn-nav__cta:hover {
color: var(--gn-black);
background: var(--gn-white);
border-color: var(--gn-white);
}
.geba-next .gn-menu-toggle {
display: none;
}
/* Hero */
.geba-next .gn-hero {
position: relative;
min-height: min(940px, 100svh);
padding: 164px 0 34px;
overflow: hidden;
background:
radial-gradient(circle at 75% 42%, rgba(76, 70, 216, .18), transparent 30%),
linear-gradient(140deg, #12151c 0%, #090b10 55%, #0b0e15 100%);
}
.geba-next .gn-hero::before {
position: absolute;
inset: 0;
pointer-events: none;
content: "";
background: linear-gradient(90deg, transparent 0 49.93%, rgba(255,255,255,.04) 50%, transparent 50.07%);
}
.geba-next .gn-hero__mesh {
position: absolute;
top: -20%;
right: -10%;
width: 65vw;
aspect-ratio: 1;
opacity: .28;
background-image:
linear-gradient(rgba(255,255,255,.07) 1px, transparent 1px),
linear-gradient(90deg, rgba(255,255,255,.07) 1px, transparent 1px);
background-size: 56px 56px;
mask-image: radial-gradient(circle, #000 15%, transparent 67%);
transform: perspective(600px) rotateX(62deg) rotateZ(-15deg);
}
.geba-next .gn-hero__grid {
position: relative;
display: grid;
grid-template-columns: minmax(0, 5fr) minmax(420px, 6fr);
align-items: center;
gap: 8vw;
min-height: 560px;
}
.geba-next .gn-eyebrow,
.geba-next .gn-section-index {
display: flex;
align-items: center;
gap: 10px;
margin-bottom: 26px;
color: var(--gn-magenta);
font-family: var(--gn-mono);
font-size: 10px;
font-weight: 700;
letter-spacing: .12em;
text-transform: uppercase;
}
.geba-next .gn-eyebrow span {
width: 28px;
height: 1px;
background: currentColor;
}
.geba-next .gn-hero h1 {
max-width: 760px;
font-size: clamp(54px, 6.2vw, 104px);
font-weight: 760;
letter-spacing: -.065em;
line-height: .94;
}
.geba-next .gn-lede {
max-width: 610px;
margin-top: 32px;
color: rgba(255, 255, 255, .66);
font-size: clamp(16px, 1.25vw, 20px);
line-height: 1.65;
}
.geba-next .gn-actions {
display: flex;
flex-wrap: wrap;
gap: 12px;
margin-top: 38px;
}
.geba-next .gn-button {
display: inline-flex;
align-items: center;
justify-content: space-between;
gap: 32px;
min-height: 54px;
padding: 0 20px;
color: #fff;
font-size: 12px;
font-weight: 760;
line-height: 1;
border: 1px solid transparent;
border-radius: 0;
cursor: pointer;
transition: transform .2s ease, background .2s ease, color .2s ease;
}
.geba-next .gn-button:hover {
transform: translateY(-2px);
}
.geba-next .gn-button--primary {
color: #100c11;
background: var(--gn-magenta);
}
.geba-next .gn-button--primary:hover {
background: #ff71ae;
}
.geba-next .gn-button--line {
background: transparent;
border-color: rgba(255, 255, 255, .25);
}
.geba-next .gn-button--line:hover {
color: var(--gn-black);
background: var(--gn-white);
}
.geba-next .gn-hero-product {
position: relative;
display: block;
border: 1px solid rgba(255, 255, 255, .13);
background: rgba(10, 12, 17, .58);
box-shadow: 0 50px 100px rgba(0, 0, 0, .32);
transform: perspective(1100px) rotateY(var(--gn-tilt-x, -2deg)) rotateX(var(--gn-tilt-y, 1deg));
transform-style: preserve-3d;
transition: transform .25s ease, border-color .25s ease;
}
.geba-next .gn-hero-product:hover {
border-color: rgba(255, 72, 151, .55);
}
.geba-next .gn-hero-product__index {
position: absolute;
z-index: 2;
top: 20px;
left: 20px;
color: rgba(255,255,255,.5);
font-family: var(--gn-mono);
font-size: 9px;
letter-spacing: .1em;
}
.geba-next .gn-hero-product > img {
width: 100%;
aspect-ratio: 16 / 10;
object-fit: cover;
}
.geba-next .gn-hero-product__footer {
display: flex;
align-items: center;
justify-content: space-between;
padding: 16px 20px;
border-top: 1px solid rgba(255,255,255,.1);
}
.geba-next .gn-hero-product__footer > span:first-child {
display: grid;
gap: 4px;
}
.geba-next .gn-hero-product__footer small {
color: var(--gn-muted);
font-family: var(--gn-mono);
font-size: 8px;
letter-spacing: .1em;
text-transform: uppercase;
}
.geba-next .gn-hero-product__footer strong {
font-size: 13px;
}
.geba-next .gn-hero-product__arrow {
display: grid;
width: 38px;
height: 38px;
place-items: center;
background: var(--gn-white);
color: var(--gn-black);
}
.geba-next .gn-hero__meta {
position: absolute;
right: 0;
bottom: 32px;
left: 0;
display: grid;
grid-template-columns: repeat(3, 1fr) 1.4fr;
gap: 24px;
padding-top: 22px;
border-top: 1px solid rgba(255,255,255,.13);
}
.geba-next .gn-hero__meta > span {
display: flex;
align-items: center;
gap: 12px;
color: rgba(255,255,255,.48);
font-family: var(--gn-mono);
font-size: 9px;
letter-spacing: .04em;
text-transform: uppercase;
}
.geba-next .gn-hero__meta b {
color: #fff;
font-size: 13px;
}
.geba-next .gn-scroll-cue {
justify-content: flex-end;
}
.geba-next .gn-scroll-cue i {
position: relative;
display: block;
width: 70px;
height: 1px;
overflow: hidden;
background: rgba(255,255,255,.18);
}
.geba-next .gn-scroll-cue i::after {
position: absolute;
inset: 0;
content: "";
background: var(--gn-magenta);
animation: gn-scroll 2.2s ease-in-out infinite;
transform: translateX(-100%);
}
@keyframes gn-scroll {
50%, 100% { transform: translateX(100%); }
}
/* Product story */
.geba-next .gn-product-story {
min-height: 920px;
padding: 150px 0;
color: var(--gn-ink);
background: var(--gn-paper);
}
.geba-next .gn-product-story__grid {
display: grid;
grid-template-columns: minmax(320px, .8fr) minmax(520px, 1.4fr);
gap: 8vw;
align-items: center;
}
.geba-next .gn-product-story__copy {
position: sticky;
top: 140px;
align-self: start;
padding-top: 24px;
}
.geba-next .gn-product-story h2,
.geba-next .gn-section-head h2,
.geba-next .gn-engineering h2,
.geba-next .gn-cta h2 {
font-size: clamp(42px, 5vw, 80px);
font-weight: 720;
letter-spacing: -.06em;
line-height: 1;
}
.geba-next .gn-product-story h2 em {
color: var(--gn-indigo);
font-style: normal;
}
.geba-next .gn-product-story__copy > p:not(.gn-section-index) {
max-width: 500px;
margin: 38px 0;
color: #636772;
line-height: 1.75;
}
.geba-next .gn-text-link {
display: inline-flex;
align-items: center;
gap: 22px;
padding-bottom: 8px;
color: inherit;
font-size: 12px;
font-weight: 750;
border-bottom: 1px solid currentColor;
}
.geba-next .gn-product-stage {
position: relative;
min-height: 700px;
overflow: hidden;
background: #0b0d12;
border: 1px solid rgba(17, 19, 24, .12);
}
.geba-next .gn-product-stage::before {
position: absolute;
inset: 0;
z-index: 1;
content: "";
background-image:
linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
background-size: 48px 48px;
mask-image: radial-gradient(circle, #000, transparent 75%);
}
.geba-next .gn-product-stage > img {
position: absolute;
inset: 8% -13%;
width: 126%;
height: 84%;
object-fit: cover;
filter: saturate(1.08) contrast(1.03);
transform: scale(var(--gn-story-scale, .96)) rotate(var(--gn-story-rotate, -1deg));
transition: transform .08s linear;
}
.geba-next .gn-product-stage__orbit {
position: absolute;
z-index: 2;
top: 50%;
left: 50%;
width: 62%;
aspect-ratio: 1;
border: 1px solid rgba(255,255,255,.14);
border-radius: 50%;
transform: translate(-50%, -50%) rotateX(70deg);
}
.geba-next .gn-product-stage__orbit::before,
.geba-next .gn-product-stage__orbit::after {
position: absolute;
inset: 14%;
content: "";
border: 1px solid rgba(255,72,151,.25);
border-radius: inherit;
}
.geba-next .gn-product-stage__orbit::after {
inset: 32%;
}
.geba-next .gn-callout {
position: absolute;
z-index: 3;
display: grid;
gap: 2px;
min-width: 142px;
padding: 12px;
color: rgba(255,255,255,.66);
font-family: var(--gn-mono);
font-size: 9px;
line-height: 1.5;
background: rgba(9,11,16,.82);
border-left: 2px solid var(--gn-magenta);
backdrop-filter: blur(8px);
}
.geba-next .gn-callout b {
color: #fff;
font-size: 8px;
letter-spacing: .08em;
text-transform: uppercase;
}
.geba-next .gn-callout--one { top: 16%; right: 7%; }
.geba-next .gn-callout--two { bottom: 15%; left: 7%; }
.geba-next .gn-callout--three { right: 9%; bottom: 26%; }
/* Material cinematic */
.geba-next .gn-material {
position: relative;
min-height: 760px;
display: grid;
align-items: end;
overflow: hidden;
}
.geba-next .gn-material > img,
.geba-next .gn-material__shade {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
}
.geba-next .gn-material > img {
object-fit: cover;
object-position: center;
scale: 1.04;
transition: scale 1.2s ease;
}
.geba-next .gn-material:hover > img { scale: 1; }
.geba-next .gn-material__shade {
background: linear-gradient(90deg, rgba(7,9,14,.9), rgba(7,9,14,.25) 58%, rgba(7,9,14,.4)), linear-gradient(0deg, rgba(7,9,14,.9), transparent 55%);
}
.geba-next .gn-material__content {
position: relative;
z-index: 2;
padding-bottom: 92px;
}
.geba-next .gn-material h2 {
max-width: 820px;
font-size: clamp(52px, 7vw, 110px);
font-weight: 720;
letter-spacing: -.065em;
line-height: .92;
}
.geba-next .gn-material__content > p:last-child {
max-width: 570px;
margin-top: 26px;
color: rgba(255,255,255,.7);
font-size: 17px;
}
/* Solutions */
.geba-next .gn-solutions,
.geba-next .gn-products {
padding: 140px 0;
color: var(--gn-ink);
background: var(--gn-paper);
}
.geba-next .gn-section-head {
display: grid;
grid-template-columns: minmax(0, 1.5fr) minmax(300px, .65fr);
gap: 8vw;
align-items: end;
margin-bottom: 76px;
}
.geba-next .gn-section-head h2 {
max-width: 920px;
}
.geba-next .gn-section-head > p {
color: #646873;
line-height: 1.75;
}
.geba-next .gn-solution-list {
border-top: 1px solid rgba(17,19,24,.22);
}
.geba-next .gn-solution-list > a {
display: grid;
grid-template-columns: 60px 1.2fr 1fr 40px;
gap: 24px;
align-items: center;
min-height: 112px;
padding: 16px 8px;
border-bottom: 1px solid rgba(17,19,24,.18);
transition: padding .25s ease, color .25s ease, background .25s ease;
}
.geba-next .gn-solution-list > a:hover {
padding-inline: 24px;
color: #fff;
background: var(--gn-indigo);
}
.geba-next .gn-solution-list__no {
font-family: var(--gn-mono);
font-size: 10px;
}
.geba-next .gn-solution-list strong {
font-size: clamp(22px, 2.4vw, 38px);
font-weight: 650;
letter-spacing: -.04em;
}
.geba-next .gn-solution-list > a > span:nth-child(3) {
color: #70747d;
font-size: 13px;
}
.geba-next .gn-solution-list > a:hover > span:nth-child(3) { color: rgba(255,255,255,.7); }
.geba-next .gn-solution-list > a > b { text-align: right; }
/* Sectors */
.geba-next .gn-sectors {
padding: 140px 0;
background: var(--gn-black);
}
.geba-next .gn-section-head--dark > p { color: rgba(255,255,255,.58); }
.geba-next .gn-section-head--dark .gn-text-link { justify-self: end; }
.geba-next .gn-sector-grid {
display: grid;
grid-template-columns: 1.25fr .75fr;
grid-template-rows: repeat(2, minmax(300px, 38vw));
gap: 12px;
}
.geba-next .gn-sector {
position: relative;
min-height: 330px;
overflow: hidden;
background: #171a22;
}
.geba-next .gn-sector--wide { grid-row: 1 / 3; }
.geba-next .gn-sector > img,
.geba-next .gn-sector__shade,
.geba-next .gn-sector__grid {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
}
.geba-next .gn-sector > img {
object-fit: cover;
filter: saturate(.72) contrast(1.08);
transition: transform .7s cubic-bezier(.2,.8,.2,1), filter .7s ease;
}
.geba-next .gn-sector__shade {
background: linear-gradient(0deg, rgba(7,9,14,.94), rgba(7,9,14,.1) 70%);
}
.geba-next .gn-sector:hover > img {
transform: scale(1.045);
filter: saturate(1) contrast(1.04);
}
.geba-next .gn-sector__grid {
opacity: .58;
background:
radial-gradient(circle at 70% 25%, rgba(255,72,151,.26), transparent 34%),
linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px),
linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);
background-size: auto, 42px 42px, 42px 42px;
}
.geba-next .gn-sector__content {
position: absolute;
z-index: 2;
inset: auto 0 0;
display: grid;
gap: 8px;
padding: 32px;
}
.geba-next .gn-sector__content small {
color: var(--gn-magenta);
font-family: var(--gn-mono);
font-size: 9px;
letter-spacing: .1em;
}
.geba-next .gn-sector__content strong {
font-size: clamp(28px, 3.5vw, 58px);
font-weight: 680;
letter-spacing: -.055em;
line-height: 1;
}
.geba-next .gn-sector:not(.gn-sector--wide) .gn-sector__content strong {
font-size: clamp(24px, 2.2vw, 38px);
}
.geba-next .gn-sector__content em {
width: max-content;
margin-top: 12px;
padding-bottom: 5px;
font-size: 10px;
font-style: normal;
font-weight: 700;
border-bottom: 1px solid rgba(255,255,255,.5);
}
/* Engineering */
.geba-next .gn-engineering {
padding: 150px 0;
color: var(--gn-ink);
background: #fff;
}
.geba-next .gn-engineering__grid {
display: grid;
grid-template-columns: minmax(340px, .9fr) minmax(460px, 1.1fr);
gap: 10vw;
}
.geba-next .gn-engineering__grid > div:first-child {
position: sticky;
top: 130px;
align-self: start;
}
.geba-next .gn-engineering__steps {
border-top: 1px solid rgba(17,19,24,.2);
}
.geba-next .gn-engineering__steps article {
display: grid;
grid-template-columns: 54px 1fr;
gap: 32px;
padding: 44px 0;
border-bottom: 1px solid rgba(17,19,24,.16);
}
.geba-next .gn-engineering__steps article > span {
color: var(--gn-magenta);
font-family: var(--gn-mono);
font-size: 10px;
}
.geba-next .gn-engineering__steps h3 {
margin: 0 0 12px;
font-size: 26px;
font-weight: 680;
letter-spacing: -.035em;
}
.geba-next .gn-engineering__steps p {
max-width: 540px;
color: #6c707a;
line-height: 1.75;
}
/* Dynamic products */
.geba-next .gn-products { background: #e8e9ed; }
.geba-next .gn-products__grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 12px;
}
.geba-next .gn-product-tile {
position: relative;
display: grid;
grid-template-rows: auto 1fr;
min-width: 0;
background: #f6f6f8;
border: 1px solid rgba(17,19,24,.1);
transition: transform .25s ease, box-shadow .25s ease;
}
.geba-next .gn-product-tile:hover {
transform: translateY(-6px);
box-shadow: 0 22px 50px rgba(17,19,24,.12);
}
.geba-next .gn-product-tile__image {
display: grid;
aspect-ratio: 1 / .82;
overflow: hidden;
place-items: center;
background: #fff;
}
.geba-next .gn-product-tile__image img {
width: 100%;
height: 100%;
object-fit: contain;
transition: transform .5s ease;
}
.geba-next .gn-product-tile:hover img { transform: scale(1.04); }
.geba-next .gn-product-tile__image i { color: #d4d5da; font-size: 34px; font-style: normal; font-weight: 800; }
.geba-next .gn-product-tile__body {
display: grid;
align-content: start;
gap: 12px;
min-height: 140px;
padding: 20px 48px 20px 20px;
}
.geba-next .gn-product-tile__body strong { font-size: 17px; line-height: 1.25; }
.geba-next .gn-product-tile__body small { color: #737680; font-size: 12px; line-height: 1.55; }
.geba-next .gn-product-tile > b { position: absolute; right: 18px; bottom: 20px; }
/* Trust, CTA, footer */
.geba-next .gn-trust {
color: var(--gn-ink);
background: #fff;
border-bottom: 1px solid rgba(17,19,24,.12);
}
.geba-next .gn-trust__inner {
display: grid;
grid-template-columns: .65fr 1.35fr;
gap: 40px;
align-items: center;
min-height: 180px;
}
.geba-next .gn-trust__inner p { color: #686c76; font-size: 13px; }
.geba-next .gn-trust__inner div { display: flex; justify-content: space-between; gap: 30px; align-items: center; }
.geba-next .gn-trust__inner span { font-weight: 820; letter-spacing: -.04em; text-align: center; }
.geba-next .gn-cta {
position: relative;
min-height: 680px;
display: grid;
place-items: center;
overflow: hidden;
text-align: center;
background: #0b0e15;
}
.geba-next .gn-cta::before {
position: absolute;
inset: 0;
content: "";
opacity: .24;
background-image:
linear-gradient(rgba(255,255,255,.07) 1px, transparent 1px),
linear-gradient(90deg, rgba(255,255,255,.07) 1px, transparent 1px);
background-size: 52px 52px;
mask-image: radial-gradient(circle, #000, transparent 74%);
}
.geba-next .gn-cta__orb {
position: absolute;
width: min(650px, 70vw);
aspect-ratio: 1;
background: radial-gradient(circle, rgba(76,70,216,.35), rgba(255,72,151,.1) 38%, transparent 68%);
}
.geba-next .gn-cta__inner { position: relative; z-index: 2; display: grid; justify-items: center; }
.geba-next .gn-cta h2 { max-width: 1050px; }
.geba-next .gn-cta .gn-section-index { justify-content: center; }
.geba-next .gn-footer {
color: rgba(255,255,255,.67);
background: #07090d;
}
.geba-next .gn-footer__top {
display: grid;
grid-template-columns: 1.35fr .65fr .72fr .82fr;
gap: 7vw;
padding-top: 76px;
padding-bottom: 76px;
}
.geba-next .gn-footer__top > div { display: grid; align-content: start; gap: 10px; }
.geba-next .gn-footer__top > div:first-child p { max-width: 420px; margin-top: 18px; font-size: 12px; line-height: 1.7; }
.geba-next .gn-footer__top small { margin-bottom: 12px; color: rgba(255,255,255,.38); font-family: var(--gn-mono); font-size: 9px; letter-spacing: .1em; text-transform: uppercase; }
.geba-next .gn-footer__top a:not(.gn-logo) { width: max-content; font-size: 13px; }
.geba-next .gn-footer__top a:not(.gn-logo):hover { color: #fff; }
.geba-next .gn-footer__bottom {
display: flex;
justify-content: space-between;
gap: 20px;
padding-top: 24px;
padding-bottom: 24px;
font-family: var(--gn-mono);
font-size: 8px;
letter-spacing: .06em;
text-transform: uppercase;
border-top: 1px solid rgba(255,255,255,.12);
}
/* Dialog and form */
.geba-next .gn-dialog {
width: min(940px, calc(100vw - 32px));
max-height: calc(100svh - 32px);
padding: 0;
overflow: auto;
color: var(--gn-ink);
background: #f5f5f7;
border: 0;
border-radius: 0;
box-shadow: 0 30px 120px rgba(0,0,0,.55);
}
.geba-next .gn-dialog[open] { display: grid; grid-template-columns: .75fr 1.25fr; }
.geba-next .gn-dialog::backdrop { background: rgba(5,6,9,.84); backdrop-filter: blur(7px); }
.geba-next .gn-dialog__close {
position: absolute;
z-index: 3;
top: 16px;
right: 16px;
display: grid;
width: 44px;
height: 44px;
padding: 0;
place-items: center;
color: var(--gn-ink);
font-size: 28px;
line-height: 1;
background: transparent;
border: 1px solid rgba(17,19,24,.22);
border-radius: 0;
cursor: pointer;
}
.geba-next .gn-dialog__intro {
padding: 72px 38px;
color: #fff;
background: var(--gn-indigo);
}
.geba-next .gn-dialog__intro .gn-section-index { color: #ffc4de; }
.geba-next .gn-dialog__intro h2 { margin-bottom: 24px; font-size: 42px; letter-spacing: -.055em; line-height: 1; }
.geba-next .gn-dialog__intro > p:last-child { color: rgba(255,255,255,.7); font-size: 14px; line-height: 1.7; }
.geba-next .gn-form {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 18px 14px;
padding: 72px 48px 48px;
}
.geba-next .gn-form label:not(.gn-form__check) { display: grid; gap: 7px; }
.geba-next .gn-form label > span { font-size: 10px; font-weight: 720; letter-spacing: .04em; }
.geba-next .gn-form input:not([type="checkbox"]),
.geba-next .gn-form select,
.geba-next .gn-form textarea {
width: 100%;
min-height: 48px;
padding: 11px 12px;
color: var(--gn-ink);
background: #fff;
border: 1px solid #d5d6dc;
border-radius: 0;
box-shadow: none;
}
.geba-next .gn-form textarea { resize: vertical; }
.geba-next .gn-form__wide { grid-column: 1 / -1; }
.geba-next .gn-form__check { display: flex; gap: 10px; align-items: flex-start; }
.geba-next .gn-form__check input { flex: 0 0 auto; width: 18px; height: 18px; margin: 1px 0 0; }
.geba-next .gn-form__check span { color: #666a73; font-size: 10px; font-weight: 500; line-height: 1.5; }
.geba-next .gn-form__check a { color: var(--gn-indigo); text-decoration: underline; }
.geba-next .gn-form__submit { display: flex; align-items: center; gap: 18px; }
.geba-next .gn-form__submit p { color: #555a64; font-size: 11px; line-height: 1.45; }
.geba-next .gn-form.is-success .gn-form__submit p { color: #087b48; }
.geba-next .gn-form.is-error .gn-form__submit p { color: #b42318; }
.geba-next .gn-form button[disabled] { opacity: .6; cursor: wait; }
.geba-next .gn-honeypot { position: absolute !important; left: -9999px !important; }
/* Reveal is progressive enhancement: content stays visible without JS. */
.geba-next.is-enhanced [data-gn-reveal] {
opacity: 0;
transform: translateY(26px);
transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1);
}
.geba-next.is-enhanced [data-gn-reveal].is-visible {
opacity: 1;
transform: translateY(0);
}
@media (max-width: 1100px) {
:root { --gn-shell: min(100% - 40px, 1100px); }
.geba-next .gn-hero { min-height: 960px; }
.geba-next .gn-hero__grid { grid-template-columns: .9fr 1.1fr; gap: 4vw; }
.geba-next .gn-hero h1 { font-size: clamp(52px, 6.6vw, 78px); }
.geba-next .gn-product-story__grid { grid-template-columns: .75fr 1.25fr; gap: 4vw; }
.geba-next .gn-product-stage { min-height: 620px; }
.geba-next .gn-products__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 820px) {
:root { --gn-shell: calc(100% - 32px); }
.geba-next .gn-header,
.geba-next .gn-header.is-sticky { height: 70px; }
.geba-next .gn-menu-toggle {
position: relative;
z-index: 102;
display: grid;
gap: 6px;
width: 44px;
height: 44px;
padding: 13px 9px;
color: #fff;
background: transparent;
border: 0;
place-content: center;
}
.geba-next .gn-menu-toggle i { display: block; width: 24px; height: 1px; background: currentColor; transition: transform .2s ease; }
.geba-next .gn-menu-toggle[aria-expanded="true"] i:first-of-type { transform: translateY(3.5px) rotate(45deg); }
.geba-next .gn-menu-toggle[aria-expanded="true"] i:last-of-type { transform: translateY(-3.5px) rotate(-45deg); }
.geba-next .gn-nav {
position: fixed;
z-index: 101;
inset: 0;
display: grid;
align-content: center;
justify-items: start;
gap: 8px;
padding: 88px 9vw;
visibility: hidden;
opacity: 0;
background: rgba(9,11,16,.97);
transform: translateY(-12px);
transition: opacity .2s ease, transform .2s ease, visibility .2s;
}
.geba-next .gn-nav.is-open { visibility: visible; opacity: 1; transform: translateY(0); }
.geba-next .gn-nav > a { width: 100%; padding: 13px 0; color: #fff; font-size: clamp(25px, 7vw, 38px); letter-spacing: -.04em; }
.geba-next .gn-nav > a::after { display: none; }
.geba-next .gn-nav__cta { width: 100%; min-height: 54px; margin-top: 22px; }
.geba-next .gn-hero { min-height: auto; padding: 124px 0 38px; }
.geba-next .gn-hero__grid { grid-template-columns: 1fr; gap: 54px; min-height: 0; }
.geba-next .gn-hero h1 { font-size: clamp(52px, 14vw, 82px); }
.geba-next .gn-hero__copy { max-width: 680px; }
.geba-next .gn-hero-product { width: min(100%, 650px); justify-self: end; }
.geba-next .gn-hero__meta { position: static; grid-template-columns: repeat(3, 1fr); margin-top: 54px; }
.geba-next .gn-scroll-cue { display: none !important; }
.geba-next .gn-hero__meta > span { display: grid; gap: 5px; }
.geba-next .gn-product-story { min-height: auto; padding: 100px 0; }
.geba-next .gn-product-story__grid { grid-template-columns: 1fr; gap: 60px; }
.geba-next .gn-product-story__copy,
.geba-next .gn-engineering__grid > div:first-child { position: static; }
.geba-next .gn-product-stage { min-height: min(740px, 105vw); }
.geba-next .gn-material { min-height: 650px; }
.geba-next .gn-solutions,
.geba-next .gn-sectors,
.geba-next .gn-engineering,
.geba-next .gn-products { padding: 100px 0; }
.geba-next .gn-section-head { grid-template-columns: 1fr; gap: 28px; margin-bottom: 58px; }
.geba-next .gn-solution-list > a { grid-template-columns: 40px 1fr 32px; gap: 16px; }
.geba-next .gn-solution-list > a > span:nth-child(3) { display: none; }
.geba-next .gn-sector-grid { grid-template-columns: 1fr 1fr; grid-template-rows: minmax(500px, 75vw) minmax(340px, 52vw); }
.geba-next .gn-sector--wide { grid-row: auto; grid-column: 1 / -1; }
.geba-next .gn-engineering__grid { grid-template-columns: 1fr; gap: 65px; }
.geba-next .gn-trust__inner { grid-template-columns: 1fr; gap: 28px; padding-top: 45px; padding-bottom: 45px; }
.geba-next .gn-dialog[open] { display: block; }
.geba-next .gn-dialog__intro { padding: 60px 64px 40px 30px; }
.geba-next .gn-form { padding: 40px 30px; }
}
@media (max-width: 560px) {
:root { --gn-shell: calc(100% - 24px); }
.geba-next { font-size: 15px; }
.geba-next .gn-hero { padding-top: 112px; }
.geba-next .gn-hero h1 { font-size: clamp(49px, 15.4vw, 68px); line-height: .92; }
.geba-next .gn-lede { margin-top: 24px; font-size: 15px; }
.geba-next .gn-actions { display: grid; grid-template-columns: 1fr; }
.geba-next .gn-button { width: 100%; }
.geba-next .gn-hero-product__footer strong { font-size: 11px; }
.geba-next .gn-hero__meta { grid-template-columns: 1fr; gap: 14px; }
.geba-next .gn-hero__meta > span { grid-template-columns: 48px 1fr; align-items: center; }
.geba-next .gn-product-story h2,
.geba-next .gn-section-head h2,
.geba-next .gn-engineering h2,
.geba-next .gn-cta h2 { font-size: clamp(39px, 12vw, 54px); }
.geba-next .gn-product-stage { min-height: 118vw; }
.geba-next .gn-product-stage > img { inset: 16% -25%; width: 150%; height: 68%; }
.geba-next .gn-callout { min-width: 120px; padding: 9px; font-size: 8px; }
.geba-next .gn-callout--one { top: 10%; right: 3%; }
.geba-next .gn-callout--two { bottom: 10%; left: 3%; }
.geba-next .gn-callout--three { right: 3%; bottom: 26%; }
.geba-next .gn-material { min-height: 590px; }
.geba-next .gn-material h2 { font-size: clamp(48px, 15vw, 68px); }
.geba-next .gn-material__content { padding-bottom: 48px; }
.geba-next .gn-solution-list > a { min-height: 92px; }
.geba-next .gn-solution-list strong { font-size: 21px; }
.geba-next .gn-sector-grid { display: grid; grid-template-columns: 1fr; grid-template-rows: repeat(3, minmax(380px, 115vw)); }
.geba-next .gn-sector--wide { grid-column: auto; }
.geba-next .gn-sector__content { padding: 24px; }
.geba-next .gn-sector:not(.gn-sector--wide) .gn-sector__content strong,
.geba-next .gn-sector__content strong { font-size: 34px; }
.geba-next .gn-engineering__steps article { grid-template-columns: 34px 1fr; gap: 18px; padding: 34px 0; }
.geba-next .gn-products__grid { grid-template-columns: 1fr; }
.geba-next .gn-trust__inner div { display: grid; grid-template-columns: 1fr; justify-items: start; }
.geba-next .gn-cta { min-height: 620px; }
.geba-next .gn-footer__top { grid-template-columns: 1fr; gap: 44px; padding-top: 58px; padding-bottom: 58px; }
.geba-next .gn-footer__bottom { display: grid; }
.geba-next .gn-dialog { width: calc(100vw - 16px); max-height: calc(100svh - 16px); }
.geba-next .gn-dialog__intro h2 { font-size: 36px; }
.geba-next .gn-form { grid-template-columns: 1fr; padding: 36px 20px; }
.geba-next .gn-form label,
.geba-next .gn-form__wide { grid-column: 1; }
.geba-next .gn-form__submit { display: grid; }
}
/* v1.2 full-site pages */
.geba-next .gn-page-hero { position: relative; min-height: 620px; padding: 190px 0 110px; overflow: hidden; background: #080a10; }
.geba-next .gn-page-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(6,8,13,.98) 0%,rgba(6,8,13,.84) 48%,rgba(6,8,13,.48) 100%),var(--gn-page-image) center/cover no-repeat; transform: scale(1.03); }
.geba-next .gn-page-hero::after { content: ""; position: absolute; inset: 0; opacity: .22; background-image: linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(90deg,#000,transparent 78%); }
.geba-next .gn-page-hero__inner { position: relative; z-index: 1; }
.geba-next .gn-breadcrumb--dark { margin: 0 0 76px; color: rgba(255,255,255,.48); }
.geba-next .gn-breadcrumb--dark a,.geba-next .gn-breadcrumb--dark b { color: inherit; }
.geba-next .gn-page-hero h1 { max-width: 980px; margin-top: 28px; font-size: clamp(68px,8.5vw,132px); line-height: .86; letter-spacing: -.075em; text-wrap: balance; }
.geba-next .gn-page-hero__inner > p:last-child { max-width: 690px; margin-top: 42px; color: rgba(255,255,255,.66); font-size: clamp(18px,1.6vw,25px); line-height: 1.6; }
.geba-next .gn-page-solutions { padding: 130px 0; color: var(--gn-ink); background: #f4f4f6; }
.geba-next .gn-page-solutions__grid { display: grid; grid-template-columns: repeat(2,1fr); margin-top: 74px; border-top: 1px solid #cfd0d5; border-left: 1px solid #cfd0d5; }
.geba-next .gn-page-solutions__grid a { position: relative; min-height: 330px; padding: 42px; color: inherit; text-decoration: none; border-right: 1px solid #cfd0d5; border-bottom: 1px solid #cfd0d5; transition: background .25s,color .25s; }
.geba-next .gn-page-solutions__grid a:hover { color: #fff; background: var(--gn-indigo); }
.geba-next .gn-page-solutions__grid small { color: var(--gn-magenta); font: 700 11px/1 var(--gn-mono); }
.geba-next .gn-page-solutions__grid h3 { max-width: 520px; margin: 105px 0 18px; font-size: clamp(30px,3.2vw,52px); line-height: .96; letter-spacing: -.055em; }
.geba-next .gn-page-solutions__grid p { max-width: 500px; color: #6c7079; line-height: 1.7; }
.geba-next .gn-page-solutions__grid a:hover p { color: rgba(255,255,255,.68); }
.geba-next .gn-page-solutions__grid a > span { position: absolute; top: 38px; right: 42px; font-size: 24px; }
.geba-next .gn-page-about { padding: 150px 0; color: var(--gn-ink); background: #fff; }
.geba-next .gn-page-about__grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 9vw; }
.geba-next .gn-page-about h2 { max-width: 720px; margin-top: 22px; font-size: clamp(48px,6vw,92px); line-height: .92; letter-spacing: -.07em; }
.geba-next .gn-page-about__copy > p { color: #666b74; font-size: clamp(20px,1.8vw,28px); line-height: 1.6; }
.geba-next .gn-page-facts { display: grid; grid-template-columns: repeat(3,1fr); margin-top: 70px; border-top: 1px solid #d7d8dd; }
.geba-next .gn-page-facts span { padding: 28px 12px 0 0; color: #777b84; font-size: 12px; }
.geba-next .gn-page-facts b { display: block; margin-bottom: 8px; color: var(--gn-indigo); font-size: clamp(28px,3vw,48px); letter-spacing: -.06em; }
.geba-next .gn-contact-page { padding: 130px 0; color: var(--gn-ink); background: #f1f1f4; }
.geba-next .gn-contact-page__grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: 9vw; align-items: start; }
.geba-next .gn-contact-page__details h2 { margin: 24px 0 70px; font-size: clamp(52px,6vw,90px); line-height: .92; letter-spacing: -.07em; }
.geba-next .gn-contact-page__details > a,.geba-next .gn-contact-page__details > div { display: block; padding: 28px 0; color: inherit; text-decoration: none; border-top: 1px solid #d0d2d7; }
.geba-next .gn-contact-page__details small { display: block; margin-bottom: 9px; color: #858994; font: 700 10px/1 var(--gn-mono); letter-spacing: .12em; text-transform: uppercase; }
.geba-next .gn-contact-page__details b,.geba-next .gn-contact-page__details p { font-size: 18px; line-height: 1.6; }
.geba-next .gn-form--page { padding: clamp(28px,4vw,62px); color: #fff; background: #0d1017; }
.geba-next .gn-form--page :where(input,select,textarea) { color: #fff; background: rgba(255,255,255,.04); border-color: rgba(255,255,255,.18); }
.geba-next .gn-form--page option { color: #111; }
.geba-next .gn-form--page .gn-form__check span,.geba-next .gn-form--page .gn-form__check a { color: rgba(255,255,255,.62); }
.geba-next .gn-page-editor { padding: 125px 0; color: var(--gn-ink); background: #fff; }
.geba-next .gn-page-editor__inner { max-width: 1080px; }
.geba-next .gn-page-editor__inner :where(h1,h2,h3,h4) { margin: 1.2em 0 .45em; line-height: 1; letter-spacing: -.05em; }
.geba-next .gn-page-editor__inner h2 { font-size: clamp(42px,5vw,76px); }
.geba-next .gn-page-editor__inner h3 { font-size: clamp(28px,3vw,46px); }
.geba-next .gn-page-editor__inner :where(p,li) { color: #5f646e; font-size: 18px; line-height: 1.8; }
.geba-next .gn-page-editor__inner :where(img,iframe) { max-width: 100%; height: auto; }
.geba-next .gn-page-editor__inner a { color: var(--gn-indigo); }
.geba-next .gn-page-editor__inner :where(.content-section,.section-title-col,.section-content-col,.row,.col-sm-12,.col-md-6) { width: auto; max-width: none; margin-left: 0; margin-right: 0; padding-left: 0; padding-right: 0; }
.geba-next .gn-page-cta { padding: 110px 0; background: var(--gn-indigo); }
.geba-next .gn-page-cta__inner { display: flex; justify-content: space-between; gap: 60px; align-items: end; }
.geba-next .gn-page-cta h2 { max-width: 800px; margin-top: 18px; font-size: clamp(46px,5vw,82px); line-height: .92; letter-spacing: -.065em; }
.geba-next .gn-page-cta .gn-button--primary { color: #111; background: #fff; }
.geba-next .gn-not-found { min-height: 78vh; padding: 190px 0 120px; background: radial-gradient(circle at 76% 24%,rgba(76,70,216,.36),transparent 32%),#090b10; }
.geba-next .gn-not-found__inner > span { display: block; color: rgba(255,255,255,.06); font-size: clamp(150px,28vw,440px); font-weight: 800; line-height: .72; letter-spacing: -.09em; }
.geba-next .gn-not-found h1 { max-width: 900px; margin-top: -3vw; font-size: clamp(54px,7vw,110px); line-height: .9; letter-spacing: -.07em; }
.geba-next .gn-not-found p { margin: 34px 0; color: rgba(255,255,255,.58); font-size: 20px; }
.geba-next .gn-not-found__inner > div { display: flex; gap: 12px; flex-wrap: wrap; }
@media (max-width: 820px) {
.geba-next .gn-page-hero { min-height: 540px; padding: 135px 0 80px; }
.geba-next .gn-breadcrumb--dark { margin-bottom: 58px; }
.geba-next .gn-page-hero h1 { font-size: clamp(58px,15vw,92px); }
.geba-next .gn-page-solutions__grid,.geba-next .gn-page-about__grid,.geba-next .gn-contact-page__grid { grid-template-columns: 1fr; }
.geba-next .gn-page-about__grid,.geba-next .gn-contact-page__grid { gap: 70px; }
.geba-next .gn-page-cta__inner { display: grid; }
}
@media (max-width: 560px) {
.geba-next .gn-page-hero::before { background: linear-gradient(0deg,rgba(6,8,13,.98) 0%,rgba(6,8,13,.72) 100%),var(--gn-page-image) center/cover no-repeat; }
.geba-next .gn-page-hero h1 { font-size: 56px; }
.geba-next .gn-page-hero__inner > p:last-child { font-size: 17px; }
.geba-next .gn-page-solutions,.geba-next .gn-page-about,.geba-next .gn-contact-page,.geba-next .gn-page-editor { padding: 88px 0; }
.geba-next .gn-page-solutions__grid { grid-template-columns: 1fr; margin-top: 52px; }
.geba-next .gn-page-solutions__grid a { min-height: 270px; padding: 28px; }
.geba-next .gn-page-solutions__grid h3 { margin-top: 82px; }
.geba-next .gn-page-facts { grid-template-columns: 1fr; }
.geba-next .gn-page-facts span { padding: 20px 0; border-bottom: 1px solid #d7d8dd; }
.geba-next .gn-form--page { grid-template-columns: 1fr; }
.geba-next .gn-form--page .gn-form__wide { grid-column: auto; }
.geba-next .gn-page-cta { padding: 82px 0; }
}
@media (prefers-reduced-motion: reduce) {
.geba-next *,
.geba-next *::before,
.geba-next *::after {
scroll-behavior: auto !important;
animation-duration: .01ms !important;
animation-iteration-count: 1 !important;
transition-duration: .01ms !important;
}
.geba-next.is-enhanced [data-gn-reveal] { opacity: 1; transform: none; }
.geba-next .gn-hero-product,
.geba-next .gn-product-stage > img { transform: none; }
}
/* =========================================================
GEBA SAFETY — cinematic portfolio and catalog expansion
========================================================= */
.geba-next .gn-header--inner {
position: fixed;
height: 72px;
background: rgba(9, 11, 16, .94);
backdrop-filter: blur(18px);
}
.geba-next .gn-nav .gn-mega {
position: relative;
}
.geba-next .gn-nav .gn-mega > summary {
position: relative;
color: rgba(255,255,255,.76);
list-style: none;
cursor: pointer;
}
.geba-next .gn-nav .gn-mega > summary::-webkit-details-marker { display: none; }
.geba-next .gn-nav .gn-mega > summary::after { margin-left: 6px; content: "+"; color: var(--gn-magenta); }
.geba-next .gn-nav .gn-mega[open] > summary::after { content: "−"; }
.geba-next .gn-mega__panel {
position: absolute;
z-index: 120;
top: calc(100% + 28px);
right: -250px;
display: grid;
grid-template-columns: 1.3fr .7fr;
gap: 46px;
width: min(820px, calc(100vw - 40px));
padding: 34px;
color: #fff;
background: rgba(11,13,18,.98);
border: 1px solid rgba(255,255,255,.14);
box-shadow: 0 28px 80px rgba(0,0,0,.45);
backdrop-filter: blur(20px);
}
.geba-next .gn-mega__panel > div { display: grid; grid-template-columns: 1fr 1fr; align-content: start; gap: 2px 18px; }
.geba-next .gn-mega__panel > div:last-child { grid-template-columns: 1fr; }
.geba-next .gn-mega__panel small { grid-column: 1 / -1; margin-bottom: 14px; color: var(--gn-magenta); font: 700 9px/1.4 var(--gn-mono); letter-spacing: .12em; }
.geba-next .gn-mega__panel a { display: flex; gap: 10px; padding: 9px 0; color: rgba(255,255,255,.72); font-size: 12px; border-bottom: 1px solid rgba(255,255,255,.07); }
.geba-next .gn-mega__panel a:hover { color: #fff; }
.geba-next .gn-mega__panel a span { color: rgba(255,255,255,.3); font-family: var(--gn-mono); font-size: 9px; }
.geba-next .gn-mega__panel .gn-mega__all { margin-top: 10px; color: var(--gn-magenta); border-bottom-color: var(--gn-magenta); }
.geba-next .gn-hero__cinema {
position: absolute;
inset: 0;
overflow: hidden;
}
.geba-next .gn-hero__cinema img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: 58% center;
filter: saturate(.78) contrast(1.08) brightness(.65);
animation: gn-cinematic-drift 18s ease-in-out infinite alternate;
}
.geba-next .gn-hero__cinema span {
position: absolute;
inset: 0;
background:
linear-gradient(90deg, rgba(7,9,14,.98) 0%, rgba(7,9,14,.82) 38%, rgba(7,9,14,.22) 72%, rgba(7,9,14,.58) 100%),
linear-gradient(0deg, rgba(7,9,14,.92), transparent 52%, rgba(7,9,14,.42));
}
@keyframes gn-cinematic-drift {
from { transform: scale(1.045) translate3d(-.8%, 0, 0); }
to { transform: scale(1.11) translate3d(1.4%, -.8%, 0); }
}
.geba-next .gn-hero__grid {
z-index: 2;
grid-template-columns: minmax(0, 1.55fr) minmax(300px, .55fr);
gap: 7vw;
}
.geba-next .gn-hero__copy { max-width: 900px; }
.geba-next .gn-hero h1 { max-width: 920px; text-shadow: 0 8px 40px rgba(0,0,0,.24); }
.geba-next .gn-hero-product { align-self: end; margin-bottom: 74px; background: rgba(8,10,15,.76); backdrop-filter: blur(8px); }
.geba-next .gn-hero-product > img { aspect-ratio: 1 / 1.04; }
.geba-next .gn-button--dark { color: #fff; background: var(--gn-black); border-color: var(--gn-black); }
.geba-next .gn-button--dark:hover { color: #fff; background: var(--gn-indigo); }
/* Product universe */
.geba-next .gn-universe {
padding: 150px 0;
color: var(--gn-ink);
background: #fff;
}
.geba-next .gn-universe__grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
border-top: 1px solid rgba(17,19,24,.2);
border-left: 1px solid rgba(17,19,24,.2);
}
.geba-next .gn-universe__grid > a {
position: relative;
display: grid;
align-content: space-between;
min-height: 190px;
padding: 22px;
border-right: 1px solid rgba(17,19,24,.2);
border-bottom: 1px solid rgba(17,19,24,.2);
transition: color .25s ease, background .25s ease, transform .25s ease;
}
.geba-next .gn-universe__grid > a:hover { z-index: 2; color: #fff; background: var(--gn-indigo); transform: translateY(-4px); }
.geba-next .gn-universe__grid small { color: var(--gn-magenta); font: 700 9px/1 var(--gn-mono); }
.geba-next .gn-universe__grid strong { max-width: 220px; margin-top: 34px; font-size: clamp(20px,1.7vw,29px); font-weight: 680; letter-spacing: -.045em; line-height: 1.05; }
.geba-next .gn-universe__grid em { margin-top: 10px; color: #777b84; font-size: 10px; font-style: normal; }
.geba-next .gn-universe__grid > a:hover em { color: rgba(255,255,255,.65); }
.geba-next .gn-universe__grid > a > span { position: absolute; top: 20px; right: 20px; }
.geba-next .gn-universe__actions { display: flex; gap: 12px; justify-content: flex-end; margin-top: 34px; }
/* Brand worlds */
.geba-next .gn-brand-world {
padding: 150px 0;
color: var(--gn-ink);
background: #fff;
}
.geba-next .gn-brand-world__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.geba-next .gn-brand-card {
--brand-accent: var(--gn-magenta);
position: relative;
display: grid;
align-content: start;
min-height: 330px;
padding: 30px;
overflow: hidden;
color: #fff;
background: #111318;
border: 1px solid rgba(255,255,255,.08);
transition: transform .3s ease, box-shadow .3s ease;
}
.geba-next .gn-brand-card::before { position: absolute; inset: auto -15% -35% auto; width: 75%; aspect-ratio: 1; content: ""; background: radial-gradient(circle, color-mix(in srgb, var(--brand-accent) 42%, transparent), transparent 67%); }
.geba-next .gn-brand-card:hover { transform: translateY(-6px); box-shadow: 0 28px 70px rgba(17,19,24,.18); }
.geba-next .gn-brand-card--orange { --brand-accent: #ff7417; }
.geba-next .gn-brand-card--teal { --brand-accent: #00a4a6; }
.geba-next .gn-brand-card--blue { --brand-accent: #2586e7; }
.geba-next .gn-brand-card--amber { --brand-accent: #ffba20; }
.geba-next .gn-brand-card--slate { --brand-accent: #9aa6bb; }
.geba-next .gn-brand-card--lime { --brand-accent: #a7cf3a; }
.geba-next .gn-brand-card small { color: var(--brand-accent); font: 700 9px/1 var(--gn-mono); letter-spacing: .12em; }
.geba-next .gn-brand-card strong { position: relative; margin-top: 54px; font-size: clamp(30px,3vw,50px); font-weight: 820; letter-spacing: -.07em; line-height: .95; }
.geba-next .gn-brand-card p { position: relative; max-width: 340px; margin-top: 22px; color: rgba(255,255,255,.62); font-size: 13px; line-height: 1.65; }
.geba-next .gn-brand-card em { position: relative; margin-top: 24px; color: rgba(255,255,255,.42); font: 500 9px/1 var(--gn-mono); font-style: normal; }
.geba-next .gn-brand-card > span { position: absolute; top: 28px; right: 28px; }
/* Catalog shell */
.geba-next.gn-inner-site { min-height: 100vh; }
.geba-next .gn-catalog-hero {
position: relative;
padding: 190px 0 100px;
overflow: hidden;
background: radial-gradient(circle at 80% 20%, rgba(76,70,216,.35), transparent 32%), #0a0c11;
}
.geba-next .gn-catalog-hero__grid { position: absolute; inset: 0; opacity: .2; background-image: linear-gradient(rgba(255,255,255,.07) 1px, transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px); background-size: 54px 54px; mask-image: linear-gradient(90deg,#000,transparent); }
.geba-next .gn-catalog-hero__inner { position: relative; display: grid; grid-template-columns: 1.4fr .45fr; gap: 8vw; align-items: end; }
.geba-next .gn-catalog-hero h1 { font-size: clamp(68px,10vw,150px); font-weight: 760; letter-spacing: -.075em; line-height: .82; }
.geba-next .gn-catalog-hero__inner > div:first-child > p:last-child { max-width: 720px; margin-top: 34px; color: rgba(255,255,255,.62); font-size: 18px; line-height: 1.7; }
.geba-next .gn-catalog-hero__stat { display: grid; gap: 8px; padding: 24px 0 0 24px; border-top: 1px solid rgba(255,255,255,.25); border-left: 1px solid rgba(255,255,255,.25); }
.geba-next .gn-catalog-hero__stat strong { color: var(--gn-magenta); font-size: 62px; letter-spacing: -.07em; line-height: 1; }
.geba-next .gn-catalog-hero__stat span { color: rgba(255,255,255,.54); font: 500 10px/1.5 var(--gn-mono); text-transform: uppercase; }
.geba-next .gn-category-rail { color: var(--gn-ink); background: #fff; border-bottom: 1px solid rgba(17,19,24,.13); }
.geba-next .gn-category-rail__track { display: flex; overflow-x: auto; scrollbar-width: thin; }
.geba-next .gn-category-rail__track > a { flex: 0 0 220px; display: grid; grid-template-columns: 28px 1fr 16px; gap: 8px; align-items: center; min-height: 82px; padding: 14px; border-right: 1px solid rgba(17,19,24,.13); }
.geba-next .gn-category-rail__track small { color: var(--gn-magenta); font: 600 8px/1 var(--gn-mono); }
.geba-next .gn-category-rail__track strong { font-size: 12px; line-height: 1.2; }
.geba-next .gn-catalog-body { padding: 110px 0 130px; color: var(--gn-ink); background: #f2f2f5; }
.geba-next .gn-catalog-toolbar { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 40px; }
.geba-next .gn-catalog-toolbar h2 { font-size: clamp(40px,5vw,72px); letter-spacing: -.06em; line-height: 1; }
.geba-next .gn-catalog-toolbar > p { color: #6b6f79; font-size: 12px; }
.geba-next .gn-catalog-filter { display: grid; grid-template-columns: 1.5fr 1fr auto; gap: 12px; align-items: end; margin-bottom: 46px; padding: 20px; background: #fff; border: 1px solid rgba(17,19,24,.12); }
.geba-next .gn-catalog-filter label { display: grid; gap: 7px; }
.geba-next .gn-catalog-filter label span { font-size: 10px; font-weight: 750; text-transform: uppercase; }
.geba-next .gn-catalog-filter input,.geba-next .gn-catalog-filter select { width: 100%; min-height: 52px; padding: 0 14px; color: var(--gn-ink); background: #f7f7f9; border: 1px solid #d5d6dc; border-radius: 0; box-shadow: none; }
.geba-next .gn-catalog-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; }
.geba-next .gn-catalog-card { display: grid; grid-template-rows: auto 1fr; min-width: 0; overflow: hidden; color: var(--gn-ink); background: #fff; border: 1px solid rgba(17,19,24,.1); transition: transform .25s ease, box-shadow .25s ease; }
.geba-next .gn-catalog-card:hover { transform: translateY(-6px); box-shadow: 0 24px 60px rgba(17,19,24,.12); }
.geba-next .gn-catalog-card__media { position: relative; display: grid; aspect-ratio: 1/.92; place-items: center; overflow: hidden; background: #f9f9fa; }
.geba-next .gn-catalog-card__media img { width: 100%; height: 100%; object-fit: contain; transition: transform .5s ease; }
.geba-next .gn-catalog-card:hover .gn-catalog-card__media img { transform: scale(1.04); }
.geba-next .gn-catalog-card__media i { color: #d4d5da; font-size: 34px; font-style: normal; font-weight: 850; }
.geba-next .gn-catalog-card__media b { position: absolute; right: 10px; bottom: 10px; padding: 8px 10px; color: #fff; font-size: 9px; background: var(--gn-black); opacity: 0; transform: translateY(6px); transition: opacity .2s,transform .2s; }
.geba-next .gn-catalog-card:hover .gn-catalog-card__media b { opacity: 1; transform: translateY(0); }
.geba-next .gn-catalog-card__body { display: grid; align-content: start; gap: 10px; min-height: 150px; padding: 20px; }
.geba-next .gn-catalog-card__body small { color: var(--gn-indigo); font: 750 9px/1 var(--gn-mono); text-transform: uppercase; }
.geba-next .gn-catalog-card__body strong { font-size: 15px; line-height: 1.35; }
.geba-next .gn-catalog-card__body em { color: #747781; font-size: 11px; font-style: normal; line-height: 1.5; }
.geba-next .gn-catalog-empty { display: grid; justify-items: start; gap: 12px; padding: 64px; background: #fff; border: 1px solid rgba(17,19,24,.1); }
.geba-next .gn-catalog-empty strong { font-size: 28px; }
.geba-next .gn-pagination { margin-top: 50px; }
.geba-next .gn-pagination ul { display: flex; flex-wrap: wrap; gap: 6px; padding: 0; margin: 0; list-style: none; }
.geba-next .gn-pagination a,.geba-next .gn-pagination span { display: grid; min-width: 42px; height: 42px; padding: 0 10px; place-items: center; color: var(--gn-ink); background: #fff; border: 1px solid rgba(17,19,24,.15); }
.geba-next .gn-pagination .current { color: #fff; background: var(--gn-indigo); }
.geba-next .gn-shop-bridge { padding: 100px 0; background: var(--gn-indigo); }
.geba-next .gn-shop-bridge__inner { display: grid; grid-template-columns: 1fr auto; gap: 40px; align-items: end; }
.geba-next .gn-shop-bridge h2 { max-width: 900px; font-size: clamp(42px,5.5vw,78px); letter-spacing: -.065em; line-height: .95; }
.geba-next .gn-shop-bridge .gn-section-index { color: #ffc4de; }
/* Product detail */
.geba-next .gn-product-detail { padding: 128px 0 110px; color: var(--gn-ink); background: #f2f2f5; }
.geba-next .gn-breadcrumb { display: flex; gap: 10px; margin: 24px 0 38px; overflow: hidden; color: #777b84; font-size: 10px; white-space: nowrap; }
.geba-next .gn-breadcrumb b { overflow: hidden; color: var(--gn-ink); text-overflow: ellipsis; }
.geba-next .gn-product-detail__grid { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(420px,.95fr); gap: 7vw; align-items: start; }
.geba-next .gn-product-gallery { min-width: 0; }
.geba-next .gn-product-gallery__main { display: grid; aspect-ratio: 1/1; place-items: center; background: #fff; border: 1px solid rgba(17,19,24,.1); }
.geba-next .gn-product-gallery__main img { width: 100%; height: 100%; object-fit: contain; }
.geba-next .gn-product-gallery__thumbs { display: flex; gap: 8px; margin-top: 10px; overflow-x: auto; }
.geba-next .gn-product-gallery__thumbs button { flex: 0 0 82px; aspect-ratio: 1; padding: 5px; background: #fff; border: 1px solid rgba(17,19,24,.15); border-radius: 0; cursor: pointer; }
.geba-next .gn-product-gallery__thumbs button.is-active { border-color: var(--gn-indigo); box-shadow: inset 0 0 0 1px var(--gn-indigo); }
.geba-next .gn-product-gallery__thumbs img { width: 100%; height: 100%; object-fit: contain; }
.geba-next .gn-product-detail__info { position: sticky; top: 120px; }
.geba-next .gn-product-detail__info .gn-eyebrow { color: var(--gn-indigo); }
.geba-next .gn-product-detail h1 { font-size: clamp(42px,4.7vw,72px); font-weight: 720; letter-spacing: -.06em; line-height: .98; }
.geba-next .gn-product-detail__meta { display: flex; flex-wrap: wrap; gap: 30px; margin: 32px 0; padding: 20px 0; border-block: 1px solid rgba(17,19,24,.15); }
.geba-next .gn-product-detail__meta span { display: grid; gap: 4px; font: 600 11px/1.3 var(--gn-mono); }
.geba-next .gn-product-detail__meta small { color: #858892; font-size: 8px; }
.geba-next .gn-product-detail__lede { color: #656a73; font-size: 16px; line-height: 1.75; }
.geba-next .gn-product-detail__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 34px; }
.geba-next .gn-product-detail__actions .gn-button--line { color: var(--gn-ink); border-color: rgba(17,19,24,.28); }
.geba-next .gn-product-detail__actions .gn-button--line:hover { color: #fff; background: var(--gn-black); }
.geba-next .gn-product-detail__trust { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; margin-top: 42px; background: rgba(17,19,24,.14); border: 1px solid rgba(17,19,24,.14); }
.geba-next .gn-product-detail__trust span { padding: 14px 10px; text-align: center; font-size: 9px; background: #fff; }
.geba-next .gn-product-content { padding: 130px 0; color: var(--gn-ink); background: #fff; }
.geba-next .gn-product-content__grid { display: grid; grid-template-columns: .55fr 1fr; gap: 10vw; }
.geba-next .gn-product-content h2,.geba-next .gn-product-support h2 { font-size: clamp(42px,5vw,76px); letter-spacing: -.06em; line-height: 1; }
.geba-next .gn-product-content__body { min-width: 0; color: #555a63; line-height: 1.75; }
.geba-next .gn-product-content__body :where(h2,h3,h4) { margin: 36px 0 14px; color: var(--gn-ink); letter-spacing: -.035em; }
.geba-next .gn-product-content__body :where(ul,ol) { padding-left: 22px; }
.geba-next .gn-product-content__body img { height: auto; }
.geba-next .gn-product-support { padding: 100px 0; background: #10131a; }
.geba-next .gn-product-support__grid { display: grid; grid-template-columns: 1.2fr .7fr auto; gap: 6vw; align-items: end; }
.geba-next .gn-product-support__grid > p { color: rgba(255,255,255,.58); line-height: 1.7; }
.geba-next .gn-related { padding: 130px 0; color: var(--gn-ink); background: #e8e9ed; }
@media (max-width: 1100px) {
.geba-next .gn-nav { gap: 18px; }
.geba-next .gn-universe__grid { grid-template-columns: repeat(3,1fr); }
.geba-next .gn-catalog-grid { grid-template-columns: repeat(3,1fr); }
.geba-next .gn-product-detail__grid { gap: 4vw; }
}
@media (max-width: 820px) {
.geba-next .gn-mega { width: 100%; }
.geba-next .gn-nav .gn-mega > summary { padding: 13px 0; color: #fff; font-size: clamp(25px,7vw,38px); font-weight: 650; letter-spacing: -.04em; }
.geba-next .gn-mega__panel { position: static; grid-template-columns: 1fr; gap: 24px; width: 100%; max-height: 43vh; padding: 18px; overflow-y: auto; box-shadow: none; }
.geba-next .gn-mega__panel > div { grid-template-columns: 1fr; }
.geba-next .gn-hero__grid { grid-template-columns: 1fr; }
.geba-next .gn-hero__cinema img { object-position: 64% center; }
.geba-next .gn-hero__cinema span { background: linear-gradient(90deg,rgba(7,9,14,.98),rgba(7,9,14,.65)),linear-gradient(0deg,rgba(7,9,14,.96),transparent 65%); }
.geba-next .gn-hero-product { width: min(72%,520px); margin-bottom: 0; }
.geba-next .gn-universe,.geba-next .gn-brand-world { padding: 100px 0; }
.geba-next .gn-universe__grid { grid-template-columns: repeat(2,1fr); }
.geba-next .gn-brand-world__grid { grid-template-columns: repeat(2,1fr); }
.geba-next .gn-catalog-hero { padding: 150px 0 80px; }
.geba-next .gn-catalog-hero__inner { grid-template-columns: 1fr; }
.geba-next .gn-catalog-hero__stat { max-width: 300px; }
.geba-next .gn-catalog-body { padding: 80px 0 100px; }
.geba-next .gn-catalog-filter { grid-template-columns: 1fr 1fr; }
.geba-next .gn-catalog-filter .gn-button { grid-column: 1 / -1; }
.geba-next .gn-catalog-grid { grid-template-columns: repeat(2,1fr); }
.geba-next .gn-shop-bridge__inner { grid-template-columns: 1fr; }
.geba-next .gn-product-detail__grid { grid-template-columns: 1fr; gap: 60px; }
.geba-next .gn-product-detail__info { position: static; }
.geba-next .gn-product-content__grid,.geba-next .gn-product-support__grid { grid-template-columns: 1fr; gap: 40px; }
}
@media (max-width: 560px) {
.geba-next .gn-hero-product { width: 100%; }
.geba-next .gn-universe__grid { grid-template-columns: 1fr; }
.geba-next .gn-universe__grid > a { min-height: 148px; }
.geba-next .gn-universe__actions { display: grid; }
.geba-next .gn-brand-world__grid { grid-template-columns: 1fr; }
.geba-next .gn-brand-card { min-height: 290px; }
.geba-next .gn-catalog-hero h1 { font-size: 72px; }
.geba-next .gn-catalog-toolbar { display: grid; }
.geba-next .gn-catalog-filter { grid-template-columns: 1fr; padding: 14px; }
.geba-next .gn-catalog-filter .gn-button { grid-column: auto; }
.geba-next .gn-catalog-grid { grid-template-columns: 1fr; }
.geba-next .gn-catalog-card__body { min-height: 125px; }
.geba-next .gn-shop-bridge { padding: 80px 0; }
.geba-next .gn-product-detail { padding-top: 100px; }
.geba-next .gn-product-detail__actions { display: grid; }
.geba-next .gn-product-detail__trust { grid-template-columns: 1fr; }
.geba-next .gn-product-content,.geba-next .gn-related { padding: 90px 0; }
}
/* =========================================================
GEBA SAFETY — cinematic motion and interaction layer
Progressive enhancement: every element stays usable without JS.
========================================================= */
.geba-next .gn-page-progress {
position: fixed;
z-index: 10020;
top: 0;
right: 0;
left: 0;
height: 2px;
pointer-events: none;
background: linear-gradient(90deg, var(--gn-magenta), #ff88ba 48%, var(--gn-indigo));
box-shadow: 0 0 18px rgba(255, 72, 151, .5);
transform: scaleX(0);
transform-origin: left center;
will-change: transform;
}
.geba-next .gn-header.is-sticky { box-shadow: 0 14px 40px rgba(0, 0, 0, .14); }
.geba-next .gn-header__inner,
.geba-next .gn-hero__grid,
.geba-next .gn-hero__meta { z-index: 3; }
.geba-next .gn-hero::after {
position: absolute;
z-index: 1;
inset: 0;
pointer-events: none;
content: "";
opacity: .55;
background:
radial-gradient(circle at var(--gn-ambient-x, 72%) var(--gn-ambient-y, 38%), rgba(255, 72, 151, .14), transparent 24%),
linear-gradient(115deg, transparent 32%, rgba(255, 255, 255, .035) 50%, transparent 67%);
transition: background-position .22s linear;
}
.geba-next .gn-hero__copy {
transform: translate3d(0, calc(var(--gn-hero-copy-shift, 0px) * -.35), 0);
transition: opacity .38s ease, filter .38s ease;
will-change: transform;
}
.geba-next .gn-hero.is-scene-changing .gn-hero__copy,
.geba-next .gn-hero.is-scene-changing .gn-hero-product { opacity: .36; filter: blur(5px); }
.geba-next .gn-hero__mesh {
animation: gn-mesh-float 16s ease-in-out infinite alternate;
will-change: transform;
}
@keyframes gn-mesh-float {
from { transform: perspective(600px) rotateX(62deg) rotateZ(-15deg) translate3d(-1%, -1%, 0); }
to { transform: perspective(600px) rotateX(59deg) rotateZ(-12deg) translate3d(3%, 2%, 0); }
}
.geba-next .gn-hero__cinema img { animation-name: gn-cinematic-drift-fluid; }
@keyframes gn-cinematic-drift-fluid {
from { transform: translate3d(-.8%, var(--gn-hero-parallax, 0), 0) scale(1.045); }
to { transform: translate3d(1.4%, calc(var(--gn-hero-parallax, 0px) - .8%), 0) scale(1.11); }
}
/* Optional multi-scene hero. Supports both production and legacy contracts. */
.geba-next .gn-hero__cinema :is([data-gn-cinema-scene], [data-gn-hero-scene]) {
position: absolute;
inset: -2%;
visibility: hidden;
opacity: 0;
transform: translate3d(0, var(--gn-hero-parallax, 0), 0) scale(1.085);
transition: opacity 1.15s cubic-bezier(.2, .7, .2, 1), transform 8s cubic-bezier(.18, .75, .2, 1), visibility 1.15s;
will-change: opacity, transform;
}
.geba-next .gn-hero__cinema :is([data-gn-cinema-scene], [data-gn-hero-scene]).is-active {
visibility: visible;
opacity: 1;
transform: translate3d(0, var(--gn-hero-parallax, 0), 0) scale(1.015);
}
.geba-next .gn-hero__cinema :is([data-gn-cinema-scene], [data-gn-hero-scene]) > img,
.geba-next .gn-hero__cinema img:is([data-gn-cinema-scene], [data-gn-hero-scene]) {
width: 100%;
height: 100%;
object-fit: cover;
animation: none;
}
.geba-next .gn-hero__cinema img:is([data-gn-cinema-scene], [data-gn-hero-scene]) { inset: -2%; }
.geba-next .gn-hero [data-gn-cinema-nav],
.geba-next .gn-hero-scenes__nav {
position: absolute;
z-index: 5;
right: max(24px, calc((100vw - var(--gn-shell)) / 2));
bottom: 126px;
display: flex;
align-items: center;
justify-content: flex-end;
gap: 8px;
}
.geba-next .gn-cinema-nav > div { display: flex; align-items: center; gap: 3px; }
.geba-next .gn-cinema-nav__progress {
display: grid;
grid-template-columns: auto 64px auto;
gap: 10px;
align-items: center;
margin-right: 14px;
color: rgba(255, 255, 255, .42);
font: 650 8px/1 var(--gn-mono);
}
.geba-next .gn-cinema-nav__progress b { color: var(--gn-magenta); font-weight: 750; }
.geba-next .gn-cinema-nav__progress em { font-style: normal; }
.geba-next .gn-cinema-nav__progress i { position: relative; width: 64px; height: 1px; overflow: hidden; background: rgba(255, 255, 255, .2); }
.geba-next .gn-cinema-nav__progress i::after {
display: block;
width: 100%;
height: 100%;
content: "";
background: var(--gn-magenta);
transform: scaleX(0);
transform-origin: left;
}
.geba-next .gn-cinema-nav__progress i.is-running::after { animation: gn-scene-timer var(--gn-scene-duration, 7s) linear both; }
.geba-next .gn-hero [data-gn-cinema-nav] button,
.geba-next .gn-hero-scenes__nav button,
.geba-next .gn-hero [data-scene-target] {
display: grid;
grid-template-columns: auto 32px;
gap: 8px;
align-items: center;
min-width: 0;
padding: 8px 5px;
color: rgba(255, 255, 255, .44);
font: 650 8px/1 var(--gn-mono);
background: transparent;
border: 0;
cursor: pointer;
transition: color .25s ease;
}
.geba-next .gn-cinema-nav button {
display: inline-flex;
grid-template-columns: none;
gap: 7px;
border-top: 1px solid rgba(255, 255, 255, .18);
}
.geba-next .gn-cinema-nav button::after { display: none; }
.geba-next .gn-cinema-nav button > span { color: var(--gn-magenta); }
.geba-next .gn-cinema-nav button:is(.is-active, [aria-pressed="true"]) { border-top-color: var(--gn-magenta); }
.geba-next .gn-hero [data-gn-cinema-nav] button::after,
.geba-next .gn-hero [data-scene-target]::after {
width: 32px;
height: 1px;
content: "";
background: currentColor;
transform: scaleX(.42);
transform-origin: right;
transition: transform .35s ease, background .35s ease;
}
.geba-next .gn-hero-scenes__nav button i {
display: block;
width: 32px;
height: 1px;
overflow: hidden;
background: currentColor;
}
.geba-next .gn-hero [data-gn-cinema-nav] button:is(:hover, :focus-visible, .is-active),
.geba-next .gn-hero-scenes__nav button:is(:hover, :focus-visible, .is-active),
.geba-next .gn-hero [data-scene-target][aria-current="true"] { color: #fff; }
.geba-next .gn-hero [data-gn-cinema-nav] button:is(.is-active, [aria-current="true"])::after,
.geba-next .gn-hero [data-scene-target][aria-current="true"]::after {
background: var(--gn-magenta);
transform: scaleX(1);
transform-origin: left;
}
.geba-next .gn-hero-scenes__nav button.is-active i::after {
display: block;
width: 100%;
height: 100%;
content: "";
background: var(--gn-magenta);
animation: gn-scene-timer 7s linear both;
transform-origin: left;
}
.geba-next [data-gn-cinema-count],
.geba-next [data-gn-cinema-current] { font-family: var(--gn-mono); font-variant-numeric: tabular-nums; }
.geba-next [data-gn-cinema-current] { color: var(--gn-magenta); }
@keyframes gn-scene-timer {
from { transform: scaleX(0); }
to { transform: scaleX(1); }
}
.geba-next .gn-product-stage__orbit { animation: gn-orbit-breathe 7s ease-in-out infinite alternate; }
.geba-next .gn-product-stage__orbit::before { animation: gn-orbit-spin 18s linear infinite; }
.geba-next .gn-product-stage__orbit::after { animation: gn-orbit-spin 12s linear infinite reverse; }
@keyframes gn-orbit-breathe {
from { opacity: .62; transform: translate(-50%, -50%) rotateX(70deg) scale(.96); }
to { opacity: 1; transform: translate(-50%, -50%) rotateX(70deg) scale(1.04); }
}
@keyframes gn-orbit-spin { to { transform: rotate(360deg); } }
.geba-next .gn-callout {
box-shadow: 0 18px 45px rgba(0, 0, 0, .18);
animation: gn-callout-float 5s ease-in-out infinite alternate;
}
.geba-next .gn-callout--two { animation-delay: -1.6s; }
.geba-next .gn-callout--three { animation-delay: -3.1s; }
@keyframes gn-callout-float {
from { translate: 0 -3px; }
to { translate: 0 5px; }
}
.geba-next .gn-material > img {
transform: translate3d(0, var(--gn-section-parallax, 0), 0);
will-change: transform;
}
.geba-next .gn-page-hero::before {
transform: translate3d(0, var(--gn-section-parallax, 0), 0) scale(1.07);
will-change: transform;
}
.geba-next .gn-sector > img {
transform: translate3d(0, var(--gn-section-parallax, 0), 0) scale(1.055);
will-change: transform;
}
.geba-next .gn-sector:hover > img { transform: translate3d(0, var(--gn-section-parallax, 0), 0) scale(1.105); }
/* Refined mask reveal. Individual translate does not fight card hover transforms. */
.geba-next.gn-motion-ready [data-gn-reveal] {
opacity: 0;
filter: blur(3px);
clip-path: inset(0 0 12% 0);
translate: 0 24px;
transition:
opacity .72s ease var(--gn-reveal-delay, 0ms),
filter .8s ease var(--gn-reveal-delay, 0ms),
clip-path .82s cubic-bezier(.16, .8, .2, 1) var(--gn-reveal-delay, 0ms),
translate .82s cubic-bezier(.16, .8, .2, 1) var(--gn-reveal-delay, 0ms);
}
.geba-next.gn-motion-ready [data-gn-reveal].is-visible {
opacity: 1;
filter: none;
clip-path: inset(0 0 0 0);
translate: 0 0;
}
/* MR78 visual regression remediation: real lazy media fades in only after decode/load readiness. */
@media (prefers-reduced-motion: no-preference) {
.geba-next.gn-motion-ready [data-gn-reveal] img[loading="lazy"] {
opacity: 0;
filter: blur(4px) saturate(.92);
transition: opacity .72s ease, filter .78s ease;
}
.geba-next.gn-motion-ready [data-gn-reveal] img[loading="lazy"].gn-media-loaded {
opacity: 1;
filter: none;
}
}
.geba-next .gn-universe__grid > a,
.geba-next .gn-brand-card,
.geba-next .gn-sector,
.geba-next .gn-product-tile,
.geba-next .gn-catalog-card,
.geba-next .gn-page-solutions__grid > a { isolation: isolate; }
.geba-next .gn-universe__grid > a::before,
.geba-next .gn-brand-card::after,
.geba-next .gn-product-tile::after,
.geba-next .gn-catalog-card::after,
.geba-next .gn-page-solutions__grid > a::before {
position: absolute;
z-index: 2;
inset: 0;
pointer-events: none;
content: "";
opacity: 0;
background: radial-gradient(circle at var(--gn-pointer-x, 50%) var(--gn-pointer-y, 50%), rgba(255, 255, 255, .23), transparent 38%);
transition: opacity .35s ease;
}
.geba-next .gn-universe__grid > a::before,
.geba-next .gn-page-solutions__grid > a::before { z-index: 0; mix-blend-mode: soft-light; }
.geba-next .gn-universe__grid > a > *,
.geba-next .gn-page-solutions__grid > a > * { position: relative; z-index: 1; }
.geba-next .gn-brand-card:hover::after,
.geba-next .gn-universe__grid > a:hover::before,
.geba-next .gn-product-tile:hover::after,
.geba-next .gn-catalog-card:hover::after,
.geba-next .gn-page-solutions__grid > a:hover::before { opacity: 1; }
.geba-next .gn-sector::after {
position: absolute;
z-index: 3;
inset: 12px;
pointer-events: none;
content: "";
border: 1px solid rgba(255, 255, 255, 0);
transform: scale(.985);
transition: border-color .45s ease, transform .45s ease;
}
.geba-next .gn-sector:hover::after { border-color: rgba(255, 255, 255, .25); transform: scale(1); }
.geba-next .gn-product-tile__image,
.geba-next .gn-catalog-card__media { position: relative; }
.geba-next .gn-product-tile__image::after,
.geba-next .gn-catalog-card__media::after {
position: absolute;
inset: 0;
pointer-events: none;
content: "";
opacity: 0;
background:
linear-gradient(115deg, transparent 35%, rgba(255, 255, 255, .72) 49%, transparent 63%),
linear-gradient(rgba(17, 19, 24, .025) 1px, transparent 1px),
linear-gradient(90deg, rgba(17, 19, 24, .025) 1px, transparent 1px);
background-size: 220% 100%, 26px 26px, 26px 26px;
background-position: 120% 0, 0 0, 0 0;
transition: opacity .35s ease, background-position .85s ease;
}
.geba-next :is(.gn-product-tile, .gn-catalog-card):hover :is(.gn-product-tile__image, .gn-catalog-card__media)::after {
opacity: .58;
background-position: -120% 0, 0 0, 0 0;
}
.geba-next .gn-button { position: relative; overflow: hidden; }
.geba-next .gn-button::before {
position: absolute;
inset: 0;
pointer-events: none;
content: "";
background: linear-gradient(105deg, transparent 35%, rgba(255, 255, 255, .3) 50%, transparent 65%);
transform: translateX(-130%);
transition: transform .65s ease;
}
.geba-next .gn-button:hover::before { transform: translateX(130%); }
.geba-next .gn-product-gallery__main img {
opacity: 1;
transform: scale(1);
transition: opacity .18s ease, transform .32s cubic-bezier(.2, .8, .2, 1);
}
.geba-next .gn-product-gallery.is-switching .gn-product-gallery__main img { opacity: 0; transform: scale(.985); }
@media (max-width: 820px) {
.geba-next .gn-hero::after { opacity: .3; }
.geba-next .gn-hero__copy { transform: none; }
.geba-next .gn-hero [data-gn-cinema-nav],
.geba-next .gn-hero-scenes__nav {
position: relative;
right: auto;
bottom: auto;
justify-content: flex-end;
width: var(--gn-shell);
margin: 22px auto 0;
}
.geba-next .gn-material > img,
.geba-next .gn-sector > img,
.geba-next .gn-sector:hover > img,
.geba-next .gn-page-hero::before { --gn-section-parallax: 0px; }
}
@media (max-width: 560px) {
.geba-next .gn-page-progress { height: 1px; }
.geba-next .gn-cinema-nav { justify-content: space-between; overflow-x: auto; scrollbar-width: none; }
.geba-next .gn-cinema-nav::-webkit-scrollbar { display: none; }
.geba-next .gn-cinema-nav__progress { grid-template-columns: auto 38px auto; gap: 7px; margin-right: 6px; }
.geba-next .gn-cinema-nav__progress i { width: 38px; }
.geba-next .gn-cinema-nav button { gap: 0; padding-inline: 7px; font-size: 0; }
.geba-next .gn-cinema-nav button > span { font-size: 8px; }
.geba-next .gn-hero [data-gn-cinema-nav] button,
.geba-next .gn-hero-scenes__nav button,
.geba-next .gn-hero [data-scene-target] { grid-template-columns: auto 20px; }
.geba-next .gn-hero [data-gn-cinema-nav] button::after,
.geba-next .gn-hero [data-scene-target]::after,
.geba-next .gn-hero-scenes__nav button i { width: 20px; }
.geba-next .gn-callout { animation: none; }
}
@media (prefers-reduced-motion: reduce) {
.geba-next .gn-page-progress { transition: none; }
.geba-next .gn-hero__mesh,
.geba-next .gn-hero__cinema img,
.geba-next .gn-product-stage__orbit,
.geba-next .gn-product-stage__orbit::before,
.geba-next .gn-product-stage__orbit::after,
.geba-next .gn-callout,
.geba-next .gn-cinema-nav__progress i::after,
.geba-next .gn-hero-scenes__nav button i::after { animation: none !important; }
.geba-next .gn-hero__copy,
.geba-next .gn-material > img,
.geba-next .gn-sector > img,
.geba-next .gn-page-hero::before { transform: none !important; }
.geba-next .gn-hero__cinema :is([data-gn-cinema-scene], [data-gn-hero-scene]) { transition: none; transform: none; }
.geba-next.gn-motion-ready [data-gn-reveal] {
opacity: 1;
filter: none;
clip-path: none;
translate: none;
transition: none;
}
}
/* GEBA Safety v4 — editorial industrial system */
.geba-next.gn-v4 {
--gn4-black: #08090b;
--gn4-ink: #101216;
--gn4-paper: #f4f2ed;
--gn4-white: #fff;
--gn4-muted: #6d7077;
--gn4-line: rgba(16, 18, 22, .15);
--gn4-pink: #f30067;
--gn4-orange: #ff5a12;
color: var(--gn4-ink);
background: var(--gn4-paper);
}
.geba-next.gn-v4 .gn-shell { width: min(100% - 72px, 1440px); }
.geba-next.gn-v4 .gn-header { color: #fff; background: rgba(8, 9, 11, .78); border-color: rgba(255,255,255,.12); backdrop-filter: blur(18px); }
.geba-next.gn-v4 .gn-header.is-sticky { background: rgba(8, 9, 11, .94); }
.geba-next.gn-v4 .gn-logo b { color: var(--gn4-pink); }
.geba-next.gn-v4 .gn-nav__cta { color: #fff; background: var(--gn4-pink); border-color: var(--gn4-pink); }
.geba-next.gn-v4 h1,
.geba-next.gn-v4 h2,
.geba-next.gn-v4 h3 { font-family: Manrope, Inter, "Helvetica Neue", Arial, sans-serif; letter-spacing: -.055em; }
.geba-next.gn-v4 .gn4-index,
.geba-next.gn-v4 .gn4-kicker { margin: 0; font-family: var(--gn-mono); font-size: 10px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.geba-next.gn-v4 .gn4-index { color: var(--gn4-pink); }
.geba-next.gn-v4 .gn4-kicker { color: rgba(255,255,255,.58); }
.geba-next.gn-v4 .gn4-kicker span { color: #fff; }
.geba-next.gn-v4 .gn4-hero {
position: relative;
min-height: min(920px, 100svh);
overflow: hidden;
color: #fff;
background:
linear-gradient(90deg, #08090b 0%, #08090b 42%, rgba(8,9,11,.78) 63%, rgba(8,9,11,.92) 100%),
url("../images/milan-studio-v1.webp") center right / cover no-repeat;
}
.geba-next.gn-v4 .gn4-hero::after { position: absolute; right: 0; bottom: 0; left: 0; height: 1px; content: ""; background: rgba(255,255,255,.18); }
.geba-next.gn-v4 .gn4-hero__glow { position: absolute; top: 8%; right: 8%; width: 43vw; height: 72%; background: radial-gradient(circle, rgba(255,90,18,.2), transparent 63%); filter: blur(28px); pointer-events: none; }
.geba-next.gn-v4 .gn4-hero__grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, .92fr) minmax(460px, .78fr); gap: 72px; align-items: center; min-height: min(850px, calc(100svh - 70px)); padding-top: 112px; padding-bottom: 80px; }
.geba-next.gn-v4 .gn4-hero__copy { position: relative; z-index: 5; max-width: 770px; }
.geba-next.gn-v4 .gn4-hero h1 { max-width: 760px; margin: 30px 0 0; font-size: clamp(68px, 7.6vw, 116px); line-height: .88; }
.geba-next.gn-v4 .gn4-hero__copy > p:not(.gn4-kicker) { max-width: 620px; margin: 32px 0 0; color: rgba(255,255,255,.69); font-size: clamp(17px, 1.55vw, 22px); line-height: 1.55; }
.geba-next.gn-v4 .gn4-hero .gn-actions { margin-top: 36px; }
.geba-next.gn-v4 .gn4-hero .gn-button { min-height: 58px; }
.geba-next.gn-v4 .gn4-hero .gn-button--primary { background: var(--gn4-pink); border-color: var(--gn4-pink); }
.geba-next.gn-v4 .gn4-proof { display: grid; grid-template-columns: repeat(3, 1fr); max-width: 690px; margin-top: 60px; border-top: 1px solid rgba(255,255,255,.18); }
.geba-next.gn-v4 .gn4-proof span { display: grid; grid-template-columns: auto 1fr; gap: 12px; align-items: center; min-height: 70px; padding-right: 18px; color: rgba(255,255,255,.58); font-size: 11px; border-right: 1px solid rgba(255,255,255,.12); }
.geba-next.gn-v4 .gn4-proof span:last-child { border-right: 0; }
.geba-next.gn-v4 .gn4-proof b { color: var(--gn4-orange); font-family: var(--gn-mono); }
.geba-next.gn-v4 .gn4-hero__product { position: relative; align-self: stretch; min-width: 0; pointer-events: auto; }
.geba-next.gn-v4 .gn4-hero__product > img { position: absolute; z-index: 3; top: 8%; left: 50%; width: auto; max-width: none; height: 101%; object-fit: contain; filter: drop-shadow(0 42px 42px rgba(0,0,0,.68)); transform: translate3d(calc(-50% + var(--gn4-product-x, 0px)), var(--gn4-product-y, 0px), 0) rotate(var(--gn4-product-rotate, -1deg)); transform-origin: center 40%; transition: transform .22s ease-out; }
.geba-next.gn-v4 .gn4-hero__disc { position: absolute; z-index: 1; top: 50%; left: 51%; width: min(39vw, 560px); aspect-ratio: 1; border: 1px solid rgba(255,255,255,.13); border-radius: 50%; transform: translate(-50%,-50%); }
.geba-next.gn-v4 .gn4-hero__disc::before,
.geba-next.gn-v4 .gn4-hero__disc::after { position: absolute; inset: 14%; content: ""; border: 1px solid rgba(255,255,255,.08); border-radius: 50%; }
.geba-next.gn-v4 .gn4-hero__disc::after { inset: 35%; border-color: rgba(255,90,18,.3); }
.geba-next.gn-v4 .gn4-hero__disc i { position: absolute; top: 50%; right: -7px; width: 13px; height: 13px; border-radius: 50%; background: var(--gn4-orange); box-shadow: 0 0 28px rgba(255,90,18,.8); }
.geba-next.gn-v4 .gn4-hero__disc i:last-child { top: 9%; right: auto; left: 23%; width: 5px; height: 5px; }
.geba-next.gn-v4 .gn4-product-note { position: absolute; z-index: 5; right: 0; bottom: 14%; display: grid; width: min(340px, 78%); padding: 22px 24px; color: #fff; border: 1px solid rgba(255,255,255,.2); background: rgba(8,9,11,.78); backdrop-filter: blur(14px); }
.geba-next.gn-v4 .gn4-product-note small { color: var(--gn4-orange); font-family: var(--gn-mono); font-size: 9px; letter-spacing: .14em; }
.geba-next.gn-v4 .gn4-product-note strong { margin-top: 12px; font-size: 22px; }
.geba-next.gn-v4 .gn4-product-note span { display: flex; justify-content: space-between; margin-top: 19px; color: rgba(255,255,255,.62); font-size: 11px; }
.geba-next.gn-v4 .gn4-hero__footer { position: absolute; z-index: 6; right: 0; bottom: 0; left: 0; display: flex; gap: 38px; align-items: center; min-height: 58px; color: rgba(255,255,255,.45); font-family: var(--gn-mono); font-size: 9px; letter-spacing: .1em; text-transform: uppercase; }
.geba-next.gn-v4 .gn4-intro { padding: 130px 0; background: #fff; }
.geba-next.gn-v4 .gn4-intro__grid { display: grid; grid-template-columns: 150px minmax(0, 1.25fr) minmax(260px, .55fr); gap: 48px; align-items: start; }
.geba-next.gn-v4 .gn4-intro h2,
.geba-next.gn-v4 .gn4-title-row h2,
.geba-next.gn-v4 .gn4-services h2,
.geba-next.gn-v4 .gn4-cta h2 { margin: 0; font-size: clamp(48px, 5.2vw, 78px); line-height: .98; }
.geba-next.gn-v4 .gn4-intro__grid > p:last-child { margin: 4px 0 0; color: var(--gn4-muted); font-size: 17px; line-height: 1.7; }
.geba-next.gn-v4 .gn4-category-grid { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 78px; border-top: 1px solid var(--gn4-line); border-left: 1px solid var(--gn4-line); }
.geba-next.gn-v4 .gn4-category { position: relative; display: flex; flex-direction: column; min-height: 230px; padding: 24px; color: var(--gn4-ink); border-right: 1px solid var(--gn4-line); border-bottom: 1px solid var(--gn4-line); background: #fff; transition: color .25s ease, background .25s ease; }
.geba-next.gn-v4 .gn4-category > img { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity .3s ease; }
.geba-next.gn-v4 .gn4-category:has(> img)::after { position: absolute; z-index: 1; inset: 0; content: ""; background: linear-gradient(0deg, rgba(8,9,11,.9), rgba(8,9,11,.1)); opacity: 0; transition: opacity .3s ease; }
.geba-next.gn-v4 .gn4-category:hover > img,
.geba-next.gn-v4 .gn4-category:hover::after { opacity: 1; }
.geba-next.gn-v4 .gn4-category > small,
.geba-next.gn-v4 .gn4-category > strong,
.geba-next.gn-v4 .gn4-category > span,
.geba-next.gn-v4 .gn4-category > b { position: relative; z-index: 2; }
.geba-next.gn-v4 .gn4-category:hover { color: #fff; background: var(--gn4-ink); }
.geba-next.gn-v4 .gn4-category small { color: var(--gn4-pink); font-family: var(--gn-mono); font-size: 10px; }
.geba-next.gn-v4 .gn4-category strong { max-width: 240px; margin-top: auto; font-size: 25px; line-height: 1.05; letter-spacing: -.04em; }
.geba-next.gn-v4 .gn4-category span { margin-top: 14px; color: var(--gn4-muted); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
.geba-next.gn-v4 .gn4-category:hover span { color: rgba(255,255,255,.55); }
.geba-next.gn-v4 .gn4-category > b { position: absolute; top: 23px; right: 24px; font-weight: 400; }
.geba-next.gn-v4 .gn4-section-action { margin-top: 38px; text-align: right; }
.geba-next.gn-v4 .gn4-arrow-link { display: inline-flex; gap: 28px; align-items: center; color: inherit; font-size: 13px; font-weight: 750; }
.geba-next.gn-v4 .gn4-arrow-link span { color: var(--gn4-pink); font-size: 20px; }
.geba-next.gn-v4 .gn4-feature { padding: 120px 0; color: #fff; background: var(--gn4-ink); }
.geba-next.gn-v4 .gn4-feature__grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(380px, .62fr); gap: clamp(55px, 8vw, 130px); align-items: center; }
.geba-next.gn-v4 .gn4-feature__media { position: relative; overflow: hidden; aspect-ratio: 1.44; background: #050608; }
.geba-next.gn-v4 .gn4-feature__media::after { position: absolute; inset: 0; content: ""; background: linear-gradient(120deg, transparent 45%, rgba(243,0,103,.16)); }
.geba-next.gn-v4 .gn4-feature__media img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.78) contrast(1.08); }
.geba-next.gn-v4 .gn4-feature__media > span { position: absolute; z-index: 2; bottom: 18px; left: 20px; color: rgba(255,255,255,.55); font-family: var(--gn-mono); font-size: 9px; letter-spacing: .14em; }
.geba-next.gn-v4 .gn4-feature__copy h2 { max-width: 560px; margin: 28px 0 0; font-size: clamp(54px, 6.2vw, 88px); line-height: .9; }
.geba-next.gn-v4 .gn4-feature__copy > p:not(.gn4-index) { max-width: 520px; margin: 32px 0 0; color: rgba(255,255,255,.62); font-size: 17px; line-height: 1.7; }
.geba-next.gn-v4 .gn4-specs { margin: 44px 0 34px; border-top: 1px solid rgba(255,255,255,.18); }
.geba-next.gn-v4 .gn4-specs > div { display: flex; justify-content: space-between; padding: 16px 0; border-bottom: 1px solid rgba(255,255,255,.12); }
.geba-next.gn-v4 .gn4-specs dt { color: rgba(255,255,255,.45); font-size: 11px; }
.geba-next.gn-v4 .gn4-specs dd { margin: 0; font-family: var(--gn-mono); font-size: 11px; }
.geba-next.gn-v4 .gn4-products { padding: 125px 0; background: var(--gn4-paper); }
.geba-next.gn-v4 .gn4-title-row { display: flex; justify-content: space-between; gap: 48px; align-items: end; }
.geba-next.gn-v4 .gn4-title-row h2 { max-width: 830px; margin-top: 20px; }
.geba-next.gn-v4 .gn4-product-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 60px; }
.geba-next.gn-v4 .gn4-product-card { display: grid; color: var(--gn4-ink); border: 1px solid var(--gn4-line); background: #fff; }
.geba-next.gn-v4 .gn4-product-card__image { display: grid; place-items: center; aspect-ratio: 1; overflow: hidden; background: #eceae5; }
.geba-next.gn-v4 .gn4-product-card__image img { width: 84%; height: 84%; object-fit: contain; transition: transform .35s ease; }
.geba-next.gn-v4 .gn4-product-card--campaign .gn4-product-card__image img { width: 100%; height: 100%; object-fit: cover; }
.geba-next.gn-v4 .gn4-product-card:hover img { transform: scale(1.045); }
.geba-next.gn-v4 .gn4-product-card__image i { color: #b8b7b3; font-size: 42px; font-style: normal; font-weight: 800; }
.geba-next.gn-v4 .gn4-product-card__body { display: grid; min-height: 175px; padding: 22px; }
.geba-next.gn-v4 .gn4-product-card__body small { color: var(--gn4-pink); font-family: var(--gn-mono); font-size: 8px; letter-spacing: .12em; }
.geba-next.gn-v4 .gn4-product-card__body strong { margin-top: 16px; font-size: 18px; line-height: 1.25; }
.geba-next.gn-v4 .gn4-product-card__body em { align-self: end; margin-top: 24px; color: var(--gn4-muted); font-size: 10px; font-style: normal; }
.geba-next.gn-v4 .gn4-sectors { padding: 125px 0; color: #fff; background: var(--gn4-black); }
.geba-next.gn-v4 .gn4-title-row--light .gn4-index { color: var(--gn4-orange); }
.geba-next.gn-v4 .gn4-sector-grid { display: grid; grid-template-columns: 1.35fr .65fr; gap: 18px; margin-top: 60px; }
.geba-next.gn-v4 .gn4-sector { position: relative; display: block; min-height: 500px; overflow: hidden; color: #fff; background: #15171b; }
.geba-next.gn-v4 .gn4-sector img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2,.7,.2,1); }
.geba-next.gn-v4 .gn4-sector:hover img { transform: scale(1.035); }
.geba-next.gn-v4 .gn4-sector::after { position: absolute; inset: 0; content: ""; background: linear-gradient(0deg, rgba(5,6,8,.88), transparent 72%); }
.geba-next.gn-v4 .gn4-sector > span { position: absolute; z-index: 2; right: 35px; bottom: 32px; left: 35px; display: grid; }
.geba-next.gn-v4 .gn4-sector small { color: var(--gn4-orange); font-family: var(--gn-mono); font-size: 9px; letter-spacing: .14em; }
.geba-next.gn-v4 .gn4-sector strong { margin-top: 12px; font-size: clamp(30px, 3vw, 48px); letter-spacing: -.045em; }
.geba-next.gn-v4 .gn4-sector em { margin-top: 22px; color: rgba(255,255,255,.65); font-size: 11px; font-style: normal; }
.geba-next.gn-v4 .gn4-services { padding: 135px 0; background: #fff; }
.geba-next.gn-v4 .gn4-services__grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(440px, .9fr); gap: 12vw; }
.geba-next.gn-v4 .gn4-services h2 { max-width: 720px; margin-top: 25px; }
.geba-next.gn-v4 .gn4-services__grid > div > p:last-child { max-width: 650px; margin: 36px 0 0; color: var(--gn4-muted); font-size: 17px; line-height: 1.7; }
.geba-next.gn-v4 .gn4-services ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--gn4-line); }
.geba-next.gn-v4 .gn4-services li { display: grid; grid-template-columns: 48px 1fr; gap: 22px; padding: 25px 0; border-bottom: 1px solid var(--gn4-line); }
.geba-next.gn-v4 .gn4-services li > b { color: var(--gn4-pink); font-family: var(--gn-mono); font-size: 10px; }
.geba-next.gn-v4 .gn4-services li span { display: grid; gap: 8px; }
.geba-next.gn-v4 .gn4-services li strong { font-size: 21px; }
.geba-next.gn-v4 .gn4-services li small { color: var(--gn4-muted); font-size: 12px; line-height: 1.55; }
.geba-next.gn-v4 .gn4-brands { padding: 125px 0; background: var(--gn4-paper); }
.geba-next.gn-v4 .gn4-brand-strip { display: grid; grid-template-columns: repeat(2, 1fr); margin-top: 58px; border-top: 1px solid var(--gn4-line); }
.geba-next.gn-v4 .gn4-brand-strip a { position: relative; display: grid; grid-template-columns: minmax(150px,.42fr) 1fr; gap: 32px; min-height: 105px; padding: 28px 58px 28px 0; color: var(--gn4-ink); border-bottom: 1px solid var(--gn4-line); }
.geba-next.gn-v4 .gn4-brand-strip a:nth-child(odd) { padding-right: 42px; border-right: 1px solid var(--gn4-line); }
.geba-next.gn-v4 .gn4-brand-strip a:nth-child(even) { padding-left: 42px; }
.geba-next.gn-v4 .gn4-brand-strip strong { font-size: 18px; }
.geba-next.gn-v4 .gn4-brand-strip span { color: var(--gn4-muted); font-size: 11px; line-height: 1.55; }
.geba-next.gn-v4 .gn4-brand-strip b { position: absolute; top: 28px; right: 18px; color: var(--gn4-pink); font-weight: 400; }
.geba-next.gn-v4 .gn4-cta { padding: 115px 0; color: #fff; background: var(--gn4-pink); }
.geba-next.gn-v4 .gn4-cta__grid { display: grid; grid-template-columns: 150px minmax(0, 1fr) auto; gap: 45px; align-items: center; }
.geba-next.gn-v4 .gn4-cta .gn4-index { color: rgba(255,255,255,.6); }
.geba-next.gn-v4 .gn4-cta h2 { max-width: 880px; }
.geba-next.gn-v4 .gn4-cta__grid > div { display: grid; gap: 20px; min-width: 180px; }
.geba-next.gn-v4 .gn4-cta .gn-button--primary { color: var(--gn4-ink); background: #fff; border-color: #fff; }
.geba-next.gn-v4 .gn4-cta__grid > div > a { color: #fff; font-size: 12px; text-align: center; }
.geba-next.gn-v4 .gn-footer { margin-top: 0; }
@media (max-width: 1120px) {
.geba-next.gn-v4 .gn4-hero__grid { grid-template-columns: minmax(0, 1fr) minmax(380px, .72fr); gap: 25px; }
.geba-next.gn-v4 .gn4-hero h1 { font-size: clamp(64px, 8.5vw, 90px); }
.geba-next.gn-v4 .gn4-product-note { right: 10px; }
.geba-next.gn-v4 .gn4-intro__grid { grid-template-columns: 90px 1fr .48fr; gap: 30px; }
.geba-next.gn-v4 .gn4-category-grid,
.geba-next.gn-v4 .gn4-product-grid { grid-template-columns: repeat(2, 1fr); }
.geba-next.gn-v4 .gn4-services__grid { gap: 7vw; }
.geba-next.gn-v4 .gn4-cta__grid { grid-template-columns: 100px 1fr; }
.geba-next.gn-v4 .gn4-cta__grid > div { grid-column: 2; justify-self: start; }
}
@media (max-width: 780px) {
.geba-next.gn-v4 .gn-shell { width: min(100% - 36px, 1440px); }
.geba-next.gn-v4 .gn4-hero { min-height: 900px; background-position: 68% center; }
.geba-next.gn-v4 .gn4-hero__grid { display: block; min-height: 900px; padding-top: 130px; padding-bottom: 120px; }
.geba-next.gn-v4 .gn4-hero__copy { position: relative; z-index: 5; }
.geba-next.gn-v4 .gn4-hero h1 { max-width: 610px; font-size: clamp(50px, 14vw, 72px); }
.geba-next.gn-v4 .gn4-hero__copy > p:not(.gn4-kicker) { max-width: 520px; font-size: 15px; }
.geba-next.gn-v4 .gn4-hero .gn-actions { display: grid; grid-template-columns: 1fr; max-width: 350px; }
.geba-next.gn-v4 .gn4-proof { display: none; }
.geba-next.gn-v4 .gn4-hero__product { position: absolute; z-index: 2; inset: 180px -120px 60px auto; width: 74%; opacity: .4; }
.geba-next.gn-v4 .gn4-hero__product > img { top: 0; left: 54%; height: 97%; }
.geba-next.gn-v4 .gn4-hero__disc { width: 74vw; }
.geba-next.gn-v4 .gn4-product-note { right: 132px; bottom: 8%; display: none; }
.geba-next.gn-v4 .gn4-hero__footer { gap: 15px; width: calc(100% - 36px); font-size: 7px; }
.geba-next.gn-v4 .gn4-intro,
.geba-next.gn-v4 .gn4-products,
.geba-next.gn-v4 .gn4-sectors,
.geba-next.gn-v4 .gn4-services,
.geba-next.gn-v4 .gn4-brands { padding: 88px 0; }
.geba-next.gn-v4 .gn4-intro__grid,
.geba-next.gn-v4 .gn4-feature__grid,
.geba-next.gn-v4 .gn4-services__grid { grid-template-columns: 1fr; gap: 34px; }
.geba-next.gn-v4 .gn4-intro h2,
.geba-next.gn-v4 .gn4-title-row h2,
.geba-next.gn-v4 .gn4-services h2,
.geba-next.gn-v4 .gn4-cta h2 { font-size: clamp(42px, 11vw, 58px); }
.geba-next.gn-v4 .gn4-category-grid { grid-template-columns: 1fr 1fr; margin-top: 48px; }
.geba-next.gn-v4 .gn4-category { min-height: 180px; padding: 18px; }
.geba-next.gn-v4 .gn4-category strong { font-size: 19px; }
.geba-next.gn-v4 .gn4-feature { padding: 88px 0; }
.geba-next.gn-v4 .gn4-feature__copy h2 { font-size: clamp(52px, 14vw, 70px); }
.geba-next.gn-v4 .gn4-feature__copy { order: -1; }
.geba-next.gn-v4 .gn4-product-grid { grid-template-columns: 1fr 1fr; }
.geba-next.gn-v4 .gn4-title-row { display: grid; gap: 26px; }
.geba-next.gn-v4 .gn4-title-row .gn4-arrow-link { justify-self: start; }
.geba-next.gn-v4 .gn4-sector-grid { grid-template-columns: 1fr; }
.geba-next.gn-v4 .gn4-sector { min-height: 390px; }
.geba-next.gn-v4 .gn4-brand-strip { grid-template-columns: 1fr; }
.geba-next.gn-v4 .gn4-brand-strip a:nth-child(n) { grid-template-columns: 1fr; gap: 10px; padding: 23px 42px 23px 0; border-right: 0; }
.geba-next.gn-v4 .gn4-cta { padding: 80px 0; }
.geba-next.gn-v4 .gn4-cta__grid { grid-template-columns: 1fr; gap: 28px; }
.geba-next.gn-v4 .gn4-cta__grid > div { grid-column: 1; }
}
@media (max-width: 520px) {
.geba-next.gn-v4 .gn4-hero { min-height: 820px; }
.geba-next.gn-v4 .gn4-hero__grid { min-height: 820px; padding-top: 112px; }
.geba-next.gn-v4 .gn4-kicker { max-width: 280px; font-size: 8px; line-height: 1.6; }
.geba-next.gn-v4 .gn4-hero h1 { font-size: clamp(47px, 14.2vw, 62px); }
.geba-next.gn-v4 .gn4-hero__product { inset: 220px -132px 42px auto; width: 90%; opacity: .32; }
.geba-next.gn-v4 .gn4-hero__footer span:last-child { display: none; }
.geba-next.gn-v4 .gn4-category-grid,
.geba-next.gn-v4 .gn4-product-grid { grid-template-columns: 1fr; }
.geba-next.gn-v4 .gn4-category { min-height: 150px; }
.geba-next.gn-v4 .gn4-product-card__image { aspect-ratio: 1.2; }
}
@media (prefers-reduced-motion: reduce) {
.geba-next.gn-v4 .gn4-hero__product > img,
.geba-next.gn-v4 .gn4-product-card__image img,
.geba-next.gn-v4 .gn4-sector img { transition: none; transform: none; }
}
/* v4 inner pages — one visual language across every route */
.geba-next.gn-v4.gn-inner-site { color: var(--gn4-ink); background: var(--gn4-paper); }
.geba-next.gn-v4 .gn-catalog-hero {
padding: 190px 0 105px;
background:
linear-gradient(90deg, rgba(8,9,11,.98), rgba(8,9,11,.7)),
url("../images/material-macro.webp") center / cover no-repeat;
}
.geba-next.gn-v4 .gn-catalog-hero__grid { opacity: .11; background-size: 74px 74px; }
.geba-next.gn-v4 .gn-catalog-hero h1 { max-width: 1000px; color: #fff; font-size: clamp(68px, 9vw, 132px); }
.geba-next.gn-v4 .gn-catalog-hero__stat { border-color: rgba(255,255,255,.16); }
.geba-next.gn-v4 .gn-catalog-hero__stat strong,
.geba-next.gn-v4 .gn-category-rail__track small,
.geba-next.gn-v4 .gn-catalog-card__body small { color: var(--gn4-pink); }
.geba-next.gn-v4 .gn-category-rail,
.geba-next.gn-v4 .gn-catalog-card,
.geba-next.gn-v4 .gn-catalog-filter,
.geba-next.gn-v4 .gn-catalog-empty { border-color: var(--gn4-line); }
.geba-next.gn-v4 .gn-catalog-empty > div { display: flex; flex-wrap: wrap; gap: 10px; }
.geba-next.gn-v4 .gn-catalog-empty .gn-button--line { color: var(--gn4-ink); border-color: var(--gn4-line); }
.geba-next.gn-v4 .gn-catalog-brand-bridge { margin-top: 28px; }
.geba-next.gn-v4 .gn-catalog-body { padding: 105px 0 125px; background: var(--gn4-paper); }
.geba-next.gn-v4 .gn-catalog-filter { padding: 16px; box-shadow: 0 25px 65px rgba(16,18,22,.05); }
.geba-next.gn-v4 .gn-catalog-card { border-radius: 0; box-shadow: none; }
.geba-next.gn-v4 .gn-catalog-card:hover { transform: translateY(-3px); box-shadow: 0 22px 55px rgba(16,18,22,.1); }
.geba-next.gn-v4 .gn-catalog-card__media { background: #ebe9e4; }
.geba-next.gn-v4 .gn-pagination .current,
.geba-next.gn-v4 .gn-shop-bridge { background: var(--gn4-pink); }
.geba-next.gn-v4 .gn-shop-bridge .gn-section-index { color: rgba(255,255,255,.62); }
.geba-next.gn-v4 .gn-product-detail { padding-top: 128px; background: var(--gn4-paper); }
.geba-next.gn-v4 .gn-product-gallery__main { background: #ebe9e4; border-color: var(--gn4-line); }
.geba-next.gn-v4 .gn-product-detail__info .gn-eyebrow { color: var(--gn4-pink); }
.geba-next.gn-v4 .gn-product-detail__actions .gn-button--primary { background: var(--gn4-pink); border-color: var(--gn4-pink); }
.geba-next.gn-v4 .gn-product-detail__trust { border-color: var(--gn4-line); background: var(--gn4-line); }
.geba-next.gn-v4 .gn-product-content { background: #fff; }
.geba-next.gn-v4 .gn-product-support { background: var(--gn4-ink); }
.geba-next.gn-v4 .gn-related { background: #e8e5df; }
.geba-next.gn-v4 .gn-page-hero { min-height: 560px; padding: 180px 0 100px; background: var(--gn4-black); }
.geba-next.gn-v4 .gn-page-hero::before { background: linear-gradient(90deg,rgba(8,9,11,.98),rgba(8,9,11,.55)), var(--gn-page-image) center / cover no-repeat; filter: saturate(.7); }
.geba-next.gn-v4 .gn-page-hero::after { opacity: .11; background-size: 74px 74px; }
.geba-next.gn-v4 .gn-page-hero h1 { max-width: 1050px; color: #fff; font-size: clamp(64px, 8vw, 118px); }
.geba-next.gn-v4 .gn-page-solutions,
.geba-next.gn-v4 .gn-page-about,
.geba-next.gn-v4 .gn-contact-page,
.geba-next.gn-v4 .gn-page-editor { background: #fff; }
.geba-next.gn-v4 .gn-page-about,
.geba-next.gn-v4 .gn-contact-page { padding: 125px 0; }
.geba-next.gn-v4 .gn-page-solutions__grid > a { border-color: var(--gn4-line); background: var(--gn4-paper); }
.geba-next.gn-v4 .gn-page-facts b,
.geba-next.gn-v4 .gn-page-solutions__grid small { color: var(--gn4-pink); }
.geba-next.gn-v4 .gn-page-cta { background: var(--gn4-pink); }
.geba-next.gn-v4 .gn-not-found { background: radial-gradient(circle at 76% 24%,rgba(243,0,103,.22),transparent 35%),var(--gn4-black); }
@media (max-width: 820px) {
.geba-next.gn-v4 .gn-catalog-hero,
.geba-next.gn-v4 .gn-page-hero { min-height: auto; padding: 145px 0 78px; }
}
@media (max-width: 560px) {
.geba-next.gn-v4 .gn-catalog-hero h1,
.geba-next.gn-v4 .gn-page-hero h1 { font-size: 56px; }
.geba-next.gn-v4 .gn-catalog-body,
.geba-next.gn-v4 .gn-page-about,
.geba-next.gn-v4 .gn-contact-page { padding-block: 78px; }
}
/* v4.1 cinematic product showcase — authentic multi-view product media */
.geba-next.gn-v4 .gn5-showcase {
position: relative;
min-height: clamp(820px, 100svh, 980px);
overflow: hidden;
color: #fff;
background: #07090c;
isolation: isolate;
}
.geba-next.gn-v4 .gn5-showcase__track { position: relative; min-height: inherit; }
.geba-next.gn-v4 .gn5-poster {
--gn5-accent: #ff5a12;
--gn5-accent-rgb: 255,90,18;
position: absolute;
z-index: 1;
inset: 0;
min-height: inherit;
visibility: hidden;
overflow: hidden;
opacity: 0;
transform: translate3d(5%,0,0) scale(1.018);
transition: opacity .68s ease, transform .9s cubic-bezier(.2,.7,.15,1), visibility 0s .9s;
}
.geba-next.gn-v4 .gn5-poster.is-active { z-index: 2; visibility: visible; opacity: 1; transform: none; transition-delay: 0s; }
.geba-next.gn-v4 .gn5-poster--cric { --gn5-accent: #ff6a16; --gn5-accent-rgb: 255,106,22; }
.geba-next.gn-v4 .gn5-poster--wind { --gn5-accent: #00a9e7; --gn5-accent-rgb: 0,169,231; }
.geba-next.gn-v4 .gn5-poster__atmosphere { position: absolute; inset: 0; pointer-events: none; }
.geba-next.gn-v4 .gn5-poster__atmosphere::before,
.geba-next.gn-v4 .gn5-poster__atmosphere::after { position: absolute; content: ""; }
.geba-next.gn-v4 .gn5-poster__atmosphere::before {
inset: 0;
opacity: .42;
background-image: linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
background-size: 74px 74px;
mask-image: linear-gradient(90deg,transparent 7%,#000 52%,#000 92%);
}
.geba-next.gn-v4 .gn5-poster__atmosphere::after {
top: 8%; right: -8%; width: min(68vw,980px); aspect-ratio: 1;
border: 1px solid rgba(var(--gn5-accent-rgb),.22); border-radius: 50%;
background: radial-gradient(circle,rgba(var(--gn5-accent-rgb),.23) 0%,rgba(var(--gn5-accent-rgb),.06) 34%,transparent 68%);
box-shadow: inset 0 0 110px rgba(var(--gn5-accent-rgb),.05);
}
.geba-next.gn-v4 .gn5-poster--milan { background: radial-gradient(circle at 73% 43%,#22201d 0,#0c0e11 38%,#060709 76%); }
.geba-next.gn-v4 .gn5-poster--cric { background: radial-gradient(circle at 72% 45%,#2a1710 0,#0e0f12 39%,#07080a 76%); }
.geba-next.gn-v4 .gn5-poster--wind { background: radial-gradient(circle at 74% 43%,#07537a 0,#06263a 35%,#07131d 69%,#05090e 100%); }
.geba-next.gn-v4 .gn5-poster--wind .gn5-poster__atmosphere::before { opacity: .28; background-size: 56px 56px; }
.geba-next.gn-v4 .gn5-poster__grid {
position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0,.96fr) minmax(470px,.74fr); gap: clamp(28px,5vw,88px); align-items: center;
min-height: clamp(820px,100svh,980px); padding-top: 108px; padding-bottom: 142px;
}
.geba-next.gn-v4 .gn5-poster__copy { position: relative; z-index: 4; max-width: 820px; }
.geba-next.gn-v4 .gn5-eyebrow { display: flex; gap: 15px; align-items: center; margin: 0; color: rgba(255,255,255,.55); font: 700 9px/1.3 var(--gn-mono); letter-spacing: .16em; }
.geba-next.gn-v4 .gn5-eyebrow::before { width: 34px; height: 1px; content: ""; background: var(--gn5-accent); }
.geba-next.gn-v4 .gn5-eyebrow span { color: var(--gn5-accent); }
.geba-next.gn-v4 .gn5-poster__copy h1,
.geba-next.gn-v4 .gn5-poster__copy h2 { max-width: 820px; margin: 30px 0 0; color: #fff; font-size: clamp(64px,6.35vw,104px); line-height: .89; text-wrap: balance; }
.geba-next.gn-v4 .gn5-poster__copy > p:not(.gn5-eyebrow) { max-width: 650px; margin: 30px 0 0; color: rgba(255,255,255,.66); font-size: clamp(16px,1.3vw,20px); line-height: 1.58; }
.geba-next.gn-v4 .gn5-poster__actions { display: flex; gap: 10px; margin-top: 32px; }
.geba-next.gn-v4 .gn5-poster__actions .gn-button { min-height: 56px; }
.geba-next.gn-v4 .gn5-poster__actions .gn-button--primary { color: #fff; background: var(--gn5-accent); border-color: var(--gn5-accent); }
.geba-next.gn-v4 .gn5-poster--wind .gn5-poster__actions .gn-button--primary { color: #03111a; }
.geba-next.gn-v4 .gn5-poster__specs { display: grid; grid-template-columns: repeat(3,1fr); max-width: 680px; margin: 42px 0 0; border-top: 1px solid rgba(255,255,255,.16); }
.geba-next.gn-v4 .gn5-poster__specs > div { display: grid; gap: 7px; padding: 17px 16px 0 0; border-right: 1px solid rgba(255,255,255,.12); }
.geba-next.gn-v4 .gn5-poster__specs > div:not(:first-child) { padding-left: 16px; }
.geba-next.gn-v4 .gn5-poster__specs > div:last-child { border-right: 0; }
.geba-next.gn-v4 .gn5-poster__specs dt { color: rgba(255,255,255,.38); font: 700 8px/1 var(--gn-mono); letter-spacing: .12em; text-transform: uppercase; }
.geba-next.gn-v4 .gn5-poster__specs dd { margin: 0; color: rgba(255,255,255,.82); font: 600 11px/1.3 var(--gn-mono); }
.geba-next.gn-v4 .gn5-viewer {
--gn5-rx: 0deg; --gn5-ry: 0deg;
position: relative; z-index: 3; align-self: stretch; min-width: 0; min-height: 600px; outline: 0; perspective: 1200px; touch-action: pan-y; cursor: grab; user-select: none;
}
.geba-next.gn-v4 .gn5-viewer:active { cursor: grabbing; }
.geba-next.gn-v4 .gn5-viewer:focus-visible { outline: 1px solid var(--gn5-accent); outline-offset: 6px; }
.geba-next.gn-v4 .gn5-viewer__rings { position: absolute; top: 47%; left: 50%; width: min(44vw,610px); aspect-ratio: 1; border: 1px solid rgba(255,255,255,.13); border-radius: 50%; transform: translate(-50%,-50%) rotateX(64deg); }
.geba-next.gn-v4 .gn5-viewer__rings i { position: absolute; inset: 17%; border: 1px solid rgba(255,255,255,.09); border-radius: inherit; }
.geba-next.gn-v4 .gn5-viewer__rings i:nth-child(2) { inset: 34%; border-color: rgba(var(--gn5-accent-rgb),.36); }
.geba-next.gn-v4 .gn5-viewer__rings i:nth-child(3) { inset: -2%; border-color: rgba(var(--gn5-accent-rgb),.18); transform: rotateZ(17deg); }
.geba-next.gn-v4 .gn5-milan-object {
position: absolute; z-index: 2; top: 2%; left: 50%; width: auto; max-width: none; height: 91%; object-fit: contain;
filter: drop-shadow(0 42px 46px rgba(0,0,0,.7)); transform: translate3d(-50%,0,80px) rotateX(var(--gn5-rx)) rotateY(var(--gn5-ry)) rotateZ(-1deg); transform-origin: center 42%; transition: transform .18s ease-out, opacity .3s ease, filter .3s ease;
}
.geba-next.gn-v4 .gn5-viewer--milan.is-field .gn5-milan-object { top: 8%; width: 100%; height: 72%; object-fit: cover; border: 1px solid rgba(255,255,255,.16); filter: saturate(.82) contrast(1.08) drop-shadow(0 35px 45px rgba(0,0,0,.55)); transform: translate3d(-50%,0,35px) rotateX(var(--gn5-rx)) rotateY(var(--gn5-ry)); }
.geba-next.gn-v4 .gn5-viewer--cric { display: grid; place-items: center; }
.geba-next.gn-v4 .gn5-viewer__blueprint { position: absolute; top: 50%; left: 50%; width: min(44vw,610px); aspect-ratio: 1; border: 1px solid rgba(255,255,255,.1); background-image: linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px); background-size: 42px 42px; box-shadow: 0 0 80px rgba(var(--gn5-accent-rgb),.1); transform: translate(-50%,-50%) rotate(3deg); }
.geba-next.gn-v4 .gn5-viewer__blueprint::after { position: absolute; inset: 14%; content: ""; border: 1px solid rgba(var(--gn5-accent-rgb),.25); border-radius: 50%; }
.geba-next.gn-v4 .gn5-frame { position: absolute; z-index: 2; top: 49%; left: 50%; width: min(39vw,560px); max-height: 76%; object-fit: contain; opacity: 0; filter: drop-shadow(0 40px 42px rgba(0,0,0,.72)); transform: translate(-50%,-47%) scale(.92) rotate(-2deg); transition: opacity .22s ease, transform .32s ease; pointer-events: none; }
.geba-next.gn-v4 .gn5-frame.is-active { opacity: 1; transform: translate(-50%,-50%) scale(1) rotate(0); }
.geba-next.gn-v4 .gn5-viewer__toolbar { position: absolute; z-index: 5; right: 0; bottom: 74px; left: 0; display: flex; justify-content: space-between; gap: 20px; align-items: center; min-height: 54px; padding: 10px 12px 10px 18px; color: rgba(255,255,255,.68); border: 1px solid rgba(255,255,255,.16); background: rgba(4,7,10,.68); backdrop-filter: blur(16px); font: 650 9px/1 var(--gn-mono); letter-spacing: .1em; text-transform: uppercase; }
.geba-next.gn-v4 .gn5-viewer__toolbar b { color: var(--gn5-accent); }
.geba-next.gn-v4 .gn5-viewer__toolbar em { color: #fff; font-style: normal; }
.geba-next.gn-v4 .gn5-viewer__toolbar > div { display: flex; gap: 6px; }
.geba-next.gn-v4 .gn5-viewer__toolbar button { min-height: 34px; padding: 0 13px; color: rgba(255,255,255,.55); background: transparent; border: 1px solid rgba(255,255,255,.14); cursor: pointer; }
.geba-next.gn-v4 .gn5-viewer__toolbar button:hover,
.geba-next.gn-v4 .gn5-viewer__toolbar button.is-active { color: #fff; border-color: var(--gn5-accent); background: rgba(var(--gn5-accent-rgb),.14); }
.geba-next.gn-v4 .gn5-frame-dots { display: flex; gap: 6px; }
.geba-next.gn-v4 .gn5-frame-dots i { width: 18px; height: 2px; background: rgba(255,255,255,.2); }
.geba-next.gn-v4 .gn5-frame-dots i.is-active { background: var(--gn5-accent); }
.geba-next.gn-v4 .gn5-drag-hint { position: absolute; right: 0; bottom: 31px; left: 0; display: flex; gap: 10px; justify-content: center; margin: 0; color: rgba(255,255,255,.38); font: 650 8px/1.2 var(--gn-mono); letter-spacing: .12em; text-transform: uppercase; }
.geba-next.gn-v4 .gn5-drag-hint span { color: var(--gn5-accent); font-size: 15px; }
.geba-next.gn-v4 .gn5-viewer--wind { display: grid; place-items: center; }
.geba-next.gn-v4 .gn5-wind-orbit { position: absolute; top: 47%; left: 50%; width: min(46vw,650px); aspect-ratio: 1; border: 1px solid rgba(255,255,255,.15); border-radius: 50%; transform: translate(-50%,-50%) rotateX(65deg); box-shadow: 0 0 80px rgba(var(--gn5-accent-rgb),.16); }
.geba-next.gn-v4 .gn5-wind-orbit i { position: absolute; width: 8px; height: 8px; border-radius: 50%; background: var(--gn5-accent); box-shadow: 0 0 22px var(--gn5-accent); }
.geba-next.gn-v4 .gn5-wind-orbit i:nth-child(1) { top: 12%; left: 22%; }.geba-next.gn-v4 .gn5-wind-orbit i:nth-child(2) { right: -4px; top: 48%; }.geba-next.gn-v4 .gn5-wind-orbit i:nth-child(3) { bottom: 8%; left: 34%; width: 4px; height: 4px; }
.geba-next.gn-v4 .gn5-flip-card { position: absolute; z-index: 2; top: 2%; left: 50%; width: min(34vw,470px); height: 82%; transform-style: preserve-3d; transform: translateX(-50%) rotateY(0); transition: transform .8s cubic-bezier(.2,.72,.15,1); }
.geba-next.gn-v4 .gn5-viewer--wind.is-back .gn5-flip-card { transform: translateX(-50%) rotateY(180deg); }
.geba-next.gn-v4 .gn5-flip-card__face { position: absolute; inset: 0; display: grid; place-items: center; backface-visibility: hidden; }
.geba-next.gn-v4 .gn5-flip-card__face--back { transform: rotateY(180deg); }
.geba-next.gn-v4 .gn5-flip-card img { width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 36px 38px rgba(0,0,0,.62)); pointer-events: none; }
.geba-next.gn-v4 .gn5-viewer--wind .gn5-viewer__toolbar button { color: #04131c; background: var(--gn5-accent); border-color: var(--gn5-accent); font-weight: 800; }
.geba-next.gn-v4 .gn5-viewer--360 { display: grid; place-items: center; }
.geba-next.gn-v4 .gn5-360-frame {
position: absolute; z-index: 3; top: 47%; left: 50%; width: min(44vw,630px); height: min(44vw,630px); object-fit: contain;
opacity: 0; filter: drop-shadow(0 40px 38px rgba(0,0,0,.62)); transform: translate(-50%,-50%) scale(.965); transition: opacity .12s linear, transform .18s ease; pointer-events: none;
}
.geba-next.gn-v4 .gn5-360-frame.is-active { opacity: 1; transform: translate(-50%,-50%) scale(1); }
.geba-next.gn-v4 .gn5-viewer--cric .gn5-360-frame { width: min(41vw,585px); height: min(41vw,585px); }
.geba-next.gn-v4 .gn5-viewer--milan .gn5-360-frame { width: min(42vw,610px); height: min(42vw,610px); }
.geba-next.gn-v4 .gn5-360-dots { display: flex; gap: 6px; }
.geba-next.gn-v4 .gn5-360-dots i { width: 18px; height: 2px; background: rgba(255,255,255,.2); transition: background .15s ease, transform .15s ease; }
.geba-next.gn-v4 .gn5-360-dots i.is-active { background: var(--gn5-accent); transform: scaleY(2); }
.geba-next.gn-v4 .gn5-viewer--360::after { position: absolute; z-index: 1; top: 47%; left: 50%; width: min(33vw,470px); aspect-ratio: 1; content: ""; border-radius: 50%; background: radial-gradient(circle,rgba(var(--gn5-accent-rgb),.16),transparent 67%); transform: translate(-50%,-50%); filter: blur(12px); pointer-events: none; }
.geba-next.gn-v4 .gn5-showcase__navigation { position: absolute; z-index: 10; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 24px; align-items: stretch; min-height: 104px; border-top: 1px solid rgba(255,255,255,.16); }
.geba-next.gn-v4 .gn5-showcase__tabs { display: grid; grid-template-columns: repeat(3,1fr); }
.geba-next.gn-v4 .gn5-showcase__tabs button { position: relative; display: grid; grid-template-columns: 28px 1fr; gap: 12px; align-items: center; min-width: 0; padding: 22px 22px 22px 0; color: rgba(255,255,255,.42); text-align: left; background: transparent; border: 0; border-right: 1px solid rgba(255,255,255,.12); cursor: pointer; }
.geba-next.gn-v4 .gn5-showcase__tabs button::after { position: absolute; right: 18px; bottom: -1px; left: 0; height: 2px; content: ""; background: #fff; transform: scaleX(0); transform-origin: left; transition: transform .4s ease; }
.geba-next.gn-v4 .gn5-showcase__tabs button.is-active { color: #fff; }
.geba-next.gn-v4 .gn5-showcase__tabs button.is-active::after { transform: scaleX(1); }
.geba-next.gn-v4 .gn5-showcase__tabs small { font: 750 9px/1 var(--gn-mono); color: var(--gn4-pink); }
.geba-next.gn-v4 .gn5-showcase__tabs span { overflow: hidden; font: 700 10px/1.25 var(--gn-mono); letter-spacing: .08em; text-overflow: ellipsis; white-space: nowrap; }
.geba-next.gn-v4 .gn5-showcase__controls { display: flex; gap: 8px; align-items: center; padding-left: 10px; }
.geba-next.gn-v4 .gn5-showcase__controls > span { margin-right: 10px; color: rgba(255,255,255,.45); font: 700 9px/1 var(--gn-mono); }
.geba-next.gn-v4 .gn5-showcase__controls > span b { color: #fff; }
.geba-next.gn-v4 .gn5-showcase__controls button { width: 52px; height: 52px; color: #fff; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.18); cursor: pointer; }
.geba-next.gn-v4 .gn5-showcase__controls button:hover { color: #08090b; background: #fff; }
@media (max-width: 1180px) {
.geba-next.gn-v4 .gn5-poster__grid { grid-template-columns: minmax(0,1fr) minmax(380px,.66fr); gap: 24px; }
.geba-next.gn-v4 .gn5-poster__copy h1,.geba-next.gn-v4 .gn5-poster__copy h2 { font-size: clamp(58px,7vw,84px); }
.geba-next.gn-v4 .gn5-viewer { min-height: 560px; }
.geba-next.gn-v4 .gn5-showcase__tabs span { font-size: 9px; }
}
@media (max-width: 820px) {
.geba-next.gn-v4 .gn5-showcase,.geba-next.gn-v4 .gn5-showcase__track,.geba-next.gn-v4 .gn5-poster { min-height: 1050px; }
.geba-next.gn-v4 .gn5-poster__grid { grid-template-columns: 1fr; align-content: start; min-height: 1050px; padding-top: 125px; padding-bottom: 128px; }
.geba-next.gn-v4 .gn5-poster__copy { max-width: 670px; }
.geba-next.gn-v4 .gn5-poster__copy h1,.geba-next.gn-v4 .gn5-poster__copy h2 { margin-top: 22px; font-size: clamp(48px,11vw,72px); }
.geba-next.gn-v4 .gn5-poster__copy > p:not(.gn5-eyebrow) { margin-top: 22px; font-size: 15px; }
.geba-next.gn-v4 .gn5-poster__actions { margin-top: 24px; }
.geba-next.gn-v4 .gn5-poster__specs { margin-top: 28px; }
.geba-next.gn-v4 .gn5-viewer { min-height: 440px; }
.geba-next.gn-v4 .gn5-milan-object { height: 104%; top: -3%; }
.geba-next.gn-v4 .gn5-frame { width: min(75vw,500px); max-height: 85%; }
.geba-next.gn-v4 .gn5-flip-card { width: min(62vw,430px); height: 92%; top: -7%; }
.geba-next.gn-v4 .gn5-viewer__rings,.geba-next.gn-v4 .gn5-viewer__blueprint,.geba-next.gn-v4 .gn5-wind-orbit { width: min(74vw,540px); }
.geba-next.gn-v4 .gn5-360-frame,.geba-next.gn-v4 .gn5-viewer--cric .gn5-360-frame,.geba-next.gn-v4 .gn5-viewer--milan .gn5-360-frame { width: min(82vw,520px); height: min(82vw,520px); }
.geba-next.gn-v4 .gn5-showcase__navigation { min-height: 86px; }
.geba-next.gn-v4 .gn5-showcase__tabs button { grid-template-columns: 1fr; gap: 6px; padding: 15px 10px 15px 0; }
.geba-next.gn-v4 .gn5-showcase__tabs span { display: none; }
.geba-next.gn-v4 .gn5-showcase__controls button { width: 46px; height: 46px; }
}
@media (max-width: 560px) {
.geba-next.gn-v4 .gn5-showcase,.geba-next.gn-v4 .gn5-showcase__track,.geba-next.gn-v4 .gn5-poster { min-height: 990px; }
.geba-next.gn-v4 .gn5-poster__grid { min-height: 990px; padding-top: 112px; padding-bottom: 105px; }
.geba-next.gn-v4 .gn5-poster__copy h1,.geba-next.gn-v4 .gn5-poster__copy h2 { font-size: clamp(43px,12.5vw,61px); }
.geba-next.gn-v4 .gn5-poster__actions { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(118px,.75fr); }
.geba-next.gn-v4 .gn5-poster__actions .gn-button { width: 100%; padding-inline: 12px; font-size: 10px; }
.geba-next.gn-v4 .gn5-poster__specs { grid-template-columns: 1fr 1fr 1fr; }
.geba-next.gn-v4 .gn5-poster__specs > div { padding-right: 8px; }
.geba-next.gn-v4 .gn5-poster__specs > div:not(:first-child) { padding-left: 8px; }
.geba-next.gn-v4 .gn5-poster__specs dd { font-size: 9px; }
.geba-next.gn-v4 .gn5-viewer { min-height: 380px; }
.geba-next.gn-v4 .gn5-milan-object { height: 102%; }
.geba-next.gn-v4 .gn5-viewer__toolbar { bottom: 56px; min-height: 48px; padding: 8px 9px; font-size: 7px; }
.geba-next.gn-v4 .gn5-viewer__toolbar button { min-height: 30px; padding: 0 8px; font-size: 8px; }
.geba-next.gn-v4 .gn5-drag-hint { bottom: 20px; font-size: 7px; }
.geba-next.gn-v4 .gn5-frame-dots i { width: 8px; }
.geba-next.gn-v4 .gn5-360-dots i { width: 8px; }
.geba-next.gn-v4 .gn5-showcase__navigation { grid-template-columns: 1fr auto; min-height: 72px; }
.geba-next.gn-v4 .gn5-showcase__tabs button { padding: 12px 4px 12px 0; }
.geba-next.gn-v4 .gn5-showcase__controls > span { display: none; }
.geba-next.gn-v4 .gn5-showcase__controls button { width: 38px; height: 38px; }
}
@media (prefers-reduced-motion: reduce) {
.geba-next.gn-v4 .gn5-poster,.geba-next.gn-v4 .gn5-frame,.geba-next.gn-v4 .gn5-milan-object,.geba-next.gn-v4 .gn5-flip-card { transition: none; }
}
/* =========================================================
GEBA Safety v4.4.1 — Stage 1 visibility and responsive recovery
Critical contrast, tablet navigation and overflow corrections.
========================================================= */
/* Dark sector surfaces must never inherit the light-page ink color. */
.geba-next.gn-v4 .gn-sectors,
.geba-next.gn-v4 .gn-sectors .gn-section-head,
.geba-next.gn-v4 .gn-sectors .gn-section-head h2,
.geba-next.gn-v4 .gn-sectors .gn-text-link,
.geba-next.gn-v4 .gn-sector,
.geba-next.gn-v4 .gn-sector__content strong,
.geba-next.gn-v4 .gn-sector__content em {
color: #fff;
}
.geba-next.gn-v4 .gn-sectors .gn-section-head > p {
color: rgba(255, 255, 255, .68);
}
.geba-next.gn-v4 .gn-sector__content small {
color: #ff73ad;
font-size: 11px;
}
.geba-next.gn-v4 .gn-sector__content em {
font-size: 12px;
border-bottom-color: rgba(255, 255, 255, .62);
}
/* The current breadcrumb label previously turned black on the dark hero. */
.geba-next.gn-v4 .gn-page-hero .gn-breadcrumb.gn-breadcrumb--dark {
color: rgba(255, 255, 255, .62);
font-size: 12px;
}
.geba-next.gn-v4 .gn-page-hero .gn-breadcrumb.gn-breadcrumb--dark a,
.geba-next.gn-v4 .gn-page-hero .gn-breadcrumb.gn-breadcrumb--dark span {
color: inherit;
}
.geba-next.gn-v4 .gn-page-hero .gn-breadcrumb.gn-breadcrumb--dark b {
color: #fff;
}
/* Keep high-chroma calls to action readable at small text sizes. */
.geba-next.gn-v4 .gn-nav__cta,
.geba-next.gn-v4 .gn5-poster__actions .gn-button--primary {
color: #08090b;
}
.geba-next.gn-v4 .gn-page-cta,
.geba-next.gn-v4 .gn4-cta {
color: #08090b;
}
.geba-next.gn-v4 .gn-page-cta .gn-section-index,
.geba-next.gn-v4 .gn4-cta .gn4-index,
.geba-next.gn-v4 .gn4-cta__grid > div > a {
color: rgba(8, 9, 11, .78);
}
.geba-next.gn-v4 :is(.gn-nav__cta, .gn-button):focus-visible,
.geba-next.gn-v4 .gn-text-link:focus-visible {
outline: 2px solid #fff;
outline-offset: 3px;
}
/* Restore readable utility text without inflating the editorial hierarchy. */
.geba-next.gn-v4 .gn-section-index,
.geba-next.gn-v4 .gn-form label > span,
.geba-next.gn-v4 .gn-form__check span,
.geba-next.gn-v4 .gn-contact-page__details small {
font-size: 12px;
}
.geba-next.gn-v4 .gn5-poster__specs dt {
font-size: 10px;
}
.geba-next.gn-v4 .gn5-poster__specs dd {
font-size: 12px;
}
/* Footer copy and legal links were below a comfortable reading threshold. */
.geba-next.gn-v4 .gn-footer {
color: rgba(255, 255, 255, .76);
}
.geba-next.gn-v4 .gn-footer__top > div:first-child p {
font-size: 14px;
}
.geba-next.gn-v4 .gn-footer__top small {
color: rgba(255, 255, 255, .62);
font-size: 12px;
}
.geba-next.gn-v4 .gn-footer__top a:not(.gn-logo) {
font-size: 14px;
line-height: 1.55;
}
.geba-next.gn-v4 .gn-footer__bottom {
color: rgba(255, 255, 255, .66);
font-size: 12px;
line-height: 1.6;
}
/* The two fixed minimum columns clipped the service steps around tablet widths. */
@media (max-width: 1080px) {
.geba-next.gn-v4 .gn-engineering__grid {
grid-template-columns: minmax(0, 1fr);
gap: 64px;
}
.geba-next.gn-v4 .gn-engineering__grid > div:first-child {
position: static;
}
.geba-next.gn-v4 .gn-engineering__steps,
.geba-next.gn-v4 .gn-engineering__steps article,
.geba-next.gn-v4 .gn-engineering__steps article > div {
min-width: 0;
}
}
/* Switch to the compact navigation before the desktop links become crowded. */
@media (max-width: 1024px) {
.geba-next.gn-v4 .gn-header,
.geba-next.gn-v4 .gn-header.is-sticky {
height: 70px;
}
.geba-next.gn-v4 .gn-menu-toggle {
position: relative;
z-index: 102;
display: grid;
gap: 6px;
width: 44px;
height: 44px;
padding: 13px 9px;
color: #fff;
background: transparent;
border: 0;
place-content: center;
}
.geba-next.gn-v4 .gn-menu-toggle i {
display: block;
width: 24px;
height: 1px;
background: currentColor;
transition: transform .2s ease;
}
.geba-next.gn-v4 .gn-menu-toggle[aria-expanded="true"] i:first-of-type {
transform: translateY(3.5px) rotate(45deg);
}
.geba-next.gn-v4 .gn-menu-toggle[aria-expanded="true"] i:last-of-type {
transform: translateY(-3.5px) rotate(-45deg);
}
.geba-next.gn-v4 .gn-nav {
position: fixed;
z-index: 101;
inset: 0;
display: grid;
align-content: center;
justify-items: start;
gap: 8px;
padding: 88px clamp(24px, 8vw, 80px) 42px;
overflow-y: auto;
visibility: hidden;
opacity: 0;
background: rgba(8, 9, 11, .985);
transform: translateY(-12px);
transition: opacity .2s ease, transform .2s ease, visibility .2s;
}
.geba-next.gn-v4 .gn-nav.is-open {
visibility: visible;
opacity: 1;
transform: translateY(0);
}
.geba-next.gn-v4 .gn-nav > a {
width: 100%;
padding: 11px 0;
color: #fff;
font-size: clamp(25px, 4.4vw, 38px);
letter-spacing: -.04em;
}
.geba-next.gn-v4 .gn-nav > a::after {
display: none;
}
.geba-next.gn-v4 .gn-nav__cta {
width: 100%;
min-height: 54px;
margin-top: 18px;
color: #08090b;
}
.geba-next.gn-v4 .gn-mega {
width: 100%;
}
.geba-next.gn-v4 .gn-nav .gn-mega > summary {
padding: 11px 0;
color: #fff;
font-size: clamp(25px, 4.4vw, 38px);
font-weight: 650;
letter-spacing: -.04em;
}
.geba-next.gn-v4 .gn-mega__panel {
position: static;
grid-template-columns: 1fr;
gap: 24px;
width: 100%;
max-height: 42vh;
padding: 18px;
overflow-y: auto;
box-shadow: none;
}
.geba-next.gn-v4 .gn-mega__panel > div {
grid-template-columns: 1fr;
}
}
/* Every sector card receives a defined row on tablet and mobile. */
@media (max-width: 820px) {
.geba-next.gn-v4 .gn-sector-grid {
grid-template-rows: none;
grid-auto-rows: minmax(340px, 52vw);
}
.geba-next.gn-v4 .gn-sector--wide {
min-height: 500px;
}
}
@media (max-width: 560px) {
.geba-next.gn-v4 .gn-sector-grid {
grid-template-columns: minmax(0, 1fr);
grid-template-rows: none;
grid-auto-rows: minmax(360px, 105vw);
}
.geba-next.gn-v4 .gn-sector,
.geba-next.gn-v4 .gn-sector--wide {
min-height: 360px;
}
.geba-next.gn-v4 .gn-footer__bottom {
gap: 12px;
}
}
/* =========================================================
GEBA Safety v4.5.0 — Stage 2 visual hierarchy and component polish
Editorial rhythm, premium surfaces and coherent interaction feedback.
========================================================= */
.geba-next.gn-v4 {
--gn-stage2-paper: #f2f1ed;
--gn-stage2-paper-strong: #e9e7e1;
--gn-stage2-card: #fbfaf7;
--gn-stage2-line: rgba(16, 18, 22, .13);
--gn-stage2-line-strong: rgba(16, 18, 22, .24);
--gn-stage2-shadow: 0 24px 70px rgba(12, 14, 18, .09);
--gn-stage2-shadow-dark: 0 34px 90px rgba(0, 0, 0, .34);
--gn-stage2-radius: 18px;
--gn-stage2-ease: cubic-bezier(.2, .72, .18, 1);
background: var(--gn-stage2-paper);
}
.geba-next.gn-v4 .gn-shell {
width: min(calc(100% - 64px), 1440px);
}
.geba-next.gn-v4 :where(.gn4-title-row h2, .gn-section-head h2, .gn-section-heading h2, .gn-page-about h2) {
text-wrap: balance;
}
.geba-next.gn-v4 :where(.gn4-index, .gn-section-index) {
display: flex;
gap: 13px;
align-items: center;
color: var(--gn4-pink);
font-size: 11px;
line-height: 1.35;
}
.geba-next.gn-v4 :where(.gn4-index, .gn-section-index)::before {
width: 28px;
height: 1px;
flex: 0 0 auto;
content: "";
background: currentColor;
}
/* Header: a calmer, architectural top bar with a clear primary action. */
.geba-next.gn-v4 .gn-header {
background: linear-gradient(180deg, rgba(7, 8, 10, .97), rgba(7, 8, 10, .87));
border-bottom-color: rgba(255, 255, 255, .1);
box-shadow: 0 12px 36px rgba(0, 0, 0, .12);
}
.geba-next.gn-v4 .gn-header.is-sticky {
background: rgba(7, 8, 10, .965);
box-shadow: 0 16px 46px rgba(0, 0, 0, .25);
}
.geba-next.gn-v4 .gn-nav > a:not(.gn-nav__cta) {
color: rgba(255, 255, 255, .72);
font-size: 13px;
font-weight: 650;
}
.geba-next.gn-v4 .gn-nav > a:not(.gn-nav__cta):hover {
color: #fff;
}
.geba-next.gn-v4 .gn-nav__cta {
min-height: 52px;
padding-inline: 24px;
box-shadow: 0 12px 34px rgba(243, 0, 103, .24);
}
/* Hero: reinforce the product-stage illusion without replacing authentic media. */
.geba-next.gn-v4 .gn5-poster__copy h1,
.geba-next.gn-v4 .gn5-poster__copy h2 {
max-width: 780px;
font-size: clamp(60px, 6vw, 98px);
line-height: .9;
letter-spacing: -.065em;
}
.geba-next.gn-v4 .gn5-poster__copy > p:not(.gn5-eyebrow) {
max-width: 610px;
color: rgba(255, 255, 255, .72);
}
.geba-next.gn-v4 .gn5-viewer::before {
position: absolute;
z-index: 0;
top: 47%;
left: 50%;
width: min(40vw, 580px);
aspect-ratio: 1;
content: "";
border-radius: 50%;
background: radial-gradient(circle, rgba(var(--gn5-accent-rgb), .18), rgba(var(--gn5-accent-rgb), .045) 43%, transparent 70%);
filter: blur(8px);
transform: translate(-50%, -50%);
pointer-events: none;
}
.geba-next.gn-v4 .gn5-360-frame {
filter: drop-shadow(0 46px 44px rgba(0, 0, 0, .7));
}
.geba-next.gn-v4 .gn5-viewer__toolbar {
min-height: 60px;
padding-inline: 20px;
border-color: rgba(255, 255, 255, .2);
border-radius: 12px;
background: linear-gradient(90deg, rgba(5, 7, 10, .88), rgba(14, 14, 16, .68));
box-shadow: 0 20px 54px rgba(0, 0, 0, .3);
}
.geba-next.gn-v4 .gn5-showcase__navigation {
background: linear-gradient(180deg, rgba(6, 7, 9, .62), rgba(6, 7, 9, .94));
backdrop-filter: blur(18px);
}
.geba-next.gn-v4 .gn5-showcase__tabs button {
transition: color .25s ease, background .25s ease;
}
.geba-next.gn-v4 .gn5-showcase__tabs button:hover,
.geba-next.gn-v4 .gn5-showcase__tabs button.is-active {
color: #fff;
background: rgba(255, 255, 255, .035);
}
/* Home editorial sections. */
.geba-next.gn-v4 .gn4-intro {
position: relative;
padding: 150px 0;
overflow: hidden;
background:
radial-gradient(circle at 82% 5%, rgba(243, 0, 103, .055), transparent 28%),
#fff;
}
.geba-next.gn-v4 .gn4-intro::after {
position: absolute;
top: 0;
left: calc(50% - 1px);
width: 1px;
height: 84px;
content: "";
background: var(--gn-stage2-line-strong);
}
.geba-next.gn-v4 .gn4-intro__grid > p:last-child {
color: #565a62;
font-size: 18px;
}
.geba-next.gn-v4 .gn4-category-grid {
gap: 12px;
margin-top: 86px;
border: 0;
}
.geba-next.gn-v4 .gn4-category {
min-height: 265px;
padding: 28px;
overflow: hidden;
border: 1px solid var(--gn-stage2-line);
border-radius: 14px;
background: var(--gn-stage2-card);
box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset;
transition: color .35s var(--gn-stage2-ease), background .35s var(--gn-stage2-ease), transform .35s var(--gn-stage2-ease), box-shadow .35s var(--gn-stage2-ease);
}
.geba-next.gn-v4 .gn4-category::before {
position: absolute;
z-index: 2;
top: 0;
right: 0;
left: 0;
height: 3px;
content: "";
background: linear-gradient(90deg, var(--gn4-pink), transparent 78%);
transform: scaleX(.2);
transform-origin: left;
transition: transform .4s var(--gn-stage2-ease);
}
.geba-next.gn-v4 .gn4-category:hover {
color: #fff;
background: var(--gn4-ink);
box-shadow: var(--gn-stage2-shadow);
transform: translateY(-6px);
}
.geba-next.gn-v4 .gn4-category:hover::before {
transform: scaleX(1);
}
.geba-next.gn-v4 .gn4-category strong {
font-size: clamp(22px, 2vw, 29px);
}
.geba-next.gn-v4 .gn4-feature {
padding: 145px 0;
background:
radial-gradient(circle at 9% 12%, rgba(243, 0, 103, .09), transparent 24%),
radial-gradient(circle at 86% 88%, rgba(255, 90, 18, .09), transparent 24%),
#0b0d11;
}
.geba-next.gn-v4 .gn4-feature__media {
border: 1px solid rgba(255, 255, 255, .14);
border-radius: var(--gn-stage2-radius);
box-shadow: var(--gn-stage2-shadow-dark);
}
.geba-next.gn-v4 .gn4-feature__media::before {
position: absolute;
z-index: 2;
inset: 18px;
content: "";
border: 1px solid rgba(255, 255, 255, .18);
border-radius: 11px;
pointer-events: none;
}
.geba-next.gn-v4 .gn4-feature__copy {
padding-left: clamp(0px, 2vw, 28px);
}
.geba-next.gn-v4 .gn4-specs > div {
transition: padding-left .25s ease, background .25s ease;
}
.geba-next.gn-v4 .gn4-specs > div:hover {
padding-left: 12px;
background: rgba(255, 255, 255, .035);
}
.geba-next.gn-v4 .gn4-products {
padding: 145px 0;
background: var(--gn-stage2-paper);
}
.geba-next.gn-v4 .gn4-product-grid {
gap: 18px;
margin-top: 68px;
}
.geba-next.gn-v4 .gn4-product-card {
position: relative;
overflow: hidden;
border: 1px solid var(--gn-stage2-line);
border-radius: var(--gn-stage2-radius);
background: #fff;
box-shadow: 0 12px 36px rgba(12, 14, 18, .035);
transition: transform .4s var(--gn-stage2-ease), box-shadow .4s var(--gn-stage2-ease), border-color .4s ease;
}
.geba-next.gn-v4 .gn4-product-card::after {
position: absolute;
right: 0;
bottom: 0;
left: 0;
height: 3px;
content: "";
background: linear-gradient(90deg, var(--gn4-pink), var(--gn4-orange));
transform: scaleX(0);
transform-origin: left;
transition: transform .4s var(--gn-stage2-ease);
}
.geba-next.gn-v4 .gn4-product-card:hover {
border-color: rgba(16, 18, 22, .22);
box-shadow: var(--gn-stage2-shadow);
transform: translateY(-8px);
}
.geba-next.gn-v4 .gn4-product-card:hover::after {
transform: scaleX(1);
}
.geba-next.gn-v4 .gn4-product-card__image {
background:
radial-gradient(circle at 50% 44%, rgba(255, 255, 255, .96), transparent 47%),
#e9e7e1;
}
.geba-next.gn-v4 .gn4-product-card__body {
min-height: 184px;
padding: 24px;
}
.geba-next.gn-v4 .gn4-product-card__body strong {
font-size: 20px;
}
.geba-next.gn-v4 .gn4-sectors {
padding: 145px 0;
background:
linear-gradient(rgba(255, 255, 255, .022) 1px, transparent 1px),
linear-gradient(90deg, rgba(255, 255, 255, .022) 1px, transparent 1px),
var(--gn4-black);
background-size: 72px 72px;
}
.geba-next.gn-v4 .gn4-sector-grid {
gap: 20px;
margin-top: 70px;
}
.geba-next.gn-v4 .gn4-sector {
min-height: 540px;
border: 1px solid rgba(255, 255, 255, .14);
border-radius: var(--gn-stage2-radius);
box-shadow: 0 24px 70px rgba(0, 0, 0, .22);
}
.geba-next.gn-v4 .gn4-sector::before {
position: absolute;
z-index: 2;
inset: 18px;
content: "";
border: 1px solid rgba(255, 255, 255, .16);
border-radius: 12px;
opacity: .7;
pointer-events: none;
transition: inset .45s var(--gn-stage2-ease), opacity .45s ease;
}
.geba-next.gn-v4 .gn4-sector:hover::before {
inset: 12px;
opacity: 1;
}
.geba-next.gn-v4 .gn4-sector::after {
background: linear-gradient(0deg, rgba(5, 6, 8, .95), rgba(5, 6, 8, .1) 76%);
}
.geba-next.gn-v4 .gn4-services {
padding: 150px 0;
background:
radial-gradient(circle at 12% 92%, rgba(243, 0, 103, .055), transparent 24%),
#fff;
}
.geba-next.gn-v4 .gn4-services__grid {
gap: clamp(70px, 10vw, 150px);
}
.geba-next.gn-v4 .gn4-services__grid > div:first-child {
position: sticky;
top: 120px;
}
.geba-next.gn-v4 .gn4-services ol {
display: grid;
gap: 12px;
border-top: 0;
}
.geba-next.gn-v4 .gn4-services li {
grid-template-columns: 58px 1fr;
gap: 24px;
padding: 25px;
border: 1px solid var(--gn-stage2-line);
border-radius: 14px;
background: var(--gn-stage2-card);
transition: transform .3s var(--gn-stage2-ease), box-shadow .3s ease, border-color .3s ease;
}
.geba-next.gn-v4 .gn4-services li:hover {
border-color: rgba(243, 0, 103, .28);
box-shadow: 0 18px 48px rgba(12, 14, 18, .07);
transform: translateX(8px);
}
.geba-next.gn-v4 .gn4-services li b {
display: grid;
width: 42px;
height: 42px;
color: #fff;
border-radius: 50%;
background: var(--gn4-pink);
place-items: center;
}
.geba-next.gn-v4 .gn4-services li small {
color: #62666e;
font-size: 13px;
}
.geba-next.gn-v4 .gn4-brands {
padding: 145px 0;
background: var(--gn-stage2-paper);
}
.geba-next.gn-v4 .gn4-brand-strip {
gap: 12px;
margin-top: 68px;
border-top: 0;
}
.geba-next.gn-v4 .gn4-brand-strip a,
.geba-next.gn-v4 .gn4-brand-strip a:nth-child(odd),
.geba-next.gn-v4 .gn4-brand-strip a:nth-child(even) {
min-height: 126px;
padding: 28px 58px 28px 28px;
border: 1px solid var(--gn-stage2-line);
border-radius: 14px;
background: var(--gn-stage2-card);
transition: color .3s ease, background .3s ease, transform .3s var(--gn-stage2-ease), box-shadow .3s ease;
}
.geba-next.gn-v4 .gn4-brand-strip a:hover {
color: #fff;
background: var(--gn4-ink);
box-shadow: var(--gn-stage2-shadow);
transform: translateY(-4px);
}
.geba-next.gn-v4 .gn4-brand-strip a:hover span {
color: rgba(255, 255, 255, .65);
}
/* Inner pages: consistent premium surfaces across every route. */
.geba-next.gn-v4 .gn-page-hero {
min-height: 590px;
padding: 180px 0 105px;
box-shadow: inset 0 -1px rgba(255, 255, 255, .12);
}
.geba-next.gn-v4 .gn-page-hero::before {
background:
linear-gradient(90deg, rgba(7, 8, 10, .985) 0%, rgba(7, 8, 10, .82) 52%, rgba(7, 8, 10, .45) 100%),
var(--gn-page-image) center / cover no-repeat;
filter: saturate(.68) contrast(1.06);
}
.geba-next.gn-v4 .gn-page-hero::after {
opacity: .17;
background-size: 64px 64px;
mask-image: linear-gradient(90deg, #000, transparent 82%);
}
.geba-next.gn-v4 .gn-page-hero h1 {
max-width: 960px;
font-size: clamp(58px, 7vw, 104px);
line-height: .9;
}
.geba-next.gn-v4 .gn-page-hero__inner > p:last-child {
max-width: 760px;
color: rgba(255, 255, 255, .73);
font-size: clamp(17px, 1.45vw, 22px);
}
.geba-next.gn-v4 :where(.gn-page-solutions, .gn-brand-world, .gn-engineering, .gn-page-about, .gn-contact-page, .gn-page-editor) {
padding-block: 140px;
}
.geba-next.gn-v4 .gn-section-head,
.geba-next.gn-v4 .gn-section-heading {
grid-template-columns: minmax(0, 1.1fr) minmax(280px, .48fr);
gap: clamp(48px, 8vw, 120px);
align-items: end;
}
.geba-next.gn-v4 .gn-page-solutions {
background: #fff;
}
.geba-next.gn-v4 .gn-page-solutions__grid {
gap: 14px;
margin-top: 78px;
border: 0;
}
.geba-next.gn-v4 .gn-page-solutions__grid > a {
min-height: 340px;
overflow: hidden;
border: 1px solid var(--gn-stage2-line);
border-radius: var(--gn-stage2-radius);
background: var(--gn-stage2-card);
box-shadow: 0 12px 34px rgba(12, 14, 18, .035);
transition: color .35s ease, background .35s ease, transform .35s var(--gn-stage2-ease), box-shadow .35s ease;
}
.geba-next.gn-v4 .gn-page-solutions__grid > a::before {
position: absolute;
inset: 0;
content: "";
background: radial-gradient(circle at 90% 10%, rgba(243, 0, 103, .16), transparent 32%);
opacity: 0;
transition: opacity .35s ease;
}
.geba-next.gn-v4 .gn-page-solutions__grid > a:hover {
color: #fff;
background: var(--gn4-ink);
box-shadow: var(--gn-stage2-shadow);
transform: translateY(-6px);
}
.geba-next.gn-v4 .gn-page-solutions__grid > a:hover::before {
opacity: 1;
}
.geba-next.gn-v4 .gn-brand-world {
background: var(--gn-stage2-paper);
}
.geba-next.gn-v4 .gn-brand-world__grid {
gap: 16px;
}
.geba-next.gn-v4 .gn-brand-card {
min-height: 350px;
overflow: hidden;
border: 1px solid rgba(255, 255, 255, .12);
border-radius: var(--gn-stage2-radius);
box-shadow: 0 20px 55px rgba(8, 9, 11, .1);
}
.geba-next.gn-v4 .gn-brand-card:hover {
box-shadow: var(--gn-stage2-shadow-dark);
transform: translateY(-8px);
}
.geba-next.gn-v4 .gn-sector-grid {
gap: 16px;
}
.geba-next.gn-v4 .gn-sector {
overflow: hidden;
border: 1px solid rgba(255, 255, 255, .13);
border-radius: var(--gn-stage2-radius);
box-shadow: 0 22px 60px rgba(0, 0, 0, .18);
}
.geba-next.gn-v4 .gn-sector__content {
right: 30px;
bottom: 30px;
left: 30px;
}
.geba-next.gn-v4 .gn-engineering {
background:
radial-gradient(circle at 80% 8%, rgba(243, 0, 103, .05), transparent 28%),
#fff;
}
.geba-next.gn-v4 .gn-engineering__steps {
display: grid;
gap: 12px;
}
.geba-next.gn-v4 .gn-engineering__steps article {
padding: 28px;
border: 1px solid var(--gn-stage2-line);
border-radius: 14px;
background: var(--gn-stage2-card);
transition: border-color .3s ease, box-shadow .3s ease, transform .3s var(--gn-stage2-ease);
}
.geba-next.gn-v4 .gn-engineering__steps article:hover {
border-color: rgba(243, 0, 103, .28);
box-shadow: 0 18px 48px rgba(12, 14, 18, .07);
transform: translateX(7px);
}
.geba-next.gn-v4 .gn-engineering__steps article > span {
display: grid;
width: 44px;
height: 44px;
align-self: start;
color: #fff;
border-radius: 999px;
background: var(--gn4-pink);
font-size: 11px;
font-weight: 800;
place-items: center;
}
.geba-next.gn-v4 .gn-page-about__copy {
padding: 38px;
border: 1px solid var(--gn-stage2-line);
border-radius: var(--gn-stage2-radius);
background: var(--gn-stage2-card);
box-shadow: var(--gn-stage2-shadow);
}
.geba-next.gn-v4 .gn-page-facts {
gap: 14px;
border-top: 0;
}
.geba-next.gn-v4 .gn-page-facts span {
padding: 22px;
border: 1px solid var(--gn-stage2-line);
border-radius: 12px;
background: #fff;
}
.geba-next.gn-v4 .gn-contact-page {
background:
radial-gradient(circle at 10% 10%, rgba(243, 0, 103, .05), transparent 26%),
var(--gn-stage2-paper);
}
.geba-next.gn-v4 .gn-contact-page__details > a,
.geba-next.gn-v4 .gn-contact-page__details > div {
transition: padding-left .25s ease, border-color .25s ease;
}
.geba-next.gn-v4 .gn-contact-page__details > a:hover {
padding-left: 12px;
border-color: var(--gn4-pink);
}
.geba-next.gn-v4 .gn-form--page {
padding: clamp(28px, 4vw, 54px);
border: 1px solid var(--gn-stage2-line);
border-radius: var(--gn-stage2-radius);
background: #0d0f13;
box-shadow: var(--gn-stage2-shadow);
}
.geba-next.gn-v4 .gn-form--page input:not([type="checkbox"]),
.geba-next.gn-v4 .gn-form--page select,
.geba-next.gn-v4 .gn-form--page textarea {
border-radius: 10px;
background: rgba(255, 255, 255, .075);
border-color: rgba(255, 255, 255, .18);
}
.geba-next.gn-v4 .gn-form--page input:not([type="checkbox"]):focus,
.geba-next.gn-v4 .gn-form--page select:focus,
.geba-next.gn-v4 .gn-form--page textarea:focus {
border-color: var(--gn4-pink);
box-shadow: 0 0 0 3px rgba(243, 0, 103, .13);
}
.geba-next.gn-v4 .gn-page-editor__inner {
max-width: 980px;
padding: clamp(28px, 5vw, 68px);
border: 1px solid var(--gn-stage2-line);
border-radius: var(--gn-stage2-radius);
background: var(--gn-stage2-card);
box-shadow: 0 18px 55px rgba(12, 14, 18, .055);
}
/* Catalog and product cards share the same depth and radius language. */
.geba-next.gn-v4 .gn-catalog-body {
background: var(--gn-stage2-paper);
}
.geba-next.gn-v4 .gn-catalog-filter {
padding: 20px;
border-radius: 14px;
background: rgba(255, 255, 255, .9);
box-shadow: 0 18px 54px rgba(12, 14, 18, .06);
}
.geba-next.gn-v4 .gn-catalog-filter input,
.geba-next.gn-v4 .gn-catalog-filter select {
border-radius: 9px;
background: #f5f4f1;
}
.geba-next.gn-v4 .gn-catalog-grid {
gap: 18px;
}
.geba-next.gn-v4 .gn-catalog-card {
overflow: hidden;
border-radius: var(--gn-stage2-radius);
box-shadow: 0 12px 34px rgba(12, 14, 18, .035);
}
.geba-next.gn-v4 .gn-catalog-card:hover {
border-color: rgba(16, 18, 22, .22);
box-shadow: var(--gn-stage2-shadow);
transform: translateY(-7px);
}
.geba-next.gn-v4 .gn-catalog-card__media {
background:
radial-gradient(circle at 50% 44%, rgba(255, 255, 255, .94), transparent 48%),
var(--gn-stage2-paper-strong);
}
.geba-next.gn-v4 .gn-product-gallery__main,
.geba-next.gn-v4 .gn-product-gallery__thumb {
overflow: hidden;
border-radius: 14px;
}
.geba-next.gn-v4 .gn-product-detail__info {
padding: clamp(0px, 2vw, 28px);
}
/* CTA: replace the flat color slab with a focused project hand-off. */
.geba-next.gn-v4 .gn4-cta,
.geba-next.gn-v4 .gn-page-cta {
position: relative;
overflow: hidden;
color: #fff;
background:
radial-gradient(circle at 82% 50%, rgba(243, 0, 103, .34), transparent 27%),
radial-gradient(circle at 6% 8%, rgba(255, 90, 18, .11), transparent 26%),
#090b0f;
}
.geba-next.gn-v4 .gn4-cta::before,
.geba-next.gn-v4 .gn-page-cta::before {
position: absolute;
inset: 0;
content: "";
opacity: .22;
background-image:
linear-gradient(rgba(255, 255, 255, .06) 1px, transparent 1px),
linear-gradient(90deg, rgba(255, 255, 255, .06) 1px, transparent 1px);
background-size: 64px 64px;
mask-image: linear-gradient(90deg, transparent, #000 50%, transparent);
pointer-events: none;
}
.geba-next.gn-v4 .gn4-cta__grid,
.geba-next.gn-v4 .gn-page-cta__inner {
position: relative;
z-index: 1;
}
.geba-next.gn-v4 .gn4-cta .gn4-index,
.geba-next.gn-v4 .gn-page-cta .gn-section-index,
.geba-next.gn-v4 .gn4-cta__grid > div > a {
color: rgba(255, 255, 255, .68);
}
.geba-next.gn-v4 .gn4-cta .gn-button--primary,
.geba-next.gn-v4 .gn-page-cta .gn-button--primary {
color: #fff;
background: var(--gn4-pink);
border-color: var(--gn4-pink);
box-shadow: 0 16px 42px rgba(243, 0, 103, .3);
}
.geba-next.gn-v4 .gn4-cta .gn-button--primary:hover,
.geba-next.gn-v4 .gn-page-cta .gn-button--primary:hover {
background: #ff1d7a;
border-color: #ff1d7a;
transform: translateY(-3px);
}
@media (max-width: 1120px) {
.geba-next.gn-v4 .gn4-intro__grid {
grid-template-columns: 110px minmax(0, 1fr);
}
.geba-next.gn-v4 .gn4-intro__grid > p:last-child {
grid-column: 2;
max-width: 700px;
}
.geba-next.gn-v4 .gn4-category-grid,
.geba-next.gn-v4 .gn4-product-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.geba-next.gn-v4 .gn4-feature__grid,
.geba-next.gn-v4 .gn4-services__grid {
grid-template-columns: minmax(0, 1fr);
}
.geba-next.gn-v4 .gn4-feature__copy {
max-width: 760px;
padding-left: 0;
}
.geba-next.gn-v4 .gn4-services__grid > div:first-child {
position: static;
max-width: 850px;
}
.geba-next.gn-v4 .gn4-services ol {
max-width: none;
}
.geba-next.gn-v4 .gn-brand-world__grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
}
@media (max-width: 820px) {
.geba-next.gn-v4 .gn-shell {
width: min(calc(100% - 40px), 1440px);
}
.geba-next.gn-v4 .gn5-poster__copy h1,
.geba-next.gn-v4 .gn5-poster__copy h2 {
font-size: clamp(47px, 10.5vw, 70px);
}
.geba-next.gn-v4 :where(.gn4-intro, .gn4-feature, .gn4-products, .gn4-sectors, .gn4-services, .gn4-brands) {
padding-block: 100px;
}
.geba-next.gn-v4 .gn4-title-row,
.geba-next.gn-v4 .gn-section-head,
.geba-next.gn-v4 .gn-section-heading {
display: grid;
grid-template-columns: minmax(0, 1fr);
gap: 30px;
align-items: start;
}
.geba-next.gn-v4 .gn4-title-row .gn4-arrow-link {
justify-self: start;
}
.geba-next.gn-v4 .gn4-sector-grid {
grid-template-columns: minmax(0, 1fr);
}
.geba-next.gn-v4 .gn4-sector {
min-height: min(620px, 105vw);
}
.geba-next.gn-v4 .gn4-brand-strip {
grid-template-columns: minmax(0, 1fr);
}
.geba-next.gn-v4 .gn-page-hero {
min-height: auto;
padding: 145px 0 86px;
}
.geba-next.gn-v4 :where(.gn-page-solutions, .gn-brand-world, .gn-engineering, .gn-page-about, .gn-contact-page, .gn-page-editor) {
padding-block: 100px;
}
.geba-next.gn-v4 .gn-page-about__copy {
padding: 28px;
}
.geba-next.gn-v4 .gn-contact-page__grid {
gap: 58px;
}
}
@media (max-width: 560px) {
.geba-next.gn-v4 .gn-shell {
width: min(calc(100% - 28px), 1440px);
}
.geba-next.gn-v4 :where(.gn4-intro, .gn4-feature, .gn4-products, .gn4-sectors, .gn4-services, .gn4-brands) {
padding-block: 78px;
}
.geba-next.gn-v4 .gn4-intro__grid {
grid-template-columns: minmax(0, 1fr);
gap: 22px;
}
.geba-next.gn-v4 .gn4-intro__grid > p:last-child {
grid-column: auto;
}
.geba-next.gn-v4 .gn4-category-grid,
.geba-next.gn-v4 .gn4-product-grid,
.geba-next.gn-v4 .gn-brand-world__grid {
grid-template-columns: minmax(0, 1fr);
}
.geba-next.gn-v4 .gn4-category {
min-height: 230px;
}
.geba-next.gn-v4 .gn4-product-card__body {
min-height: 150px;
}
.geba-next.gn-v4 .gn4-sector {
min-height: 420px;
}
.geba-next.gn-v4 .gn4-services li {
grid-template-columns: 46px 1fr;
gap: 16px;
padding: 20px;
}
.geba-next.gn-v4 .gn4-services li:hover,
.geba-next.gn-v4 .gn-engineering__steps article:hover {
transform: translateY(-3px);
}
.geba-next.gn-v4 .gn-page-hero h1 {
font-size: clamp(46px, 13vw, 60px);
}
.geba-next.gn-v4 :where(.gn-page-solutions, .gn-brand-world, .gn-engineering, .gn-page-about, .gn-contact-page, .gn-page-editor) {
padding-block: 78px;
}
.geba-next.gn-v4 .gn-page-solutions__grid {
grid-template-columns: minmax(0, 1fr);
margin-top: 50px;
}
.geba-next.gn-v4 .gn-page-solutions__grid > a {
min-height: 280px;
padding: 28px;
}
.geba-next.gn-v4 .gn-brand-card {
min-height: 310px;
}
.geba-next.gn-v4 .gn-page-about__copy,
.geba-next.gn-v4 .gn-form--page,
.geba-next.gn-v4 .gn-page-editor__inner {
padding: 22px;
}
.geba-next.gn-v4 .gn-page-facts {
grid-template-columns: minmax(0, 1fr);
}
.geba-next.gn-v4 .gn4-cta__grid {
grid-template-columns: minmax(0, 1fr);
gap: 30px;
}
}
@media (prefers-reduced-motion: reduce) {
.geba-next.gn-v4 :where(.gn4-category, .gn4-product-card, .gn4-sector, .gn4-services li, .gn4-brand-strip a, .gn-page-solutions__grid > a, .gn-brand-card, .gn-engineering__steps article, .gn-catalog-card) {
transition: none;
}
}
/* =========================================================
GEBA Safety v4.6.0 - Stage 3 cinematic scroll choreography
A three-chapter sticky product story with scroll-scrubbed verified multi-view media.
========================================================= */
.geba-next.gn-v4 .gn5-scroll-meter {
position: absolute;
z-index: 12;
top: 48%;
right: clamp(18px, 2.3vw, 44px);
display: none;
grid-template-rows: auto 132px auto;
gap: 14px;
justify-items: center;
color: rgba(255, 255, 255, .5);
font: 700 8px/1 var(--gn-mono);
letter-spacing: .16em;
text-transform: uppercase;
transform: translateY(-50%);
}
.geba-next.gn-v4 .gn5-scroll-meter > span {
writing-mode: vertical-rl;
transform: rotate(180deg);
}
.geba-next.gn-v4 .gn5-scroll-meter > i {
position: relative;
width: 1px;
height: 132px;
overflow: hidden;
background: rgba(255, 255, 255, .18);
}
.geba-next.gn-v4 .gn5-scroll-meter > i > b {
position: absolute;
inset: 0;
display: block;
background: linear-gradient(180deg, #fff, var(--gn4-pink));
box-shadow: 0 0 20px rgba(243, 0, 103, .5);
transform: scaleY(0);
transform-origin: top;
}
.geba-next.gn-v4 .gn5-scroll-meter > em {
color: rgba(255, 255, 255, .42);
font-style: normal;
}
.geba-next.gn-v4 .gn5-scroll-meter > em b {
color: #fff;
}
@media (min-width: 821px) {
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled {
height: 340svh;
min-height: 0;
overflow: visible;
background: #07090c;
}
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-showcase__track {
position: sticky;
top: 0;
height: 100svh;
min-height: 100svh;
overflow: hidden;
isolation: isolate;
}
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-showcase__track::after {
position: absolute;
z-index: 8;
inset: 0;
content: "";
opacity: .055;
background-image:
repeating-linear-gradient(0deg, rgba(255, 255, 255, .18) 0, rgba(255, 255, 255, .18) 1px, transparent 1px, transparent 4px),
radial-gradient(circle at 70% 40%, rgba(255, 255, 255, .18), transparent 36%);
mix-blend-mode: soft-light;
pointer-events: none;
}
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-poster,
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-poster__grid {
height: 100%;
min-height: 100%;
}
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-poster {
clip-path: inset(0 0 0 8%);
transform: translate3d(4%, 0, 0) scale(1.025);
transition:
opacity .52s ease,
transform .82s cubic-bezier(.2, .75, .15, 1),
clip-path .82s cubic-bezier(.2, .75, .15, 1),
visibility 0s .82s;
}
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-poster.is-active {
clip-path: inset(0);
transform: none;
transition-delay: 0s;
}
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-poster::after {
position: absolute;
z-index: 1;
right: 5vw;
bottom: 10vh;
color: rgba(255, 255, 255, .025);
font: 800 clamp(220px, 28vw, 520px)/.72 var(--gn-display);
letter-spacing: -.1em;
pointer-events: none;
}
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-poster--milan::after { content: "01"; }
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-poster--cric::after { content: "02"; }
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-poster--wind::after { content: "03"; }
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-poster__copy {
transform: translate3d(0, var(--gn6-copy-shift, 0), 0);
will-change: transform;
}
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-viewer {
transform: translate3d(0, var(--gn6-product-shift, 0), 0);
will-change: transform;
}
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-poster__atmosphere::after {
transform: rotate(var(--gn6-scene-turn, 0deg)) scale(1.04);
transform-origin: center;
will-change: transform;
}
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-viewer__rings,
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-wind-orbit {
transform: translate(-50%, -50%) rotateX(64deg) rotateZ(var(--gn6-scene-turn, 0deg));
will-change: transform;
}
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-scroll-meter {
display: grid;
}
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-showcase__navigation {
z-index: 14;
}
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled.is-scroll-engaged .gn5-showcase__navigation {
box-shadow: 0 -22px 70px rgba(0, 0, 0, .22);
}
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled.gn5-cinema-fallback-fixed .gn5-showcase__track {
position: fixed;
z-index: 30;
top: 0;
right: 0;
left: 0;
width: 100%;
height: 100svh;
min-height: 100svh;
}
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled.gn5-cinema-fallback-end .gn5-showcase__track {
position: absolute;
z-index: 30;
top: auto;
right: 0;
bottom: 0;
left: 0;
width: 100%;
height: 100svh;
min-height: 100svh;
}
}
@media (max-width: 1180px) and (min-width: 821px) {
.geba-next.gn-v4 .gn5-scroll-meter {
right: 12px;
}
.geba-next.gn-v4 .gn5-scroll-meter > span {
display: none;
}
}
@media (max-width: 820px) {
.geba-next.gn-v4 .gn5-scroll-meter {
display: none !important;
}
}
@media (prefers-reduced-motion: reduce) {
.geba-next.gn-v4 .gn5-showcase,
.geba-next.gn-v4 .gn5-showcase__track {
height: auto;
}
.geba-next.gn-v4 .gn5-showcase__track::after,
.geba-next.gn-v4 .gn5-scroll-meter {
display: none;
}
}
/* --------------------------------------------------------------------------
Stage 4 — contextual discovery and conversion journey
-------------------------------------------------------------------------- */
.geba-next.gn-v4 .gn-page-solutions__grid > a em {
position: relative;
z-index: 2;
display: block;
margin-top: 18px;
color: rgba(16, 18, 22, .54);
font: 700 9px/1.4 var(--gn-mono);
font-style: normal;
letter-spacing: .09em;
text-transform: uppercase;
transition: color .25s ease;
}
.geba-next.gn-v4 .gn-page-solutions__grid > a:hover em {
color: rgba(255, 255, 255, .7);
}
.geba-next.gn-v4 .gn6-context-strip {
position: relative;
overflow: hidden;
padding: 0;
color: #fff;
background:
linear-gradient(112deg, rgba(243, 0, 103, .13), transparent 38%),
#0d0f13;
border-top: 1px solid rgba(255, 255, 255, .08);
border-bottom: 1px solid rgba(255, 255, 255, .08);
}
.geba-next.gn-v4 .gn6-context-strip::after {
position: absolute;
top: -110%;
right: 5%;
width: min(48vw, 720px);
aspect-ratio: 1;
content: "";
border: 1px solid rgba(243, 0, 103, .16);
border-radius: 50%;
box-shadow:
0 0 0 90px rgba(243, 0, 103, .025),
0 0 0 180px rgba(255, 90, 18, .018);
pointer-events: none;
}
.geba-next.gn-v4 .gn6-context-strip__grid {
position: relative;
z-index: 1;
display: grid;
grid-template-columns: 150px minmax(0, 1fr) auto;
gap: clamp(34px, 6vw, 96px);
align-items: center;
min-height: 250px;
padding-top: 52px;
padding-bottom: 52px;
}
.geba-next.gn-v4 .gn6-context-strip__grid > p {
display: grid;
gap: 13px;
margin: 0;
color: rgba(255, 255, 255, .42);
font: 700 9px/1.4 var(--gn-mono);
letter-spacing: .13em;
}
.geba-next.gn-v4 .gn6-context-strip__grid > p small {
color: var(--gn4-pink);
font: inherit;
}
.geba-next.gn-v4 .gn6-context-strip__grid > p b {
font: inherit;
}
.geba-next.gn-v4 .gn6-context-strip h2 {
max-width: 780px;
margin: 0;
color: #fff;
font-size: clamp(38px, 4.7vw, 70px);
line-height: .93;
letter-spacing: -.06em;
}
.geba-next.gn-v4 .gn6-context-strip h2 + p {
max-width: 710px;
margin: 20px 0 0;
color: rgba(255, 255, 255, .62);
font-size: 15px;
line-height: 1.7;
}
.geba-next.gn-v4 .gn6-context-strip__actions {
display: grid;
gap: 18px;
justify-items: start;
min-width: 190px;
}
.geba-next.gn-v4 .gn6-context-strip__actions > a:not(.gn-button) {
color: rgba(255, 255, 255, .58);
font-size: 11px;
font-weight: 750;
text-decoration: underline;
text-underline-offset: 5px;
}
.geba-next.gn-v4 .gn6-directory {
margin-top: 40px;
}
.geba-next.gn-v4 .gn6-directory__tools {
position: sticky;
z-index: 10;
top: 78px;
display: grid;
grid-template-columns: minmax(280px, 1fr) auto auto;
gap: 22px;
align-items: end;
margin-bottom: 30px;
padding: 22px;
color: #fff;
background: rgba(13, 15, 19, .97);
border: 1px solid rgba(255, 255, 255, .08);
box-shadow: 0 24px 70px rgba(10, 12, 16, .16);
backdrop-filter: blur(18px);
}
.geba-next.gn-v4 .gn6-directory__tools label {
display: grid;
gap: 9px;
}
.geba-next.gn-v4 .gn6-directory__tools label span {
color: rgba(255, 255, 255, .5);
font: 700 9px/1.2 var(--gn-mono);
letter-spacing: .1em;
text-transform: uppercase;
}
.geba-next.gn-v4 .gn6-directory__tools input {
width: 100%;
height: 52px;
padding: 0 17px;
color: #fff;
caret-color: var(--gn4-pink);
background: rgba(255, 255, 255, .06);
border: 1px solid rgba(255, 255, 255, .15);
border-radius: 0;
outline: none;
}
.geba-next.gn-v4 .gn6-directory__tools input:focus {
border-color: var(--gn4-pink);
box-shadow: 0 0 0 3px rgba(243, 0, 103, .16);
}
.geba-next.gn-v4 .gn6-directory__filters {
display: flex;
min-height: 52px;
padding: 4px;
background: rgba(255, 255, 255, .055);
border: 1px solid rgba(255, 255, 255, .11);
}
.geba-next.gn-v4 .gn6-directory__filters button {
min-width: 96px;
padding: 0 15px;
color: rgba(255, 255, 255, .54);
font: 750 10px/1 var(--gn-sans);
background: transparent;
border: 0;
cursor: pointer;
}
.geba-next.gn-v4 .gn6-directory__filters button:hover,
.geba-next.gn-v4 .gn6-directory__filters button.is-active {
color: #fff;
background: var(--gn4-pink);
}
.geba-next.gn-v4 .gn6-directory__tools > p {
display: flex;
gap: 8px;
align-items: baseline;
justify-content: flex-end;
min-width: 132px;
margin: 0 0 16px;
color: rgba(255, 255, 255, .48);
font: 700 9px/1.3 var(--gn-mono);
letter-spacing: .08em;
text-transform: uppercase;
}
.geba-next.gn-v4 .gn6-directory__tools > p strong {
color: #fff;
font-size: 18px;
}
.geba-next.gn-v4 .gn6-directory__grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
border-top: 1px solid rgba(16, 18, 22, .14);
border-left: 1px solid rgba(16, 18, 22, .14);
}
.geba-next.gn-v4 .gn6-directory-card {
position: relative;
isolation: isolate;
display: flex;
flex-direction: column;
min-height: 280px;
padding: 28px;
color: var(--gn4-ink);
background: #fff;
border-right: 1px solid rgba(16, 18, 22, .14);
border-bottom: 1px solid rgba(16, 18, 22, .14);
transition: color .25s ease, background .25s ease, transform .25s ease;
}
.geba-next.gn-v4 .gn6-directory-card::before {
position: absolute;
z-index: -1;
inset: 0;
content: "";
background:
radial-gradient(circle at var(--gn-pointer-x, 84%) var(--gn-pointer-y, 18%), rgba(243, 0, 103, .19), transparent 36%),
#101216;
opacity: 0;
transition: opacity .25s ease;
}
.geba-next.gn-v4 .gn6-directory-card[hidden] {
display: none !important;
}
.geba-next.gn-v4 .gn6-directory-card small {
color: var(--gn4-pink);
font: 750 9px/1.2 var(--gn-mono);
letter-spacing: .13em;
}
.geba-next.gn-v4 .gn6-directory-card strong {
max-width: 300px;
margin-top: auto;
font-size: clamp(25px, 2.4vw, 35px);
line-height: .97;
letter-spacing: -.045em;
}
.geba-next.gn-v4 .gn6-directory-card p {
max-width: 390px;
margin: 15px 0 0;
color: #6d7077;
font-size: 12px;
line-height: 1.55;
}
.geba-next.gn-v4 .gn6-directory-card > span {
margin-top: 22px;
color: #3f4249;
font: 750 9px/1.2 var(--gn-mono);
letter-spacing: .08em;
text-transform: uppercase;
}
.geba-next.gn-v4 .gn6-directory-card--brand::after {
position: absolute;
top: 25px;
right: 25px;
width: 9px;
height: 9px;
content: "";
background: var(--gn4-pink);
border-radius: 50%;
box-shadow: 0 0 0 6px rgba(243, 0, 103, .1);
}
.geba-next.gn-v4 .gn6-directory-card--orange::after { background: #ff5a12; box-shadow: 0 0 0 6px rgba(255, 90, 18, .12); }
.geba-next.gn-v4 .gn6-directory-card--blue::after { background: #2779f6; box-shadow: 0 0 0 6px rgba(39, 121, 246, .12); }
.geba-next.gn-v4 .gn6-directory-card--teal::after { background: #00a999; box-shadow: 0 0 0 6px rgba(0, 169, 153, .12); }
.geba-next.gn-v4 .gn6-directory-card--amber::after { background: #eaa900; box-shadow: 0 0 0 6px rgba(234, 169, 0, .12); }
.geba-next.gn-v4 .gn6-directory-card--lime::after { background: #7aac24; box-shadow: 0 0 0 6px rgba(122, 172, 36, .12); }
.geba-next.gn-v4 .gn6-directory-card:hover {
z-index: 2;
color: #fff;
background: #101216;
transform: translateY(-5px);
box-shadow: 0 24px 60px rgba(8, 9, 11, .18);
}
.geba-next.gn-v4 .gn6-directory-card:hover::before {
opacity: 1;
}
.geba-next.gn-v4 .gn6-directory-card:hover p,
.geba-next.gn-v4 .gn6-directory-card:hover > span {
color: rgba(255, 255, 255, .62);
}
.geba-next.gn-v4 .gn6-directory__empty {
padding: 70px 28px;
text-align: center;
background: #fff;
border: 1px solid rgba(16, 18, 22, .14);
}
.geba-next.gn-v4 .gn6-directory__empty[hidden] {
display: none;
}
.geba-next.gn-v4 .gn6-directory__empty strong {
display: block;
font-size: 30px;
}
.geba-next.gn-v4 .gn6-directory__empty p {
max-width: 660px;
margin: 15px auto 25px;
color: var(--gn4-muted);
}
.geba-next.gn-v4 .gn6-conversion-dock {
display: none;
}
.geba-next.gn-v4.gn-inner-site .gn6-conversion-dock {
position: fixed;
z-index: 80;
right: max(18px, env(safe-area-inset-right));
bottom: max(18px, env(safe-area-inset-bottom));
display: grid;
grid-template-columns: auto auto auto;
overflow: hidden;
color: #fff;
background: rgba(10, 12, 16, .93);
border: 1px solid rgba(255, 255, 255, .14);
box-shadow: 0 22px 70px rgba(4, 6, 9, .3);
backdrop-filter: blur(20px);
}
.geba-next.gn-v4 .gn6-conversion-dock a {
display: grid;
grid-template-columns: auto auto;
gap: 9px;
align-items: center;
min-height: 54px;
padding: 0 18px;
color: rgba(255, 255, 255, .72);
border-right: 1px solid rgba(255, 255, 255, .11);
transition: color .2s ease, background .2s ease;
}
.geba-next.gn-v4 .gn6-conversion-dock a:hover {
color: #fff;
background: rgba(255, 255, 255, .07);
}
.geba-next.gn-v4 .gn6-conversion-dock small {
color: var(--gn4-pink);
font: 750 8px/1 var(--gn-mono);
}
.geba-next.gn-v4 .gn6-conversion-dock span {
font-size: 10px;
font-weight: 750;
}
.geba-next.gn-v4 .gn6-conversion-dock .gn6-conversion-dock__cta {
grid-template-columns: auto auto auto;
color: #fff;
background: var(--gn4-pink);
border-right: 0;
}
.geba-next.gn-v4 .gn6-conversion-dock__cta small {
color: #fff;
}
.geba-next.gn-v4 .gn6-conversion-dock__cta b {
margin-left: 7px;
font-size: 16px;
}
.geba-next.gn-v4.gn-inner-site .gn-footer {
padding-bottom: 74px;
}
@media (max-width: 1100px) {
.geba-next.gn-v4 .gn6-context-strip__grid {
grid-template-columns: 105px minmax(0, 1fr);
}
.geba-next.gn-v4 .gn6-context-strip__actions {
grid-column: 2;
display: flex;
align-items: center;
}
.geba-next.gn-v4 .gn6-directory__tools {
grid-template-columns: minmax(250px, 1fr) auto;
}
.geba-next.gn-v4 .gn6-directory__tools > p {
grid-column: 1 / -1;
justify-content: flex-start;
margin: -6px 0 0;
}
}
@media (max-width: 820px) {
.geba-next.gn-v4 .gn6-context-strip__grid {
grid-template-columns: 1fr;
gap: 28px;
min-height: 0;
padding-top: 58px;
padding-bottom: 58px;
}
.geba-next.gn-v4 .gn6-context-strip__actions {
grid-column: auto;
}
.geba-next.gn-v4 .gn6-directory__tools {
position: relative;
top: auto;
grid-template-columns: 1fr;
gap: 16px;
}
.geba-next.gn-v4 .gn6-directory__filters {
display: grid;
grid-template-columns: repeat(3, 1fr);
}
.geba-next.gn-v4 .gn6-directory__filters button {
min-width: 0;
min-height: 44px;
padding: 0 8px;
}
.geba-next.gn-v4 .gn6-directory__tools > p {
grid-column: auto;
}
.geba-next.gn-v4 .gn6-directory__grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.geba-next.gn-v4.gn-inner-site .gn6-conversion-dock {
right: 0;
bottom: 0;
left: 0;
grid-template-columns: 1fr 1fr 1fr;
border-right: 0;
border-bottom: 0;
border-left: 0;
}
.geba-next.gn-v4 .gn6-conversion-dock a {
justify-content: center;
min-width: 0;
min-height: 58px;
padding: 0 8px;
}
.geba-next.gn-v4 .gn6-conversion-dock small {
display: none;
}
.geba-next.gn-v4 .gn6-conversion-dock .gn6-conversion-dock__cta {
grid-template-columns: auto auto;
}
}
@media (max-width: 560px) {
.geba-next.gn-v4 .gn6-context-strip h2 {
font-size: 40px;
}
.geba-next.gn-v4 .gn6-context-strip__actions {
display: grid;
}
.geba-next.gn-v4 .gn6-directory {
margin-top: 28px;
}
.geba-next.gn-v4 .gn6-directory__tools {
margin-inline: -4px;
padding: 16px;
}
.geba-next.gn-v4 .gn6-directory__grid {
grid-template-columns: 1fr;
}
.geba-next.gn-v4 .gn6-directory-card {
min-height: 245px;
padding: 24px;
}
.geba-next.gn-v4 .gn6-conversion-dock span {
font-size: 9px;
}
.geba-next.gn-v4 .gn6-conversion-dock__cta b {
display: none;
}
}
@media (prefers-reduced-motion: reduce) {
.geba-next.gn-v4 .gn6-directory-card {
transition: none;
}
}
/* --------------------------------------------------------------------------
Stage 5 — progressive 4K loading and render containment
-------------------------------------------------------------------------- */
.geba-next.gn-v4 .gn5-viewer--360 {
contain: layout paint style;
}
.geba-next.gn-v4 .gn5-360-frame:not(.is-active) {
filter: none;
}
.geba-next.gn-v4 .gn5-360-frame.is-loading {
opacity: 0;
}
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-poster:not(.is-active) .gn5-poster__copy,
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-poster:not(.is-active) .gn5-viewer,
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-poster:not(.is-active) .gn5-viewer__rings,
.geba-next.gn-v4 .gn5-showcase.gn5-cinema-enabled .gn5-poster:not(.is-active) .gn5-wind-orbit {
will-change: auto;
}
@supports (content-visibility: auto) {
.geba-next.gn-v4 :where(.gn4-intro, .gn4-feature, .gn4-products, .gn4-sectors, .gn4-services, .gn4-brands, .gn4-cta) {
content-visibility: auto;
contain-intrinsic-size: auto 820px;
}
}
@media (max-width: 820px) {
.geba-next.gn-v4 .gn-header {
background: rgba(8, 9, 11, .96);
backdrop-filter: none;
}
.geba-next.gn-v4 .gn5-viewer__toolbar {
backdrop-filter: none;
}
}
/* --------------------------------------------------------------------------
Stage 6 — verified product media and complete visual category directory
-------------------------------------------------------------------------- */
.geba-next.gn-v4 .gn4-category {
min-height: 290px;
color: #fff;
background: #111318;
isolation: isolate;
}
.geba-next.gn-v4 .gn4-category > img {
opacity: 1;
transform: scale(1.001);
transition: transform .65s var(--gn-stage2-ease), filter .4s ease;
}
.geba-next.gn-v4 .gn4-category::after,
.geba-next.gn-v4 .gn4-category:has(> img)::after {
position: absolute;
z-index: 1;
inset: 0;
content: "";
opacity: 1;
background:
linear-gradient(180deg, rgba(8, 9, 11, .08) 18%, rgba(8, 9, 11, .32) 52%, rgba(8, 9, 11, .94) 100%),
linear-gradient(90deg, rgba(8, 9, 11, .25), transparent 64%);
transition: background .4s ease;
pointer-events: none;
}
.geba-next.gn-v4 .gn4-category:hover > img {
opacity: 1;
filter: saturate(1.08) contrast(1.04);
transform: scale(1.055);
}
.geba-next.gn-v4 .gn4-category:hover::after {
opacity: 1;
background:
linear-gradient(180deg, rgba(8, 9, 11, .04) 12%, rgba(8, 9, 11, .3) 52%, rgba(8, 9, 11, .98) 100%),
linear-gradient(90deg, rgba(243, 0, 103, .14), transparent 60%);
}
.geba-next.gn-v4 .gn4-category > strong,
.geba-next.gn-v4 .gn4-category > b {
color: #fff;
}
.geba-next.gn-v4 .gn4-category > span,
.geba-next.gn-v4 .gn4-category:hover > span {
color: rgba(255, 255, 255, .68);
}
.geba-next.gn-v4 .gn4-product-grid--curated .gn4-product-card__image {
background: #eeece7;
}
.geba-next.gn-v4 .gn4-product-grid--curated .gn4-product-card__image img {
width: 100%;
height: 100%;
object-fit: cover;
}
/* MR34: keep the product photograph geometrically stable on hover.
Card-level elevation remains as interaction feedback; media itself does not zoom. */
.geba-next.gn-v4 .gn4-product-grid--curated .gn4-product-card__image img {
transition: none;
}
.geba-next.gn-v4 .gn4-product-grid--curated .gn4-product-card:hover .gn4-product-card__image img {
transform: none;
}
.geba-next.gn-v4 .gn5-viewer__toolbar [data-gn-view-label] {
display: inline-block;
min-width: 64px;
}
.geba-next.gn-v4 .gn5-viewer--milan .gn5-360-frame[data-gn-frame-label="Kurtarma"] {
width: min(48vw, 690px);
height: min(40vw, 560px);
}
@media (max-width: 780px) {
.geba-next.gn-v4 .gn4-category {
min-height: 245px;
}
.geba-next.gn-v4 .gn5-viewer--milan .gn5-360-frame[data-gn-frame-label="Kurtarma"] {
width: min(92vw, 560px);
height: min(67vw, 430px);
}
}
/* --------------------------------------------------------------------------
CP3 — commercial-intent SEO landing pages
-------------------------------------------------------------------------- */
.geba-next.gn-v4 .gn-money-intro,
.geba-next.gn-v4 .gn-money-sections,
.geba-next.gn-v4 .gn-money-actions,
.geba-next.gn-v4 .gn-money-related,
.geba-next.gn-v4 .gn-money-hub {
padding: clamp(64px, 8vw, 118px) 0;
}
.geba-next.gn-v4 .gn-money-intro {
background: #f3f0ea;
color: #111318;
}
.geba-next.gn-v4 .gn-money-intro__grid,
.geba-next.gn-v4 .gn-money-actions__grid {
display: grid;
grid-template-columns: minmax(0, 1.45fr) minmax(260px, .75fr);
gap: clamp(34px, 6vw, 92px);
align-items: end;
}
.geba-next.gn-v4 .gn-money-intro h2,
.geba-next.gn-v4 .gn-money-actions h2 {
max-width: 920px;
margin: 10px 0 20px;
font-size: clamp(34px, 4.7vw, 72px);
line-height: .98;
letter-spacing: -.045em;
}
.geba-next.gn-v4 .gn-money-intro__grid > div > p:last-child,
.geba-next.gn-v4 .gn-money-actions__grid > div > p:last-child {
max-width: 820px;
margin: 0;
color: #5f6269;
font-size: clamp(16px, 1.35vw, 20px);
line-height: 1.72;
}
.geba-next.gn-v4 .gn-money-signals {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 10px;
}
.geba-next.gn-v4 .gn-money-signals span {
min-height: 82px;
display: flex;
align-items: flex-end;
padding: 16px;
border: 1px solid rgba(17, 19, 24, .12);
background: rgba(255, 255, 255, .5);
font-size: 12px;
font-weight: 760;
letter-spacing: .07em;
text-transform: uppercase;
}
.geba-next.gn-v4 .gn-money-sections {
background: #0b0d10;
color: #fff;
}
.geba-next.gn-v4 .gn-money-sections__grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 1px;
background: rgba(255, 255, 255, .12);
border: 1px solid rgba(255, 255, 255, .12);
}
.geba-next.gn-v4 .gn-money-section {
min-height: 470px;
padding: clamp(26px, 3vw, 44px);
background: #111318;
}
.geba-next.gn-v4 .gn-money-section > small {
display: block;
margin-bottom: clamp(52px, 7vw, 105px);
color: #f30067;
font: 700 11px/1.2 var(--gn-font-sans, inherit);
letter-spacing: .12em;
}
.geba-next.gn-v4 .gn-money-section h2 {
margin: 0 0 20px;
color: #fff;
font-size: clamp(25px, 2.4vw, 39px);
line-height: 1.04;
letter-spacing: -.035em;
}
.geba-next.gn-v4 .gn-money-section p {
margin: 0;
color: rgba(255, 255, 255, .67);
line-height: 1.72;
}
.geba-next.gn-v4 .gn-money-section ul {
display: grid;
gap: 9px;
margin: 26px 0 0;
padding: 0;
list-style: none;
}
.geba-next.gn-v4 .gn-money-section li {
position: relative;
padding-left: 18px;
color: rgba(255, 255, 255, .82);
font-size: 13px;
}
.geba-next.gn-v4 .gn-money-section li::before {
position: absolute;
left: 0;
top: .62em;
width: 6px;
height: 1px;
content: "";
background: #f30067;
}
.geba-next.gn-v4 .gn-money-note {
padding: 0 0 clamp(64px, 8vw, 108px);
background: #0b0d10;
color: #fff;
}
.geba-next.gn-v4 .gn-money-note .gn-shell {
display: grid;
grid-template-columns: 160px 1fr;
gap: 28px;
padding-top: 28px;
border-top: 1px solid rgba(255, 255, 255, .18);
}
.geba-next.gn-v4 .gn-money-note strong {
color: #f30067;
font-size: 11px;
letter-spacing: .1em;
text-transform: uppercase;
}
.geba-next.gn-v4 .gn-money-note p {
max-width: 960px;
margin: 0;
color: rgba(255, 255, 255, .7);
line-height: 1.65;
}
.geba-next.gn-v4 .gn-money-actions {
background: #f30067;
color: #fff;
}
.geba-next.gn-v4 .gn-money-actions .gn-section-index,
.geba-next.gn-v4 .gn-money-actions__grid > div > p:last-child {
color: rgba(255, 255, 255, .78);
}
.geba-next.gn-v4 .gn-money-actions__buttons {
display: grid;
gap: 12px;
}
.geba-next.gn-v4 .gn-money-actions .gn-button--primary {
background: #0b0d10;
color: #fff;
}
.geba-next.gn-v4 .gn-money-actions .gn-button--ghost {
border-color: rgba(255, 255, 255, .62);
color: #fff;
}
.geba-next.gn-v4 .gn-money-related,
.geba-next.gn-v4 .gn-money-hub {
background: #ece9e2;
}
.geba-next.gn-v4 .gn-money-related__grid,
.geba-next.gn-v4 .gn-money-hub__grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 12px;
}
.geba-next.gn-v4 .gn-money-hub__grid {
grid-template-columns: repeat(4, minmax(0, 1fr));
}
.geba-next.gn-v4 .gn-money-related__grid a,
.geba-next.gn-v4 .gn-money-hub__grid a {
position: relative;
min-height: 300px;
display: flex;
flex-direction: column;
padding: 28px;
border: 1px solid rgba(17, 19, 24, .11);
background: rgba(255, 255, 255, .62);
color: #111318;
text-decoration: none;
transition: transform .25s ease, border-color .25s ease, background .25s ease;
}
.geba-next.gn-v4 .gn-money-related__grid a:hover,
.geba-next.gn-v4 .gn-money-hub__grid a:hover {
transform: translateY(-4px);
border-color: rgba(243, 0, 103, .38);
background: #fff;
}
.geba-next.gn-v4 .gn-money-related__grid small,
.geba-next.gn-v4 .gn-money-hub__grid small {
color: #f30067;
font-size: 10px;
font-weight: 760;
letter-spacing: .1em;
}
.geba-next.gn-v4 .gn-money-related__grid h3,
.geba-next.gn-v4 .gn-money-hub__grid h3 {
margin: auto 0 14px;
font-size: clamp(22px, 2vw, 31px);
line-height: 1.02;
letter-spacing: -.03em;
}
.geba-next.gn-v4 .gn-money-related__grid p,
.geba-next.gn-v4 .gn-money-hub__grid p {
margin: 0 0 22px;
color: #666970;
line-height: 1.55;
}
.geba-next.gn-v4 .gn-money-related__grid span,
.geba-next.gn-v4 .gn-money-hub__grid span {
font-size: 20px;
}
@supports (content-visibility: auto) {
.geba-next.gn-v4 :where(.gn-money-intro, .gn-money-sections, .gn-money-actions, .gn-money-related, .gn-money-hub) {
content-visibility: auto;
contain-intrinsic-size: auto 780px;
}
}
@media (max-width: 980px) {
.geba-next.gn-v4 .gn-money-sections__grid,
.geba-next.gn-v4 .gn-money-related__grid,
.geba-next.gn-v4 .gn-money-hub__grid {
grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 700px) {
.geba-next.gn-v4 .gn-money-intro__grid,
.geba-next.gn-v4 .gn-money-actions__grid,
.geba-next.gn-v4 .gn-money-sections__grid,
.geba-next.gn-v4 .gn-money-related__grid,
.geba-next.gn-v4 .gn-money-hub__grid,
.geba-next.gn-v4 .gn-money-note .gn-shell {
grid-template-columns: 1fr;
}
.geba-next.gn-v4 .gn-money-section {
min-height: 0;
}
.geba-next.gn-v4 .gn-money-section > small {
margin-bottom: 42px;
}
.geba-next.gn-v4 .gn-money-signals {
grid-template-columns: 1fr 1fr;
}
}
.geba-next.gn-v4 .gn-money-source {
display: inline-flex;
margin-top: 14px;
color: #fff;
font-size: 12px;
font-weight: 700;
text-decoration: underline;
text-underline-offset: 4px;
}
/* CP7 — Local SEO & Trust / Entity layer */
.geba-next .gn-local-trust,
.geba-next .gn-local-proof { padding: clamp(64px, 7vw, 112px) 0; background: #f4f4f2; color: #111; }
.geba-next .gn-local-trust__grid { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: clamp(36px,6vw,96px); align-items: start; }
.geba-next .gn-local-trust__grid > div:first-child > p:last-child { max-width: 620px; color: rgba(17,17,17,.66); line-height: 1.8; }
.geba-next .gn-local-trust__cards { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.geba-next .gn-local-trust__cards article { min-height: 220px; padding: 28px; border: 1px solid rgba(17,17,17,.12); background: #fff; display: flex; flex-direction: column; align-items: flex-start; }
.geba-next .gn-local-trust__cards small { font-family: var(--gn-mono); font-size: 9px; letter-spacing: .14em; color: rgba(17,17,17,.48); }
.geba-next .gn-local-trust__cards strong { margin-top: 20px; font-size: clamp(20px,2.2vw,30px); line-height: 1.05; }
.geba-next .gn-local-trust__cards p { margin: 14px 0 22px; color: rgba(17,17,17,.64); line-height: 1.7; }
.geba-next .gn-local-trust__cards a { margin-top: auto; font-weight: 700; }
.geba-next .gn-contact-page__map { display: inline-flex; margin-top: 12px; font-size: 12px; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.geba-next .gn-local-proof { background: #101114; color: #fff; }
.geba-next .gn-local-proof .gn-section-heading > p { color: rgba(255,255,255,.58); }
.geba-next .gn-local-proof__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; margin-top: 36px; background: rgba(255,255,255,.12); }
.geba-next .gn-local-proof__grid > a { min-height: 260px; padding: 28px; background: #101114; color: #fff; display: flex; flex-direction: column; }
.geba-next .gn-local-proof__grid small { color: var(--gn-accent); font-family: var(--gn-mono); }
.geba-next .gn-local-proof__grid h3 { margin: 26px 0 12px; font-size: clamp(20px,2vw,28px); }
.geba-next .gn-local-proof__grid p { color: rgba(255,255,255,.58); line-height: 1.7; }
.geba-next .gn-local-proof__grid span { margin-top: auto; font-size: 20px; }
@media (max-width: 820px) {
.geba-next .gn-local-trust__grid { grid-template-columns: 1fr; }
.geba-next .gn-local-proof__grid { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
.geba-next .gn-local-trust__cards { grid-template-columns: 1fr; }
}
/* CP8 — privacy-first measurement consent */
.gn-consent { position: fixed; z-index: 2147483000; right: 18px; bottom: 18px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 22px; align-items: center; width: min(760px, calc(100vw - 36px)); padding: 18px 20px; color: #f5f7fa; background: rgba(8,11,17,.97); border: 1px solid rgba(255,255,255,.14); border-radius: 18px; box-shadow: 0 22px 64px rgba(0,0,0,.34); backdrop-filter: blur(18px); }
.gn-consent strong { display: block; margin-bottom: 5px; font-size: 14px; }
.gn-consent p { margin: 0; color: rgba(245,247,250,.72); font-size: 12px; line-height: 1.55; }
.gn-consent a { display: inline-block; margin-top: 7px; color: #ff6aa9; font-size: 11px; font-weight: 750; }
.gn-consent__actions { display: flex; gap: 8px; align-items: center; }
.gn-consent .gn-button { min-height: 40px; padding: 0 15px; white-space: nowrap; }
@media (max-width: 680px) { .gn-consent { right: 10px; bottom: 10px; grid-template-columns: 1fr; width: calc(100vw - 20px); gap: 13px; padding: 16px; } .gn-consent__actions { width: 100%; } .gn-consent__actions .gn-button { flex: 1; } }
/* CP9 — Google Ads conversion landing layer */
.geba-next.gn-v4 .gn-ad-landing {
position: relative;
padding: clamp(28px, 4vw, 58px) 0;
background: linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.012)), #111417;
border-bottom: 1px solid rgba(255,255,255,.09);
}
.geba-next.gn-v4 .gn-ad-landing__grid {
display: grid;
grid-template-columns: minmax(0, .95fr) minmax(360px, .75fr);
gap: clamp(28px, 5vw, 72px);
align-items: start;
}
.geba-next.gn-v4 .gn-ad-landing__copy h2 {
max-width: 760px;
margin: 12px 0 16px;
color: #fff;
font-size: clamp(30px, 4.1vw, 58px);
line-height: .98;
letter-spacing: -.045em;
}
.geba-next.gn-v4 .gn-ad-landing__copy > p:not(.gn-section-index) {
max-width: 720px;
margin: 0;
color: rgba(255,255,255,.72);
font-size: clamp(15px, 1.45vw, 19px);
line-height: 1.7;
}
.geba-next.gn-v4 .gn-ad-landing__trust {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin-top: 22px;
}
.geba-next.gn-v4 .gn-ad-landing__trust span {
padding: 8px 11px;
border: 1px solid rgba(255,255,255,.13);
border-radius: 999px;
color: rgba(255,255,255,.78);
font-size: 12px;
letter-spacing: .035em;
}
.geba-next.gn-v4 .gn-ad-landing__quick {
display: flex;
flex-wrap: wrap;
gap: 10px;
margin-top: 24px;
}
.geba-next.gn-v4 .gn-ad-lead-form {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 12px;
padding: clamp(20px, 2.8vw, 30px);
background: #f7f5f1;
border: 1px solid rgba(255,255,255,.12);
border-radius: 20px;
box-shadow: 0 24px 60px rgba(0,0,0,.24);
}
.geba-next.gn-v4 .gn-ad-lead-form__head {
grid-column: 1 / -1;
display: grid;
gap: 5px;
padding-bottom: 4px;
}
.geba-next.gn-v4 .gn-ad-lead-form__head small {
color: #8b6678;
font-size: 11px;
font-weight: 750;
letter-spacing: .12em;
}
.geba-next.gn-v4 .gn-ad-lead-form__head strong {
color: #111417;
font-size: 20px;
letter-spacing: -.02em;
}
.geba-next.gn-v4 .gn-ad-lead-form label > span {
color: #34383b;
}
.geba-next.gn-v4 .gn-ad-lead-form input,
.geba-next.gn-v4 .gn-ad-lead-form select,
.geba-next.gn-v4 .gn-ad-lead-form textarea {
background: #fff;
color: #111417;
border-color: rgba(17,20,23,.14);
}
.geba-next.gn-v4 .gn-ad-lead-form .gn-form__check span {
color: #4c5155;
}
.geba-next.gn-v4 .gn-ad-lead-form__detail {
align-self: center;
color: #34383b;
font-size: 13px;
text-decoration: underline;
text-underline-offset: 3px;
}
@media (max-width: 860px) {
.geba-next.gn-v4 .gn-ad-landing__grid { grid-template-columns: 1fr; gap: 24px; }
.geba-next.gn-v4 .gn-ad-lead-form { max-width: 680px; }
}
@media (max-width: 560px) {
.geba-next.gn-v4 .gn-ad-landing { padding: 24px 0 34px; }
.geba-next.gn-v4 .gn-ad-lead-form { grid-template-columns: 1fr; padding: 18px; border-radius: 16px; }
.geba-next.gn-v4 .gn-ad-lead-form > * { grid-column: 1 / -1; }
.geba-next.gn-v4 .gn-ad-landing__quick .gn-button { width: 100%; justify-content: center; }
}
/* CP11 — Authority / backlink / digital PR resource center */
.geba-next.gn-v4 .gn-authority-resources .gn-page-solutions__grid > article {
min-height: 300px;
padding: 42px;
border: 1px solid var(--gn-stage2-line);
border-radius: var(--gn-stage2-radius);
background: var(--gn-stage2-card);
box-shadow: 0 12px 34px rgba(12, 14, 18, .035);
}
.geba-next.gn-v4 .gn-authority-resources .gn-page-solutions__grid > article h3 {
max-width: 520px;
margin: 92px 0 18px;
font-size: clamp(28px, 3vw, 48px);
line-height: .98;
letter-spacing: -.05em;
}
.geba-next.gn-v4 .gn-authority-resources .gn-page-solutions__grid > article p {
max-width: 520px;
color: #6c7079;
line-height: 1.7;
}
.geba-next.gn-v4 .gn-authority-resources__policy .gn-button {
display: inline-flex;
margin-top: 14px;
}
@media (max-width: 760px) {
.geba-next.gn-v4 .gn-authority-resources .gn-page-solutions__grid > article {
min-height: 250px;
padding: 28px;
}
.geba-next.gn-v4 .gn-authority-resources .gn-page-solutions__grid > article h3 {
margin-top: 70px;
}
}
/* --------------------------------------------------------------------------
CP12 — Core Web Vitals & performance budget
Keep the first viewport fully rendered while allowing the browser to skip
style/layout/paint work for sections that are still well below the fold.
-------------------------------------------------------------------------- */
@supports (content-visibility: auto) {
.geba-next.gn-v4 main > section:not(:first-child) {
content-visibility: auto;
contain-intrinsic-size: auto 760px;
}
}
/* Low-capability/mobile devices keep the same content and interaction model,
but avoid expensive perpetual blur/compositing layers and transform hints. */
.geba-next.gn-v4.gn-performance-lite :where(
.gn5-poster__copy,
.gn5-viewer,
.gn5-viewer__rings,
.gn5-wind-orbit,
.gn5-poster__atmosphere::after,
.gn4-category > img,
.gn-sector,
.gn-material,
.gn-page-hero
) {
will-change: auto !important;
}
.geba-next.gn-v4.gn-performance-lite .gn5-poster__atmosphere::after,
.geba-next.gn-v4.gn-performance-lite .gn5-viewer--360::after,
.geba-next.gn-v4.gn-performance-lite .gn4-hero__glow {
filter: none;
}
.geba-next.gn-v4.gn-performance-lite .gn5-360-frame {
filter: drop-shadow(0 24px 26px rgba(0, 0, 0, .58));
transition: opacity .12s linear;
}
.geba-next.gn-v4.gn-performance-lite :where(
.gn-header,
.gn5-viewer__toolbar,
.gn4-product-note,
.gn-consent
) {
backdrop-filter: none;
}
.geba-next.gn-v4.gn-performance-lite .gn4-category > img {
transition-duration: .25s;
}
@media (max-width: 820px) {
.geba-next.gn-v4 .gn5-poster__atmosphere::after,
.geba-next.gn-v4 .gn5-viewer--360::after {
filter: none;
}
.geba-next.gn-v4 .gn5-360-frame {
filter: drop-shadow(0 20px 24px rgba(0, 0, 0, .55));
}
}
/* =========================================================
CP17 — GEBA Safety Brand System + Premium Navigation
========================================================= */
.geba-next.gn-v4 .gn-header {
height: 82px;
background: linear-gradient(180deg, rgba(6, 7, 9, .96), rgba(6, 7, 9, .82));
border-bottom-color: rgba(255, 255, 255, .095);
}
.geba-next.gn-v4 .gn-header.is-sticky,
.geba-next.gn-v4 .gn-header--inner {
height: 74px;
background: rgba(6, 7, 9, .972);
border-bottom-color: rgba(255, 255, 255, .12);
box-shadow: 0 18px 54px rgba(0, 0, 0, .27);
}
.geba-next.gn-v4 .gn-header__inner {
gap: clamp(22px, 2.3vw, 42px);
}
.geba-next.gn-v4 .gn-brandlockup {
position: relative;
z-index: 103;
display: inline-flex;
flex: 0 0 auto;
gap: 11px;
align-items: center;
min-width: 190px;
color: #fff;
}
.geba-next.gn-v4 .gn-brandlockup__mark {
width: 34px;
height: 34px;
flex: 0 0 34px;
object-fit: contain;
border-radius: 8px;
box-shadow: 0 0 0 1px rgba(255,255,255,.07), 0 8px 26px rgba(0,0,0,.2);
}
.geba-next.gn-v4 .gn-brandlockup__wordmark {
display: grid;
align-content: center;
min-width: 0;
}
.geba-next.gn-v4 .gn-brandlockup__wordmark > img {
width: auto;
max-width: 128px;
height: 30px;
object-fit: contain;
object-position: left center;
}
.geba-next.gn-v4 .gn-logo-text {
display: inline-flex;
align-items: baseline;
font-size: 18px;
font-weight: 850;
line-height: 1;
letter-spacing: -.055em;
}
.geba-next.gn-v4 .gn-logo-text strong { font-weight: inherit; }
.geba-next.gn-v4 .gn-logo-text b { color: var(--gn4-pink); font-weight: inherit; }
.geba-next.gn-v4 .gn-brandlockup__wordmark > small {
margin-top: 4px;
color: rgba(255,255,255,.44);
font: 650 7px/1.2 var(--gn-mono);
letter-spacing: .135em;
white-space: nowrap;
}
.geba-next.gn-v4 .gn-nav--premium {
gap: 4px;
margin-left: auto;
}
.geba-next.gn-v4 .gn-nav--premium > .gn-mega,
.geba-next.gn-v4 .gn-nav--premium > .gn-nav__shop,
.geba-next.gn-v4 .gn-nav--premium > .gn-nav__cta {
flex: 0 0 auto;
}
.geba-next.gn-v4 .gn-nav .gn-mega > summary {
min-height: 44px;
display: inline-flex;
align-items: center;
padding: 0 12px;
color: rgba(255,255,255,.72);
font-size: 12px;
font-weight: 700;
letter-spacing: -.01em;
border: 1px solid transparent;
border-radius: 8px;
transition: color .18s ease, background .18s ease, border-color .18s ease;
}
.geba-next.gn-v4 .gn-nav .gn-mega > summary::after {
width: 14px;
margin-left: 7px;
content: "⌄";
color: rgba(255,255,255,.4);
font-size: 12px;
line-height: 1;
text-align: center;
transform: translateY(-1px);
transition: transform .18s ease, color .18s ease;
}
.geba-next.gn-v4 .gn-nav .gn-mega[open] > summary::after {
content: "⌄";
color: var(--gn4-pink);
transform: translateY(1px) rotate(180deg);
}
.geba-next.gn-v4 .gn-nav .gn-mega > summary:hover,
.geba-next.gn-v4 .gn-nav .gn-mega > summary:focus-visible,
.geba-next.gn-v4 .gn-nav .gn-mega[open] > summary {
color: #fff;
background: rgba(255,255,255,.055);
border-color: rgba(255,255,255,.1);
}
.geba-next.gn-v4 .gn-nav .gn-mega.is-current > summary {
color: #fff;
}
.geba-next.gn-v4 .gn-nav .gn-mega.is-current > summary::before {
width: 5px;
height: 5px;
margin-right: 7px;
content: "";
background: var(--gn4-pink);
border-radius: 50%;
box-shadow: 0 0 14px rgba(243,0,103,.65);
}
.geba-next.gn-v4 .gn-mega__panel {
top: calc(100% + 15px);
right: auto;
left: -72px;
grid-template-columns: minmax(0, 1.62fr) minmax(230px, .78fr);
gap: 32px;
width: min(870px, calc(100vw - 56px));
padding: 28px;
background:
linear-gradient(135deg, rgba(255,255,255,.035), transparent 38%),
rgba(8, 9, 12, .985);
border: 1px solid rgba(255,255,255,.13);
border-radius: 13px;
box-shadow: 0 36px 100px rgba(0,0,0,.55), 0 0 0 1px rgba(0,0,0,.22);
}
.geba-next.gn-v4 .gn-mega--products .gn-mega__panel { left: -210px; width: min(980px, calc(100vw - 56px)); }
.geba-next.gn-v4 .gn-mega--corporate .gn-mega__panel { right: -88px; left: auto; width: min(700px, calc(100vw - 56px)); }
.geba-next.gn-v4 .gn-mega__panel--expertise { left: -250px; }
.geba-next.gn-v4 .gn-mega__panel > div:first-child {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 0 22px;
}
.geba-next.gn-v4 .gn-mega__panel--products > div:first-child {
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 0 18px;
}
.geba-next.gn-v4 .gn-mega__panel small {
margin-bottom: 12px;
color: rgba(255,255,255,.42);
font-size: 9px;
font-weight: 700;
letter-spacing: .16em;
}
.geba-next.gn-v4 .gn-mega__panel > div:first-child > a {
min-height: 41px;
align-items: center;
padding: 9px 3px;
color: rgba(255,255,255,.76);
font-size: 12px;
font-weight: 650;
line-height: 1.35;
border-bottom-color: rgba(255,255,255,.075);
}
.geba-next.gn-v4 .gn-mega__panel > div:first-child > a span {
min-width: 18px;
color: rgba(255,255,255,.32);
font-size: 8px;
}
.geba-next.gn-v4 .gn-mega__panel > div:first-child > a:hover,
.geba-next.gn-v4 .gn-mega__panel > div:first-child > a:focus-visible,
.geba-next.gn-v4 .gn-mega__panel > div:first-child > a[aria-current="page"] {
color: #fff;
border-bottom-color: rgba(243,0,103,.52);
}
.geba-next.gn-v4 .gn-mega__panel > div:first-child > a[aria-current="page"] span {
color: var(--gn4-pink);
}
.geba-next.gn-v4 .gn-mega__aside {
position: relative;
display: grid !important;
grid-template-columns: 1fr !important;
align-content: start;
gap: 12px !important;
min-width: 0;
padding: 21px;
overflow: hidden;
background: linear-gradient(145deg, rgba(243,0,103,.11), rgba(255,255,255,.025) 58%);
border: 1px solid rgba(255,255,255,.09);
border-radius: 10px;
}
.geba-next.gn-v4 .gn-mega__aside::after {
position: absolute;
right: -42px;
bottom: -42px;
width: 130px;
aspect-ratio: 1;
content: "";
background: radial-gradient(circle, rgba(243,0,103,.16), transparent 69%);
pointer-events: none;
}
.geba-next.gn-v4 .gn-mega__aside small { margin: 0; color: var(--gn4-pink); }
.geba-next.gn-v4 .gn-mega__aside strong { max-width: 260px; color: #fff; font-size: 18px; line-height: 1.1; letter-spacing: -.025em; }
.geba-next.gn-v4 .gn-mega__aside p { margin: 0 0 4px; color: rgba(255,255,255,.58); font-size: 11px; line-height: 1.6; }
.geba-next.gn-v4 .gn-mega__panel .gn-mega__feature {
position: relative;
z-index: 1;
display: flex;
justify-content: space-between;
gap: 12px;
width: 100%;
padding: 12px 0 8px;
color: #fff;
font-size: 11px;
font-weight: 750;
border-bottom: 1px solid rgba(255,255,255,.11);
}
.geba-next.gn-v4 .gn-mega__panel .gn-mega__feature b { color: var(--gn4-pink); font-size: 14px; }
.geba-next.gn-v4 .gn-mega__panel .gn-mega__feature--quiet { color: rgba(255,255,255,.65); }
.geba-next.gn-v4 .gn-mega__panel .gn-mega__feature--shop { color: #fff; background: rgba(255,255,255,.04); padding-inline: 9px; border-radius: 4px; }
.geba-next.gn-v4 .gn-mega__mobile-all { display: none; }
.geba-next.gn-v4 .gn-nav__shop {
display: inline-flex;
align-items: center;
gap: 7px;
min-height: 44px;
padding: 0 12px;
color: rgba(255,255,255,.66);
font-size: 11px;
font-weight: 700;
white-space: nowrap;
border-left: 1px solid rgba(255,255,255,.1);
}
.geba-next.gn-v4 .gn-nav__shop b { color: var(--gn4-pink); font-size: 12px; }
.geba-next.gn-v4 .gn-nav__shop:hover { color: #fff; }
.geba-next.gn-v4 .gn-nav__shop::after,
.geba-next.gn-v4 .gn-nav__cta::after { display: none !important; }
.geba-next.gn-v4 .gn-nav__cta {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 11px;
min-height: 46px;
margin-left: 4px;
padding-inline: 17px;
color: #fff;
font-size: 11px;
font-weight: 800;
background: var(--gn4-pink);
border-color: var(--gn4-pink);
border-radius: 7px;
box-shadow: 0 12px 30px rgba(243, 0, 103, .22);
}
.geba-next.gn-v4 .gn-nav__cta span { font-size: 14px; transition: transform .18s ease; }
.geba-next.gn-v4 .gn-nav__cta:hover { color: #fff; background: #ff2a80; border-color: #ff2a80; }
.geba-next.gn-v4 .gn-nav__cta:hover span { transform: translateX(3px); }
/* Premium footer: four deliberate information groups instead of one long directory. */
.geba-next.gn-v4 .gn-footer--premium {
border-top: 1px solid rgba(255,255,255,.08);
background:
radial-gradient(circle at 10% 0%, rgba(243,0,103,.08), transparent 25%),
#060709;
}
.geba-next.gn-v4 .gn-footer__top--premium {
grid-template-columns: 1.25fr .72fr .72fr 1fr;
gap: clamp(36px, 5vw, 78px);
padding-top: 72px;
padding-bottom: 64px;
}
.geba-next.gn-v4 .gn-footer__brand { gap: 14px; }
.geba-next.gn-v4 .gn-footer__lockup { display: inline-flex; width: max-content; gap: 12px; align-items: center; color: #fff; }
.geba-next.gn-v4 .gn-footer__lockup > img { width: 42px; height: 42px; border-radius: 9px; }
.geba-next.gn-v4 .gn-footer__lockup > span { display: grid; grid-template-columns: auto auto; align-items: baseline; width: max-content; font-size: 20px; font-weight: 850; line-height: 1; letter-spacing: -.055em; }
.geba-next.gn-v4 .gn-footer__lockup strong { font-weight: inherit; }
.geba-next.gn-v4 .gn-footer__lockup b { color: var(--gn4-pink); }
.geba-next.gn-v4 .gn-footer__lockup small { grid-column: 1 / -1; margin: 5px 0 0; color: rgba(255,255,255,.37); font-size: 7px; letter-spacing: .14em; }
.geba-next.gn-v4 .gn-footer__brand > p { max-width: 390px; margin: 8px 0 4px !important; color: rgba(255,255,255,.59); font-size: 13px !important; line-height: 1.7; }
.geba-next.gn-v4 .gn-footer__location { display: flex; gap: 7px; align-items: center; color: rgba(255,255,255,.36); font: 700 8px/1.4 var(--gn-mono); letter-spacing: .09em; text-transform: uppercase; }
.geba-next.gn-v4 .gn-footer__location i { color: var(--gn4-pink); font-style: normal; }
.geba-next.gn-v4 .gn-footer__column { display: grid; align-content: start; gap: 9px; }
.geba-next.gn-v4 .gn-footer__column > small { margin: 0 0 12px; color: rgba(255,255,255,.42); font: 700 9px/1.4 var(--gn-mono); letter-spacing: .14em; text-transform: uppercase; }
.geba-next.gn-v4 .gn-footer__column > a:not(.gn-footer__contact-link):not(.gn-footer__quote):not(.gn-footer__shop) { width: max-content; color: rgba(255,255,255,.67); font-size: 12px; line-height: 1.5; }
.geba-next.gn-v4 .gn-footer__column > a:hover { color: #fff !important; }
.geba-next.gn-v4 .gn-footer__column .gn-footer__all { margin-top: 4px; color: var(--gn4-pink) !important; font-weight: 700; }
.geba-next.gn-v4 .gn-footer__contact-link { display: grid; gap: 3px; width: 100%; padding: 11px 0; border-bottom: 1px solid rgba(255,255,255,.08); }
.geba-next.gn-v4 .gn-footer__contact-link span { color: rgba(255,255,255,.36); font: 650 8px/1.4 var(--gn-mono); letter-spacing: .1em; text-transform: uppercase; }
.geba-next.gn-v4 .gn-footer__contact-link strong { color: rgba(255,255,255,.78); font-size: 12px; font-weight: 650; }
.geba-next.gn-v4 .gn-footer__quote,
.geba-next.gn-v4 .gn-footer__shop { display: flex; justify-content: space-between; gap: 14px; width: 100%; margin-top: 5px; padding: 12px 13px; font-size: 11px; font-weight: 750; border: 1px solid rgba(255,255,255,.1); }
.geba-next.gn-v4 .gn-footer__quote { color: #fff; background: var(--gn4-pink); border-color: var(--gn4-pink); }
.geba-next.gn-v4 .gn-footer__shop { display: grid; gap: 2px; color: rgba(255,255,255,.69); background: rgba(255,255,255,.025); }
.geba-next.gn-v4 .gn-footer__shop span { color: rgba(255,255,255,.36); font-size: 8px; letter-spacing: .08em; text-transform: uppercase; }
.geba-next.gn-v4 .gn-footer__shop strong { color: #fff; font-size: 11px; font-weight: 700; }
/* MR39 — governed product category discovery in the corporate footer. */
.geba-next.gn-v4 .gn-footer__categories {
display: grid;
grid-template-columns: minmax(170px, .42fr) minmax(0, 1.58fr);
gap: clamp(24px, 4vw, 64px);
align-items: center;
padding-top: 22px;
padding-bottom: 22px;
border-top: 1px solid rgba(255,255,255,.08);
border-bottom: 1px solid rgba(255,255,255,.08);
}
.geba-next.gn-v4 .gn-footer__categories-intro { display: grid; gap: 4px; min-width: 0; }
.geba-next.gn-v4 .gn-footer__categories-intro small { color: rgba(255,255,255,.38); font: 700 8px/1.4 var(--gn-mono); letter-spacing: .14em; }
.geba-next.gn-v4 .gn-footer__categories-intro strong { color: #fff; font-size: 13px; font-weight: 700; }
.geba-next.gn-v4 .gn-footer__categories-links { display: flex; flex-wrap: wrap; gap: 8px 10px; min-width: 0; }
.geba-next.gn-v4 .gn-footer__categories-links a {
display: inline-flex;
gap: 7px;
align-items: center;
min-height: 40px;
max-width: 100%;
padding: 8px 11px;
color: rgba(255,255,255,.68);
font-size: 11px;
line-height: 1.35;
border: 1px solid rgba(255,255,255,.09);
border-radius: 999px;
overflow-wrap: anywhere;
}
.geba-next.gn-v4 .gn-footer__categories-links a:hover,
.geba-next.gn-v4 .gn-footer__categories-links a:focus-visible { color: #fff; border-color: rgba(255,72,151,.58); }
.geba-next.gn-v4 .gn-footer__categories-links a span { color: var(--gn4-pink); font: 750 8px/1 var(--gn-mono); letter-spacing: .08em; }
.geba-next.gn-v4 .gn-footer__categories-links .gn-footer__categories-all { color: #fff; font-weight: 750; background: rgba(255,255,255,.045); }
.geba-next.gn-v4 .gn-footer__categories-all b { color: var(--gn4-pink); font-size: 15px; }
.geba-next.gn-v4 .gn-footer__bottom { align-items: center; }
.geba-next.gn-v4 .gn-footer__bottom nav { display: flex; justify-content: center; gap: 20px; }
.geba-next.gn-v4 .gn-footer__bottom nav a { color: rgba(255,255,255,.48); }
.geba-next.gn-v4 .gn-footer__bottom nav a:hover { color: #fff; }
@media (max-width: 1180px) and (min-width: 1025px) {
.geba-next.gn-v4 .gn-brandlockup { min-width: 150px; }
.geba-next.gn-v4 .gn-brandlockup__wordmark > small { display: none; }
.geba-next.gn-v4 .gn-nav .gn-mega > summary { padding-inline: 9px; font-size: 11px; }
.geba-next.gn-v4 .gn-nav__shop { padding-inline: 9px; }
.geba-next.gn-v4 .gn-nav__shop span { display: none; }
.geba-next.gn-v4 .gn-nav__cta { padding-inline: 14px; }
}
@media (max-width: 1024px) {
.geba-next.gn-v4 .gn-header,
.geba-next.gn-v4 .gn-header.is-sticky,
.geba-next.gn-v4 .gn-header--inner { height: 70px; }
.geba-next.gn-v4 .gn-brandlockup { min-width: 0; }
.geba-next.gn-v4 .gn-brandlockup__mark { width: 32px; height: 32px; flex-basis: 32px; }
.geba-next.gn-v4 .gn-brandlockup__wordmark > img { max-width: 120px; height: 29px; }
.geba-next.gn-v4 .gn-brandlockup__wordmark > small { display: none; }
.geba-next.gn-v4 .gn-nav--premium {
align-content: start;
gap: 2px;
padding-top: 92px;
padding-bottom: 54px;
}
.geba-next.gn-v4 .gn-nav .gn-mega > summary {
display: flex;
justify-content: space-between;
width: 100%;
min-height: 0;
padding: 14px 0;
color: #fff;
font-size: clamp(27px, 5.4vw, 42px);
font-weight: 680;
line-height: 1;
letter-spacing: -.045em;
background: transparent;
border: 0;
border-bottom: 1px solid rgba(255,255,255,.09);
border-radius: 0;
}
.geba-next.gn-v4 .gn-nav .gn-mega > summary::after { margin-left: auto; color: var(--gn4-pink); font-size: 17px; }
.geba-next.gn-v4 .gn-nav .gn-mega.is-current > summary::before { width: 6px; height: 6px; margin-right: 10px; }
.geba-next.gn-v4 .gn-mega__panel,
.geba-next.gn-v4 .gn-mega--products .gn-mega__panel,
.geba-next.gn-v4 .gn-mega--corporate .gn-mega__panel,
.geba-next.gn-v4 .gn-mega__panel--expertise {
position: static;
width: 100%;
max-height: none;
margin: 0;
padding: 18px 0 24px;
overflow: visible;
background: transparent;
border: 0;
border-radius: 0;
box-shadow: none;
transform: none;
}
.geba-next.gn-v4 .gn-mega__panel > div:first-child,
.geba-next.gn-v4 .gn-mega__panel--products > div:first-child {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 0 18px;
}
.geba-next.gn-v4 .gn-mega__panel > div:first-child > a { min-height: 42px; font-size: 12px; }
.geba-next.gn-v4 .gn-mega__aside { display: none !important; }
.geba-next.gn-v4 .gn-mega__mobile-all {
display: flex;
grid-column: 1 / -1;
align-items: center;
justify-content: space-between;
min-height: 46px;
margin-top: 10px;
padding: 10px 0;
color: #fff;
font-size: 12px;
font-weight: 760;
letter-spacing: .01em;
border-top: 1px solid rgba(255,255,255,.16);
border-bottom: 1px solid rgba(255,255,255,.16);
}
.geba-next.gn-v4 .gn-mega__mobile-all b { color: var(--gn4-pink); font-size: 18px; }
.geba-next.gn-v4 .gn-nav__shop {
width: 100%;
min-height: 50px;
justify-content: space-between;
margin-top: 9px;
padding: 0;
color: rgba(255,255,255,.76);
font-size: 14px;
border-top: 1px solid rgba(255,255,255,.09);
border-left: 0;
}
.geba-next.gn-v4 .gn-nav__shop span { display: inline; }
.geba-next.gn-v4 .gn-nav__cta {
width: 100%;
min-height: 56px;
margin: 8px 0 0;
border-radius: 7px;
}
.geba-next.gn-v4 .gn-footer__top--premium { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 52px 36px; }
.geba-next.gn-v4 .gn-footer__categories { grid-template-columns: 1fr; gap: 14px; align-items: start; }
.geba-next.gn-v4 .gn-footer__bottom { grid-template-columns: 1fr; justify-items: start; gap: 12px; }
.geba-next.gn-v4 .gn-footer__bottom nav { justify-content: flex-start; flex-wrap: wrap; gap: 10px 18px; }
}
@media (max-width: 600px) {
.geba-next.gn-v4 .gn-brandlockup { gap: 8px; }
.geba-next.gn-v4 .gn-brandlockup__mark { width: 30px; height: 30px; flex-basis: 30px; border-radius: 7px; }
.geba-next.gn-v4 .gn-brandlockup__wordmark > img { max-width: 104px; height: 27px; }
.geba-next.gn-v4 .gn-logo-text { font-size: 16px; }
.geba-next.gn-v4 .gn-nav--premium { padding-inline: 22px; }
.geba-next.gn-v4 .gn-nav .gn-mega > summary { font-size: clamp(27px, 8vw, 36px); }
.geba-next.gn-v4 .gn-mega__panel > div:first-child,
.geba-next.gn-v4 .gn-mega__panel--products > div:first-child { grid-template-columns: 1fr; }
.geba-next.gn-v4 .gn-mega__panel > div:first-child > a { min-height: 39px; }
.geba-next.gn-v4 .gn-mega__panel > div:first-child > .gn-mega__category-link--secondary { display: none; }
.geba-next.gn-v4 .gn-mega__mobile-all { min-height: 48px; margin-top: 8px; }
.geba-next.gn-v4 .gn-footer__top--premium { grid-template-columns: 1fr; gap: 42px; padding-top: 58px; padding-bottom: 54px; }
.geba-next.gn-v4 .gn-footer__categories { padding-top: 20px; padding-bottom: 20px; }
.geba-next.gn-v4 .gn-footer__categories-links { display: grid; grid-template-columns: 1fr; width: 100%; gap: 7px; }
.geba-next.gn-v4 .gn-footer__categories-links a { width: 100%; min-height: 44px; justify-content: space-between; border-radius: 8px; }
.geba-next.gn-v4 .gn-footer__brand > p { max-width: 100%; }
.geba-next.gn-v4 .gn-footer__column > a:not(.gn-footer__contact-link):not(.gn-footer__quote):not(.gn-footer__shop) { font-size: 13px; }
}
/* CP17 specificity guards for direct anchor actions inside the responsive nav. */
.geba-next.gn-v4 .gn-nav--premium > .gn-nav__shop {
padding: 0 12px;
font-size: 11px;
letter-spacing: 0;
}
.geba-next.gn-v4 .gn-nav--premium > .gn-nav__cta {
padding-inline: 17px;
font-size: 11px;
letter-spacing: 0;
}
@media (max-width: 1024px) {
.geba-next.gn-v4 .gn-nav--premium > .gn-nav__shop {
width: 100%;
min-height: 50px;
padding: 0;
font-size: 14px;
letter-spacing: 0;
}
.geba-next.gn-v4 .gn-nav--premium > .gn-nav__cta {
width: 100%;
min-height: 56px;
padding-inline: 18px;
font-size: 12px;
letter-spacing: .01em;
}
}
/* ========================================================================== 
CP18 — Homepage 2.0 / Corporate balance
========================================================================== */
.geba-next.gn-v4 .gn18-manifesto {
position: relative;
padding: 126px 0 0;
overflow: hidden;
color: var(--gn4-ink);
background: #fff;
}
.geba-next.gn-v4 .gn18-manifesto::before {
position: absolute;
top: 0;
right: -8vw;
width: min(52vw, 760px);
height: 1px;
content: "";
background: linear-gradient(90deg, transparent, rgba(243,0,103,.38), transparent);
transform: rotate(-8deg);
transform-origin: right center;
}
.geba-next.gn-v4 .gn18-manifesto__grid {
display: grid;
grid-template-columns: minmax(0, 1.16fr) minmax(320px, .62fr);
gap: clamp(50px, 8vw, 132px);
align-items: end;
}
.geba-next.gn-v4 .gn18-manifesto h2,
.geba-next.gn-v4 .gn18-section-head h2,
.geba-next.gn-v4 .gn18-title-row h2,
.geba-next.gn-v4 .gn18-knowledge__intro h2 {
margin: 24px 0 0;
font-size: clamp(48px, 5.35vw, 82px);
line-height: .96;
letter-spacing: -.055em;
}
.geba-next.gn-v4 .gn18-manifesto__copy > p {
margin: 0;
color: var(--gn4-muted);
font-size: 17px;
line-height: 1.75;
}
.geba-next.gn-v4 .gn18-inline-actions {
display: flex;
flex-wrap: wrap;
gap: 10px;
margin-top: 34px;
}
.geba-next.gn-v4 .gn18-inline-actions .gn-button--line {
color: var(--gn4-ink);
border-color: rgba(14,15,18,.18);
}
.geba-next.gn-v4 .gn18-proof-rail {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
margin-top: 84px;
border-top: 1px solid var(--gn4-line);
border-bottom: 1px solid var(--gn4-line);
}
.geba-next.gn-v4 .gn18-proof-rail > a {
position: relative;
display: grid;
min-height: 178px;
padding: 28px 28px 30px;
color: var(--gn4-ink);
text-decoration: none;
border-right: 1px solid var(--gn4-line);
transition: background .25s ease, transform .25s ease;
}
.geba-next.gn-v4 .gn18-proof-rail > a:last-child { border-right: 0; }
.geba-next.gn-v4 .gn18-proof-rail > a:hover,
.geba-next.gn-v4 .gn18-proof-rail > a:focus-visible { background: var(--gn4-paper); }
.geba-next.gn-v4 .gn18-proof-rail strong {
color: var(--gn4-pink);
font-family: var(--gn-mono);
font-size: clamp(28px, 3vw, 46px);
font-weight: 700;
letter-spacing: -.04em;
}
.geba-next.gn-v4 .gn18-proof-rail span {
align-self: end;
margin-top: 22px;
font-size: 15px;
font-weight: 750;
}
.geba-next.gn-v4 .gn18-proof-rail small {
margin-top: 6px;
color: var(--gn4-muted);
font-size: 10px;
line-height: 1.45;
}
.geba-next.gn-v4 .gn18-portfolio { padding-top: 118px; }
.geba-next.gn-v4 .gn18-engineering {
position: relative;
padding: 132px 0;
overflow: hidden;
color: #fff;
background:
radial-gradient(circle at 82% 18%, rgba(243,0,103,.13), transparent 33%),
linear-gradient(145deg, #08090c 0%, #111319 50%, #07080a 100%);
}
.geba-next.gn-v4 .gn18-engineering::after {
position: absolute;
inset: 0;
pointer-events: none;
content: "";
opacity: .16;
background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
background-size: 54px 54px;
mask-image: linear-gradient(to bottom, #000, transparent 84%);
}
.geba-next.gn-v4 .gn18-section-head,
.geba-next.gn-v4 .gn18-title-row {
position: relative;
z-index: 1;
display: grid;
grid-template-columns: minmax(0, 1.05fr) minmax(300px, .42fr);
gap: clamp(45px, 8vw, 120px);
align-items: end;
}
.geba-next.gn-v4 .gn18-section-head > p,
.geba-next.gn-v4 .gn18-title-row > div > p:not(.gn4-index) {
margin: 0;
color: var(--gn4-muted);
font-size: 15px;
line-height: 1.7;
}
.geba-next.gn-v4 .gn18-section-head--dark > p { color: rgba(255,255,255,.58); }
.geba-next.gn-v4 .gn18-engineering__grid {
position: relative;
z-index: 1;
display: grid;
grid-template-columns: repeat(12, minmax(0, 1fr));
grid-auto-rows: minmax(270px, auto);
gap: 12px;
margin-top: 68px;
}
.geba-next.gn-v4 .gn18-engineering-card {
position: relative;
grid-column: span 3;
min-height: 340px;
overflow: hidden;
color: #fff;
text-decoration: none;
background: #17191f;
border: 1px solid rgba(255,255,255,.08);
}
.geba-next.gn-v4 .gn18-engineering-card--lead { grid-column: span 6; }
.geba-next.gn-v4 .gn18-engineering-card img {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
filter: saturate(.72) contrast(1.08);
transition: transform .6s cubic-bezier(.2,.75,.25,1), filter .35s ease;
}
.geba-next.gn-v4 .gn18-engineering-card::after {
position: absolute;
inset: 0;
content: "";
background: linear-gradient(to top, rgba(4,5,8,.92) 0%, rgba(4,5,8,.24) 60%, rgba(4,5,8,.08) 100%);
}
.geba-next.gn-v4 .gn18-engineering-card > span {
position: absolute;
z-index: 2;
inset: auto 26px 26px;
display: grid;
gap: 10px;
}
.geba-next.gn-v4 .gn18-engineering-card small,
.geba-next.gn-v4 .gn18-sector-card small,
.geba-next.gn-v4 .gn18-resource-stack small {
color: var(--gn4-pink);
font-family: var(--gn-mono);
font-size: 9px;
letter-spacing: .14em;
}
.geba-next.gn-v4 .gn18-engineering-card strong { max-width: 430px; font-size: clamp(23px, 2.2vw, 34px); line-height: 1.02; letter-spacing: -.035em; }
.geba-next.gn-v4 .gn18-engineering-card em { color: rgba(255,255,255,.68); font-size: 10px; font-style: normal; }
.geba-next.gn-v4 .gn18-engineering-card:hover img,
.geba-next.gn-v4 .gn18-engineering-card:focus-visible img { transform: scale(1.035); filter: saturate(.9) contrast(1.05); }
.geba-next.gn-v4 .gn18-engineering-card--text {
color: #fff;
background: linear-gradient(145deg, rgba(243,0,103,.19), rgba(255,255,255,.045));
}
.geba-next.gn-v4 .gn18-engineering-card--text::after { display: none; }
.geba-next.gn-v4 .gn18-engineering-card--text > span { inset: 28px; align-content: end; }
.geba-next.gn-v4 .gn18-engineering-card--text p { margin: 6px 0 12px; color: rgba(255,255,255,.6); font-size: 13px; line-height: 1.6; }
.geba-next.gn-v4 .gn18-sectors { padding: 132px 0; color: var(--gn4-ink); background: #fff; }
.geba-next.gn-v4 .gn18-title-row .gn4-arrow-link { justify-self: end; align-self: end; }
.geba-next.gn-v4 .gn18-sector-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 12px;
margin-top: 62px;
}
.geba-next.gn-v4 .gn18-sector-card {
position: relative;
min-height: 420px;
overflow: hidden;
color: #fff;
text-decoration: none;
background: #121419;
}
.geba-next.gn-v4 .gn18-sector-card img {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
filter: saturate(.7) contrast(1.06);
transition: transform .55s ease, filter .3s ease;
}
.geba-next.gn-v4 .gn18-sector-card::after {
position: absolute;
inset: 0;
content: "";
background: linear-gradient(to top, rgba(5,6,8,.92) 0%, rgba(5,6,8,.28) 58%, rgba(5,6,8,.06) 100%);
}
.geba-next.gn-v4 .gn18-sector-card > span {
position: absolute;
z-index: 2;
inset: auto 26px 25px;
display: grid;
gap: 8px;
}
.geba-next.gn-v4 .gn18-sector-card strong { font-size: clamp(25px, 2.25vw, 36px); line-height: 1; letter-spacing: -.04em; }
.geba-next.gn-v4 .gn18-sector-card p { max-width: 320px; margin: 2px 0 8px; color: rgba(255,255,255,.66); font-size: 12px; line-height: 1.5; }
.geba-next.gn-v4 .gn18-sector-card em { color: rgba(255,255,255,.7); font-size: 10px; font-style: normal; }
.geba-next.gn-v4 .gn18-sector-card:hover img,
.geba-next.gn-v4 .gn18-sector-card:focus-visible img { transform: scale(1.04); filter: saturate(.9) contrast(1.04); }
.geba-next.gn-v4 .gn18-services { background: var(--gn4-paper); }
.geba-next.gn-v4 .gn18-services .gn4-services__grid > div > p:last-child { display: block; }
.geba-next.gn-v4 .gn18-services .gn4-services__grid > div > p:last-child .gn4-arrow-link { display: inline-flex; margin-top: 28px; }
.geba-next.gn-v4 .gn18-products { background: #fff; }
.geba-next.gn-v4 .gn18-brands { padding: 126px 0; background: var(--gn4-paper); }
.geba-next.gn-v4 .gn18-brand-wall {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 1px;
margin-top: 62px;
background: var(--gn4-line);
border: 1px solid var(--gn4-line);
}
.geba-next.gn-v4 .gn18-brand-chip {
position: relative;
display: grid;
min-height: 172px;
padding: 28px;
overflow: hidden;
color: var(--gn4-ink);
text-decoration: none;
background: #fff;
transition: background .25s ease, color .25s ease;
}
.geba-next.gn-v4 .gn18-brand-chip::before {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 2px;
content: "";
background: var(--gn4-pink);
transform: scaleX(.14);
transform-origin: left;
transition: transform .3s ease;
}
.geba-next.gn-v4 .gn18-brand-chip strong { align-self: start; font-size: clamp(18px, 1.65vw, 26px); letter-spacing: -.035em; }
.geba-next.gn-v4 .gn18-brand-chip span { align-self: end; max-width: 320px; margin-top: 32px; color: var(--gn4-muted); font-size: 10px; line-height: 1.5; }
.geba-next.gn-v4 .gn18-brand-chip b { position: absolute; right: 21px; bottom: 19px; color: var(--gn4-pink); font-size: 13px; }
.geba-next.gn-v4 .gn18-brand-chip:hover,
.geba-next.gn-v4 .gn18-brand-chip:focus-visible { background: #101116; color: #fff; }
.geba-next.gn-v4 .gn18-brand-chip:hover::before,
.geba-next.gn-v4 .gn18-brand-chip:focus-visible::before { transform: scaleX(1); }
.geba-next.gn-v4 .gn18-brand-chip:hover span,
.geba-next.gn-v4 .gn18-brand-chip:focus-visible span { color: rgba(255,255,255,.62); }
.geba-next.gn-v4 .gn18-knowledge {
padding: 132px 0;
color: #fff;
background: #0a0b0f;
}
.geba-next.gn-v4 .gn18-knowledge__layout {
display: grid;
grid-template-columns: minmax(290px, .72fr) minmax(440px, 1fr) minmax(250px, .45fr);
gap: clamp(32px, 5vw, 76px);
align-items: start;
}
.geba-next.gn-v4 .gn18-knowledge__intro { position: sticky; top: 116px; }
.geba-next.gn-v4 .gn18-knowledge__intro h2 { font-size: clamp(44px, 4.4vw, 70px); }
.geba-next.gn-v4 .gn18-knowledge__intro > p:not(.gn4-index) { margin: 28px 0 32px; color: rgba(255,255,255,.58); font-size: 14px; line-height: 1.7; }
.geba-next.gn-v4 .gn18-knowledge__cards { border-top: 1px solid rgba(255,255,255,.13); }
.geba-next.gn-v4 .gn18-knowledge__cards > a {
display: grid;
grid-template-columns: 34px 1fr auto;
gap: 18px;
padding: 25px 0;
color: #fff;
text-decoration: none;
border-bottom: 1px solid rgba(255,255,255,.13);
transition: padding-left .25s ease, background .25s ease;
}
.geba-next.gn-v4 .gn18-knowledge__cards > a:hover,
.geba-next.gn-v4 .gn18-knowledge__cards > a:focus-visible { padding-left: 12px; }
.geba-next.gn-v4 .gn18-knowledge__cards small { color: var(--gn4-pink); font-family: var(--gn-mono); font-size: 9px; }
.geba-next.gn-v4 .gn18-knowledge__cards strong { font-size: 18px; letter-spacing: -.025em; }
.geba-next.gn-v4 .gn18-knowledge__cards p { grid-column: 2 / -1; margin: -8px 0 0; color: rgba(255,255,255,.52); font-size: 11px; line-height: 1.55; }
.geba-next.gn-v4 .gn18-knowledge__cards em { grid-column: 2 / -1; color: rgba(255,255,255,.7); font-size: 9px; font-style: normal; }
.geba-next.gn-v4 .gn18-resource-stack { display: grid; gap: 10px; }
.geba-next.gn-v4 .gn18-resource-stack > a {
display: grid;
min-height: 190px;
padding: 26px;
color: #fff;
text-decoration: none;
background: rgba(255,255,255,.045);
border: 1px solid rgba(255,255,255,.1);
transition: background .25s ease, border-color .25s ease;
}
.geba-next.gn-v4 .gn18-resource-stack > a:hover,
.geba-next.gn-v4 .gn18-resource-stack > a:focus-visible { background: rgba(243,0,103,.11); border-color: rgba(243,0,103,.4); }
.geba-next.gn-v4 .gn18-resource-stack strong { align-self: center; font-size: 20px; line-height: 1.1; }
.geba-next.gn-v4 .gn18-resource-stack span { align-self: end; color: rgba(255,255,255,.6); font-size: 10px; line-height: 1.45; }
.geba-next.gn-v4 :where(.gn18-engineering, .gn18-sectors, .gn18-brands, .gn18-knowledge) {
content-visibility: auto;
contain-intrinsic-size: 900px;
}
@media (max-width: 1180px) {
.geba-next.gn-v4 .gn18-proof-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.geba-next.gn-v4 .gn18-proof-rail > a:nth-child(2) { border-right: 0; }
.geba-next.gn-v4 .gn18-proof-rail > a:nth-child(-n+2) { border-bottom: 1px solid var(--gn4-line); }
.geba-next.gn-v4 .gn18-engineering-card { grid-column: span 6; }
.geba-next.gn-v4 .gn18-engineering-card--lead { grid-column: span 12; min-height: 440px; }
.geba-next.gn-v4 .gn18-sector-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.geba-next.gn-v4 .gn18-brand-wall { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.geba-next.gn-v4 .gn18-knowledge__layout { grid-template-columns: minmax(300px, .62fr) 1fr; }
.geba-next.gn-v4 .gn18-resource-stack { grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 820px) {
.geba-next.gn-v4 .gn18-manifesto,
.geba-next.gn-v4 .gn18-engineering,
.geba-next.gn-v4 .gn18-sectors,
.geba-next.gn-v4 .gn18-brands,
.geba-next.gn-v4 .gn18-knowledge { padding-top: 88px; padding-bottom: 88px; }
.geba-next.gn-v4 .gn18-manifesto { padding-bottom: 0; }
.geba-next.gn-v4 .gn18-manifesto__grid,
.geba-next.gn-v4 .gn18-section-head,
.geba-next.gn-v4 .gn18-title-row,
.geba-next.gn-v4 .gn18-knowledge__layout { grid-template-columns: 1fr; gap: 30px; }
.geba-next.gn-v4 .gn18-manifesto h2,
.geba-next.gn-v4 .gn18-section-head h2,
.geba-next.gn-v4 .gn18-title-row h2,
.geba-next.gn-v4 .gn18-knowledge__intro h2 { font-size: clamp(42px, 11vw, 58px); }
.geba-next.gn-v4 .gn18-title-row .gn4-arrow-link { justify-self: start; }
.geba-next.gn-v4 .gn18-proof-rail { margin-top: 58px; }
.geba-next.gn-v4 .gn18-proof-rail > a { min-height: 145px; padding: 22px; }
.geba-next.gn-v4 .gn18-engineering__grid { grid-template-columns: 1fr; grid-auto-rows: auto; margin-top: 42px; }
.geba-next.gn-v4 .gn18-engineering-card,
.geba-next.gn-v4 .gn18-engineering-card--lead { grid-column: auto; min-height: 360px; }
.geba-next.gn-v4 .gn18-engineering-card--text { min-height: 270px; }
.geba-next.gn-v4 .gn18-sector-grid { grid-template-columns: 1fr; margin-top: 42px; }
.geba-next.gn-v4 .gn18-sector-card { min-height: 390px; }
.geba-next.gn-v4 .gn18-brand-wall { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 42px; }
.geba-next.gn-v4 .gn18-brand-chip { min-height: 150px; padding: 22px; }
.geba-next.gn-v4 .gn18-knowledge__intro { position: static; }
.geba-next.gn-v4 .gn18-resource-stack { grid-column: auto; grid-template-columns: 1fr; }
.geba-next.gn-v4 .gn18-resource-stack > a { min-height: 155px; }
}
@media (max-width: 560px) {
.geba-next.gn-v4 .gn18-proof-rail { grid-template-columns: 1fr; }
.geba-next.gn-v4 .gn18-proof-rail > a { border-right: 0; border-bottom: 1px solid var(--gn4-line); }
.geba-next.gn-v4 .gn18-proof-rail > a:last-child { border-bottom: 0; }
.geba-next.gn-v4 .gn18-inline-actions { display: grid; grid-template-columns: 1fr; }
.geba-next.gn-v4 .gn18-inline-actions .gn-button { width: 100%; justify-content: center; }
.geba-next.gn-v4 .gn18-engineering-card,
.geba-next.gn-v4 .gn18-engineering-card--lead { min-height: 320px; }
.geba-next.gn-v4 .gn18-sector-card { min-height: 350px; }
.geba-next.gn-v4 .gn18-brand-wall { grid-template-columns: 1fr; }
.geba-next.gn-v4 .gn18-brand-chip { min-height: 136px; }
.geba-next.gn-v4 .gn18-knowledge__cards > a { grid-template-columns: 28px 1fr; }
.geba-next.gn-v4 .gn18-knowledge__cards > a > em { grid-column: 2; }
}
@media (prefers-reduced-motion: reduce) {
.geba-next.gn-v4 .gn18-engineering-card img,
.geba-next.gn-v4 .gn18-sector-card img,
.geba-next.gn-v4 .gn18-brand-chip { transition: none; }
}
/* CP19 — Trust / References / Projects Engine */
.gn19-proof{padding:clamp(72px,8vw,132px) 0;background:linear-gradient(180deg,#080a0d,#0c0f13);color:#f5f7f8;border-top:1px solid rgba(255,255,255,.08)}
.gn19-proof__head,.gn19-section-head{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:34px}
.gn19-proof__head>div,.gn19-section-head>div{max-width:780px}.gn19-proof__head h2,.gn19-section-head h2{font-size:clamp(34px,4vw,64px);line-height:.98;letter-spacing:-.045em;margin:8px 0 16px}.gn19-proof__head p,.gn19-section-head p{max-width:720px;color:rgba(255,255,255,.66);line-height:1.7}
.gn19-proof__body{display:grid;gap:22px}.gn19-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gn19-project-card{display:flex;min-height:380px;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:24px;background:#11151a;color:#fff;text-decoration:none}.gn19-project-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.78) contrast(1.04);transition:transform .6s ease}.gn19-project-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,6,8,.08) 20%,rgba(4,6,8,.92) 100%)}.gn19-project-card>span{position:relative;z-index:2;align-self:end;padding:28px;width:100%}.gn19-project-card small{display:block;color:#ff4f91;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px}.gn19-project-card strong{display:block;font-size:clamp(24px,2.2vw,34px);line-height:1.05;letter-spacing:-.035em}.gn19-project-card p{color:rgba(255,255,255,.7);line-height:1.55;margin:12px 0 18px}.gn19-project-card em{font-style:normal;font-weight:800}.gn19-project-card:hover img,.gn19-project-card:focus-visible img{transform:scale(1.04)}
.gn19-proof-empty{border:1px dashed rgba(255,255,255,.2);border-radius:24px;padding:clamp(28px,4vw,54px);background:linear-gradient(135deg,rgba(255,79,145,.07),rgba(255,255,255,.02))}.gn19-proof-empty span{display:block;color:#ff4f91;font-size:11px;font-weight:900;letter-spacing:.16em;margin-bottom:14px}.gn19-proof-empty strong{display:block;font-size:clamp(24px,3vw,42px);letter-spacing:-.035em;max-width:720px}.gn19-proof-empty p{max-width:820px;color:rgba(255,255,255,.66);line-height:1.7;margin-top:14px}
.gn19-trust-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gn19-trust-strip>span{padding:18px 20px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(255,255,255,.035)}.gn19-trust-strip small,.gn19-trust-grid small{display:block;color:#ff4f91;font-size:10px;font-weight:900;letter-spacing:.13em}.gn19-trust-strip strong{display:block;margin:6px 0 3px}.gn19-trust-strip em{font-style:normal;color:rgba(255,255,255,.56);font-size:12px}
.gn19-projects-hub,.gn19-trust-section,.gn19-related,.gn19-case{padding:clamp(72px,8vw,124px) 0;background:#0b0e12;color:#f6f7f8}.gn19-trust-section{background:#10141a}.gn19-trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.gn19-trust-grid article{padding:26px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:rgba(255,255,255,.035)}.gn19-trust-grid strong{display:block;font-size:21px;margin:8px 0}.gn19-trust-grid p{color:rgba(255,255,255,.68);line-height:1.6}.gn19-trust-grid em{display:block;color:rgba(255,255,255,.54);font-style:normal;font-size:12px;margin-top:10px}.gn19-trust-grid a{display:inline-block;color:#fff;font-weight:800;margin-top:16px}
.gn19-project-hero{min-height:min(76vh,760px);display:flex;align-items:flex-end;position:relative;background:#090b0e;color:#fff;overflow:hidden}.gn61-project-hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.gn19-project-hero:before{content:"";position:absolute;inset:0;z-index:.5;background:linear-gradient(90deg,rgba(4,6,8,.92) 0%,rgba(4,6,8,.63) 48%,rgba(4,6,8,.25) 100%);pointer-events:none}.gn19-project-hero__inner{position:relative;z-index:1;padding-top:170px;padding-bottom:64px}.gn19-project-hero h1{max-width:1000px;font-size:clamp(46px,7vw,98px);line-height:.92;letter-spacing:-.055em;margin:18px 0}.gn19-project-hero__inner>p{max-width:760px;color:rgba(255,255,255,.72);font-size:clamp(17px,1.8vw,23px);line-height:1.55}.gn19-project-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}.gn19-project-meta>span{min-width:150px;padding:14px 18px;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(8,10,13,.42);backdrop-filter:blur(10px)}.gn19-project-meta small{display:block;color:rgba(255,255,255,.5);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.gn19-project-meta strong{display:block;margin-top:4px;font-size:14px}
.gn19-case__grid{display:grid;grid-template-columns:minmax(240px,.72fr) minmax(0,1.7fr);gap:clamp(34px,7vw,100px)}.gn19-case__client{position:sticky;top:130px;align-self:start;padding:26px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:rgba(255,255,255,.035)}.gn19-case__client>small{display:block;color:#ff4f91;font-size:10px;font-weight:900;letter-spacing:.14em}.gn19-case__client img{display:block;max-width:180px;max-height:76px;object-fit:contain;background:white;border-radius:12px;padding:10px;margin:22px 0}.gn19-case__client strong{display:block;font-size:24px;letter-spacing:-.025em;margin:16px 0 8px}.gn19-case__client p{color:rgba(255,255,255,.62);line-height:1.65}.gn19-case__story{display:grid;gap:18px}.gn19-case__story article,.gn19-case__content{padding:clamp(26px,4vw,46px);border:1px solid rgba(255,255,255,.1);border-radius:24px;background:#11151a}.gn19-case__story small{display:block;color:#ff4f91;font-size:11px;font-weight:900;letter-spacing:.13em}.gn19-case__story p,.gn19-case__content{font-size:clamp(17px,1.5vw,21px);line-height:1.72;color:rgba(255,255,255,.76)}
.geba-project-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
@media(max-width:920px){.gn19-project-grid,.gn19-trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gn19-case__grid{grid-template-columns:1fr}.gn19-case__client{position:relative;top:auto}.gn19-proof__head,.gn19-section-head{align-items:start;flex-direction:column}.gn19-trust-strip{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.gn19-project-grid,.gn19-trust-grid,.gn19-trust-strip{grid-template-columns:1fr}.gn19-project-card{min-height:330px}.gn19-project-hero__inner{padding-top:140px}.gn19-project-meta{display:grid;grid-template-columns:1fr 1fr}.gn19-project-meta>span{min-width:0}.geba-project-meta-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.gn19-project-card img{transition:none}.gn19-project-card:hover img,.gn19-project-card:focus-visible img{transform:none}}
/* CP20 — About + Services + Corporate Trust */
.gn20-services-intro,.gn20-about-manifesto,.gn20-service-families,.gn20-service-process,.gn20-verified-trust,.gn20-corporate-gallery,.gn20-timeline,.gn20-about-method,.gn20-about-links,.gn20-service-channels,.gn20-team-note{position:relative;content-visibility:auto;contain-intrinsic-size:1px 720px}.gn20-services-intro,.gn20-about-manifesto{padding:clamp(72px,9vw,136px) 0;background:#080a0f;color:#fff}.gn20-services-intro__grid,.gn20-about-manifesto__grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);gap:clamp(34px,7vw,110px);align-items:start}.gn20-services-intro h2,.gn20-about-manifesto h2{max-width:880px;margin:14px 0 0;font-size:clamp(38px,5.5vw,78px);line-height:.95;letter-spacing:-.055em}.gn20-services-intro p,.gn20-about-manifesto p{margin:22px 0 0;color:rgba(255,255,255,.72);font-size:clamp(16px,1.35vw,20px);line-height:1.7}.gn20-services-intro aside{padding:28px;border:1px solid rgba(255,255,255,.14);background:linear-gradient(145deg,rgba(255,72,151,.13),rgba(89,79,255,.08))}.gn20-services-intro aside small{display:block;color:#ff8abd;font:800 10px/1.3 var(--gn-mono,Consolas,monospace);letter-spacing:.14em}.gn20-services-intro aside strong{display:block;margin:12px 0 0;font-size:25px;letter-spacing:-.03em}.gn20-services-intro aside p{margin:12px 0 0;font-size:14px}.gn20-service-families,.gn20-about-method,.gn20-verified-trust,.gn20-corporate-gallery,.gn20-timeline{padding:clamp(70px,8vw,124px) 0}.gn20-service-grid,.gn20-about-method__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.gn20-service-grid>a,.gn20-about-method__grid article,.gn20-trust-grid article,.gn20-about-links__grid>a{position:relative;display:flex;min-height:260px;padding:28px;flex-direction:column;color:#111318;text-decoration:none;background:#f5f5f4;border:1px solid #e4e4e2;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.gn20-service-grid>a:hover,.gn20-about-links__grid>a:hover{transform:translateY(-4px);border-color:#ff4897;box-shadow:0 22px 50px rgba(17,19,24,.09)}.gn20-service-grid small,.gn20-about-method__grid small,.gn20-about-links__grid small,.gn20-trust-grid small{color:#dd2f7f;font:800 10px/1.2 var(--gn-mono,Consolas,monospace);letter-spacing:.13em}.gn20-service-grid h3,.gn20-about-method__grid h3,.gn20-about-links__grid h3,.gn20-trust-grid h3{margin:24px 0 10px;font-size:clamp(22px,2vw,30px);line-height:1.05;letter-spacing:-.035em}.gn20-service-grid p,.gn20-about-method__grid p,.gn20-about-links__grid p,.gn20-trust-grid p{margin:0;color:#5d626b;line-height:1.65}.gn20-service-grid span,.gn20-about-links__grid span{margin-top:auto;padding-top:24px;font-size:24px}.gn20-service-process{padding:clamp(76px,8vw,128px) 0;background:#101319;color:#fff}.gn20-process-line{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:38px;border-top:1px solid rgba(255,255,255,.18)}.gn20-process-line article{position:relative;padding:30px 24px 4px;border-right:1px solid rgba(255,255,255,.12)}.gn20-process-line article:last-child{border-right:0}.gn20-process-line b{display:inline-grid;width:38px;height:38px;place-items:center;color:#0a0b0f;background:#ff4897;border-radius:50%;font:900 11px/1 var(--gn-mono,Consolas,monospace)}.gn20-process-line h3{margin:22px 0 10px;font-size:22px}.gn20-process-line p{margin:0;color:rgba(255,255,255,.62);line-height:1.65}.gn20-service-channels{padding:clamp(64px,7vw,104px) 0;background:#ececeb}.gn20-service-channels__grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:50px;align-items:center}.gn20-service-channels h2{margin:14px 0 0;font-size:clamp(34px,4vw,60px);line-height:1;letter-spacing:-.05em}.gn20-service-channels__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gn20-service-channels__cards a{display:flex;min-height:170px;padding:24px;flex-direction:column;text-decoration:none;color:#fff;background:#111318;border-top:3px solid #ff4897}.gn20-service-channels__cards strong{font-size:20px}.gn20-service-channels__cards span{margin-top:auto;color:rgba(255,255,255,.65);font-size:13px;line-height:1.55}.gn20-about-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:32px}.gn20-about-facts span{padding:18px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.04)}.gn20-about-facts b{display:block;margin-bottom:8px;color:#fff;font-size:27px;line-height:1}.gn20-about-facts span{color:rgba(255,255,255,.58);font-size:11px}.gn20-about-method{background:#f7f7f5}.gn20-about-method__grid{grid-template-columns:repeat(4,minmax(0,1fr))}.gn20-about-method__grid article{min-height:300px;background:#fff}.gn20-team-note{padding:clamp(60px,7vw,100px) 0;background:#171a22;color:#fff}.gn20-team-note .gn-shell{max-width:980px}.gn20-team-note h2{max-width:820px;margin:14px 0 18px;font-size:clamp(34px,4vw,58px);line-height:1;letter-spacing:-.045em}.gn20-team-note p:last-child{max-width:840px;margin:0;color:rgba(255,255,255,.68);font-size:17px;line-height:1.75}.gn20-corporate-gallery{background:#0c0e13;color:#fff}.gn20-corporate-gallery__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gn20-corporate-gallery figure{margin:0;overflow:hidden;aspect-ratio:16/10;background:#171a22}.gn20-corporate-gallery figure:first-child:nth-last-child(3),.gn20-corporate-gallery figure:first-child:nth-last-child(3)~figure{aspect-ratio:4/3}.gn20-corporate-gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.gn20-corporate-gallery figure:hover img{transform:scale(1.018)}.gn20-timeline{background:#fff}.gn20-timeline__list{max-width:1050px;margin:34px auto 0;border-top:1px solid #d9dade}.gn20-timeline__list article{display:grid;grid-template-columns:180px minmax(0,1fr);gap:34px;padding:28px 0;border-bottom:1px solid #d9dade}.gn20-timeline time{color:#dd2f7f;font:900 13px/1.4 var(--gn-mono,Consolas,monospace);letter-spacing:.12em}.gn20-timeline h3{margin:0;font-size:27px;letter-spacing:-.03em}.gn20-timeline p{margin:9px 0 0;color:#60656d;line-height:1.65}.gn20-trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.gn20-trust-grid article{min-height:210px}.gn20-trust-grid article a{margin-top:auto;padding-top:20px;color:#111318;font-weight:750}.gn20-about-links{padding:clamp(64px,7vw,100px) 0;background:#ededeb}.gn20-about-links__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.gn20-about-links__grid>a{min-height:230px;background:#fff}.gn20-contact-context{display:grid;gap:5px;padding:15px 17px;background:#111318;color:#fff;border-left:3px solid #ff4897}.gn20-contact-context small{color:#ff8abd;font:800 9px/1.2 var(--gn-mono,Consolas,monospace);letter-spacing:.13em}.gn20-contact-context strong{font-size:17px}.gn20-contact-context span{color:rgba(255,255,255,.62);font-size:12px;line-height:1.5}@media(max-width:1100px){.gn20-services-intro__grid,.gn20-about-manifesto__grid,.gn20-service-channels__grid{grid-template-columns:1fr}.gn20-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gn20-process-line{grid-template-columns:repeat(3,minmax(0,1fr))}.gn20-process-line article{border-bottom:1px solid rgba(255,255,255,.12)}.gn20-about-method__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gn20-trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.gn20-service-grid,.gn20-service-channels__cards,.gn20-about-facts,.gn20-about-method__grid,.gn20-trust-grid,.gn20-about-links__grid,.gn20-corporate-gallery__grid{grid-template-columns:1fr}.gn20-process-line{grid-template-columns:1fr;border-top:0}.gn20-process-line article{padding:22px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.gn20-timeline__list article{grid-template-columns:1fr;gap:8px}.gn20-service-grid>a,.gn20-about-method__grid article{min-height:220px}.gn20-corporate-gallery figure{aspect-ratio:4/3}.gn20-services-intro h2,.gn20-about-manifesto h2{font-size:clamp(38px,12vw,58px)}}@media(prefers-reduced-motion:reduce){.gn20-service-grid>a,.gn20-about-links__grid>a,.gn20-corporate-gallery img{transition:none!important}.gn20-service-grid>a:hover,.gn20-about-links__grid>a:hover,.gn20-corporate-gallery figure:hover img{transform:none!important}}
/* CP21 — Catalog / Brand / Product UX */
.geba-next.gn-v4 :where(.gn21-catalog-discovery,.gn21-brand-world,.gn21-decision-path,.gn21-product-content,.gn21-related,.gn21-pdp-support){content-visibility:auto;contain-intrinsic-size:1px 760px}
.geba-next.gn-v4 .gn21-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.58fr);gap:clamp(28px,6vw,86px);align-items:end;margin-bottom:34px}
.geba-next.gn-v4 .gn21-section-head h2{margin:10px 0 0;font-size:clamp(38px,5vw,72px);line-height:.96;letter-spacing:-.052em}
.geba-next.gn-v4 .gn21-section-head>p{color:#61656c;line-height:1.7}
.geba-next.gn-v4 .gn21-catalog-discovery{padding:clamp(72px,8vw,126px) 0;background:#f5f5f3;color:#111318}
.geba-next.gn-v4 .gn21-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.geba-next.gn-v4 .gn21-category-card{display:grid;grid-template-rows:minmax(280px,1fr) auto;min-width:0;background:#0c0f14;border:1px solid #dedfdf;overflow:hidden}
.geba-next.gn-v4 .gn21-category-card__main{position:relative;display:flex;min-height:330px;overflow:hidden;color:#fff;text-decoration:none}
.geba-next.gn-v4 .gn21-category-card__main img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.04);transition:transform .55s ease,filter .35s ease}
.geba-next.gn-v4 .gn21-category-card__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,7,10,.04),rgba(5,7,10,.22) 44%,rgba(5,7,10,.95))}
.geba-next.gn-v4 .gn21-category-card__copy{position:relative;z-index:2;align-self:end;display:grid;width:100%;gap:8px;padding:24px}
.geba-next.gn-v4 .gn21-category-card__copy small{color:#ff73ad;font:800 9px/1.2 var(--gn-mono);letter-spacing:.14em}
.geba-next.gn-v4 .gn21-category-card__copy strong{font-size:clamp(23px,2vw,31px);line-height:1.02;letter-spacing:-.035em}
.geba-next.gn-v4 .gn21-category-card__copy em{margin-top:8px;color:rgba(255,255,255,.68);font-size:12px;font-style:normal}
.geba-next.gn-v4 .gn21-category-card__main:hover img,.geba-next.gn-v4 .gn21-category-card__main:focus-visible img{transform:scale(1.035);filter:saturate(.98) contrast(1.03)}
.geba-next.gn-v4 .gn21-category-card__shop{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 18px;color:#111318;background:#fff;text-decoration:none;border-top:1px solid #e0e0df}
.geba-next.gn-v4 .gn21-category-card__shop span{color:#6a6e74;font-size:11px}.geba-next.gn-v4 .gn21-category-card__shop b{font-size:12px}.geba-next.gn-v4 .gn21-category-card__shop:hover,.geba-next.gn-v4 .gn21-category-card__shop:focus-visible{background:#ffebf3}
.geba-next.gn-v4 .gn21-brand-shelf{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:20px;align-items:center;margin-top:22px;padding:20px 22px;background:#fff;border:1px solid #dedfdf}
.geba-next.gn-v4 .gn21-brand-shelf>div:first-child small{display:block;color:var(--gn4-pink);font:800 9px/1.2 var(--gn-mono);letter-spacing:.13em}.geba-next.gn-v4 .gn21-brand-shelf>div:first-child strong{display:block;margin-top:7px;font-size:15px}
.geba-next.gn-v4 .gn21-brand-shelf>div:nth-child(2){display:flex;gap:7px;overflow:auto;scrollbar-width:thin;padding:2px}
.geba-next.gn-v4 .gn21-brand-shelf>div:nth-child(2)>a{display:grid;flex:0 0 122px;height:64px;place-items:center;padding:10px;color:#111318;background:#f7f7f6;border:1px solid #e8e8e6;text-align:center;text-decoration:none}
.geba-next.gn-v4 .gn21-brand-shelf img{max-width:94px;max-height:34px;object-fit:contain}.geba-next.gn-v4 .gn21-brand-shelf span{font-size:10px;font-weight:850;letter-spacing:.025em}.geba-next.gn-v4 .gn21-brand-shelf__all{font-size:12px;font-weight:800;white-space:nowrap}
.geba-next.gn-v4 .gn21-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.geba-next.gn-v4 .gn21-product-card{display:flex;min-width:0;flex-direction:column;background:#fff;color:#111318;border:1px solid #e2e3e3;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.geba-next.gn-v4 .gn21-product-card:hover{transform:translateY(-3px);border-color:#c9cacf;box-shadow:0 20px 45px rgba(17,19,24,.08)}
.geba-next.gn-v4 .gn21-product-card__media{position:relative;display:grid;aspect-ratio:1/1;place-items:center;overflow:hidden;background:#f2f2f0;text-decoration:none}
.geba-next.gn-v4 .gn21-product-card__media img{width:100%;height:100%;object-fit:contain;padding:20px;transition:transform .35s ease}.geba-next.gn-v4 .gn21-product-card__media:hover img{transform:scale(1.025)}
.geba-next.gn-v4 .gn21-product-card__media i{font:900 36px/1 var(--gn-font);letter-spacing:-.05em}.geba-next.gn-v4 .gn21-product-card__media>span{position:absolute;right:12px;bottom:12px;padding:8px 10px;color:#fff;background:#111318;font-size:10px;font-weight:800}
.geba-next.gn-v4 .gn21-product-card__body{display:flex;flex:1;flex-direction:column;padding:19px 18px 17px}.geba-next.gn-v4 .gn21-product-card__meta{display:flex;flex-wrap:wrap;gap:6px 10px;min-height:16px}.geba-next.gn-v4 .gn21-product-card__meta :where(a,span){color:#d72a78;font:800 9px/1.25 var(--gn-mono);letter-spacing:.11em;text-transform:uppercase}.geba-next.gn-v4 .gn21-product-card__meta :where(a,span)+:where(a,span):before{content:"/";margin-right:10px;color:#a5a7ab}.geba-next.gn-v4 .gn21-product-card__title{display:block;margin-top:13px;color:#111318;font-size:20px;font-weight:850;line-height:1.08;letter-spacing:-.025em;text-decoration:none}.geba-next.gn-v4 .gn21-product-card__body p{margin:11px 0 18px;color:#686d74;font-size:12px;line-height:1.6}.geba-next.gn-v4 .gn21-product-card__actions{display:grid;grid-template-columns:1fr 1fr;margin-top:auto;border-top:1px solid #e8e8e7}.geba-next.gn-v4 .gn21-product-card__actions a{padding:13px 2px 0;color:#111318;font-size:10px;font-weight:800;text-decoration:none}.geba-next.gn-v4 .gn21-product-card__actions a:last-child{text-align:right;color:#d72a78}
.geba-next.gn-v4 .gn21-directory-brand-logo{max-width:150px;max-height:54px;object-fit:contain;margin:18px 0 8px}
.geba-next.gn-v4 .gn21-brand-world{padding:clamp(78px,9vw,138px) 0;background:#f4f4f2;color:#111318}
.geba-next.gn-v4 .gn21-brand-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.geba-next.gn-v4 .gn21-brand-card{display:grid;background:#fff;border:1px solid #dfe0df;min-width:0}
.geba-next.gn-v4 .gn21-brand-card__main{display:flex;min-height:360px;padding:26px;flex-direction:column;color:#111318;text-decoration:none}.geba-next.gn-v4 .gn21-brand-card__mark{display:grid;width:100%;min-height:84px;place-items:center;padding:14px;background:#f6f6f4;border:1px solid #e8e8e6}.geba-next.gn-v4 .gn21-brand-card__mark img{max-width:190px;max-height:56px;object-fit:contain}.geba-next.gn-v4 .gn21-brand-card__mark strong{font-size:clamp(19px,2vw,29px);letter-spacing:-.035em;text-align:center}.geba-next.gn-v4 .gn21-brand-card__main>small{margin-top:22px;color:#d72a78;font:800 9px/1.2 var(--gn-mono);letter-spacing:.12em}.geba-next.gn-v4 .gn21-brand-card h3{margin:12px 0 8px;font-size:31px;line-height:1;letter-spacing:-.04em}.geba-next.gn-v4 .gn21-brand-card p{color:#646970;font-size:13px;line-height:1.65}.geba-next.gn-v4 .gn21-brand-card em{margin-top:18px;color:#8a8e94;font-size:10px;font-style:normal}.geba-next.gn-v4 .gn21-brand-card__main>span:last-child{margin-top:auto;padding-top:24px;font-size:12px;font-weight:850}.geba-next.gn-v4 .gn21-brand-card__shop{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;color:#fff;background:#111318;text-decoration:none}.geba-next.gn-v4 .gn21-brand-card__shop b{font-size:11px}.geba-next.gn-v4 .gn21-brand-card__shop span{color:rgba(255,255,255,.65);font-size:10px}.geba-next.gn-v4 .gn21-brand-card__main:hover,.geba-next.gn-v4 .gn21-brand-card__main:focus-visible{background:#fff8fb}.geba-next.gn-v4 .gn21-brand-policy{display:grid;grid-template-columns:220px 1fr;gap:28px;margin-top:20px;padding:24px;border-left:3px solid var(--gn4-pink);background:#111318;color:#fff}.geba-next.gn-v4 .gn21-brand-policy strong{font:800 10px/1.4 var(--gn-mono);letter-spacing:.12em;color:#ff80b6}.geba-next.gn-v4 .gn21-brand-policy p{color:rgba(255,255,255,.66);font-size:13px;line-height:1.65}
.geba-next.gn-v4 .gn21-authority-brandmark{display:inline-grid;min-width:240px;min-height:92px;place-items:center;margin-bottom:26px;padding:14px 20px;background:#fff;border:1px solid #e1e1df}.geba-next.gn-v4 .gn21-authority-brandmark img{max-width:190px;max-height:54px;object-fit:contain}.geba-next.gn-v4 .gn21-authority-brandmark strong{font-size:25px;color:#111318;letter-spacing:-.035em}.geba-next.gn-v4 .gn21-authority-brandmark span{margin-top:7px;color:#8a8d92;font:800 8px/1.2 var(--gn-mono);letter-spacing:.12em}
.geba-next.gn-v4 .gn21-pdp-hero{padding:132px 0 clamp(70px,8vw,112px);background:#0a0c11;color:#fff}
.geba-next.gn-v4 .gn21-pdp-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);gap:clamp(38px,6vw,88px);align-items:start;margin-top:32px}
.geba-next.gn-v4 .gn21-pdp-gallery{position:sticky;top:96px;min-width:0}.geba-next.gn-v4 .gn21-pdp-gallery__main{display:grid;aspect-ratio:1/1;place-items:center;overflow:hidden;background:#f3f3f1}.geba-next.gn-v4 .gn21-pdp-gallery__main img{width:100%;height:100%;object-fit:contain;padding:clamp(16px,3vw,42px);transition:opacity .16s ease}.geba-next.gn-v4 .gn21-pdp-gallery.is-switching .gn21-pdp-gallery__main img{opacity:.45}.geba-next.gn-v4 .gn21-pdp-gallery__thumbs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin-top:8px}.geba-next.gn-v4 .gn21-pdp-gallery__thumbs button{padding:0;aspect-ratio:1;background:#1a1d23;border:1px solid rgba(255,255,255,.12);cursor:pointer;overflow:hidden}.geba-next.gn-v4 .gn21-pdp-gallery__thumbs button.is-active{border-color:#ff4897}.geba-next.gn-v4 .gn21-pdp-gallery__thumbs img{width:100%;height:100%;object-fit:cover}
.geba-next.gn-v4 .gn21-pdp-info{padding-top:6px}.geba-next.gn-v4 .gn21-pdp-brand{margin-bottom:30px}.geba-next.gn-v4 .gn21-pdp-brand>a,.geba-next.gn-v4 .gn21-pdp-brand>span{display:inline-flex;align-items:center;gap:18px;min-height:54px;padding:9px 13px;background:#fff;color:#111318;text-decoration:none}.geba-next.gn-v4 .gn21-pdp-brand img{max-width:130px;max-height:32px;object-fit:contain}.geba-next.gn-v4 .gn21-pdp-brand span{font-weight:900}.geba-next.gn-v4 .gn21-pdp-brand em{padding-left:16px;border-left:1px solid #dedede;color:#6b7076;font-size:9px;font-style:normal;font-weight:800}.geba-next.gn-v4 .gn21-pdp-info h1{margin:16px 0 0;max-width:780px;font-size:clamp(42px,5.8vw,82px);line-height:.92;letter-spacing:-.058em}.geba-next.gn-v4 .gn21-pdp-lede{max-width:700px;margin:25px 0 0;color:rgba(255,255,255,.68);font-size:clamp(16px,1.3vw,19px);line-height:1.7}.geba-next.gn-v4 .gn21-pdp-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:30px;border-top:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13)}.geba-next.gn-v4 .gn21-pdp-meta span{padding:17px 14px 17px 0}.geba-next.gn-v4 .gn21-pdp-meta span+span{padding-left:14px;border-left:1px solid rgba(255,255,255,.13)}.geba-next.gn-v4 .gn21-pdp-meta small{display:block;color:#ff78b1;font:800 8px/1.2 var(--gn-mono);letter-spacing:.12em}.geba-next.gn-v4 .gn21-pdp-meta strong{display:block;margin-top:6px;font-size:12px}.geba-next.gn-v4 .gn21-pdp-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.geba-next.gn-v4 .gn21-pdp-commerce-note{margin-top:12px;color:rgba(255,255,255,.48);font-size:10px;line-height:1.55}
.geba-next.gn-v4 .gn21-decision-path{padding:clamp(72px,8vw,120px) 0;background:#f4f4f2;color:#111318}.geba-next.gn-v4 .gn21-decision-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.geba-next.gn-v4 .gn21-decision-grid>a{display:flex;min-height:230px;padding:26px;flex-direction:column;color:#fff;background:#111318;text-decoration:none;border-top:3px solid var(--gn4-pink);transition:transform .22s ease,background .22s ease}.geba-next.gn-v4 .gn21-decision-grid>a:hover,.geba-next.gn-v4 .gn21-decision-grid>a:focus-visible{transform:translateY(-3px);background:#181b22}.geba-next.gn-v4 .gn21-decision-grid small{color:#ff82b8;font:800 9px/1.2 var(--gn-mono);letter-spacing:.12em}.geba-next.gn-v4 .gn21-decision-grid strong{margin-top:24px;font-size:clamp(22px,2.3vw,32px);line-height:1.06;letter-spacing:-.035em}.geba-next.gn-v4 .gn21-decision-grid span{margin-top:auto;padding-top:25px;color:rgba(255,255,255,.62);font-size:11px}
.geba-next.gn-v4 .gn21-product-content{padding:clamp(74px,8vw,124px) 0;background:#fff;color:#111318}.geba-next.gn-v4 .gn21-product-content__grid{display:grid;grid-template-columns:minmax(270px,.55fr) minmax(0,1.45fr);gap:clamp(40px,8vw,120px);align-items:start}.geba-next.gn-v4 .gn21-product-content__head{position:sticky;top:100px}.geba-next.gn-v4 .gn21-product-content__head h2{margin:11px 0 18px;font-size:clamp(36px,4vw,58px);letter-spacing:-.045em}.geba-next.gn-v4 .gn21-product-content__head>p:last-child{color:#71757b;font-size:13px;line-height:1.7}.geba-next.gn-v4 .gn21-product-content__body{font-size:16px;line-height:1.78;color:#3f444b}.geba-next.gn-v4 .gn21-product-content__body :where(h2,h3,h4){color:#111318;letter-spacing:-.03em}.geba-next.gn-v4 .gn21-product-content__body h2{font-size:34px}.geba-next.gn-v4 .gn21-product-content__body h3{font-size:25px}.geba-next.gn-v4 .gn21-product-content__body :where(p,ul,ol,table){margin:0 0 20px}.geba-next.gn-v4 .gn21-product-content__body :where(img,table){max-width:100%;height:auto}.geba-next.gn-v4 .gn21-product-content__body table{width:100%;border-collapse:collapse}.geba-next.gn-v4 .gn21-product-content__body :where(td,th){padding:11px;border-bottom:1px solid #e3e4e3;text-align:left}
.geba-next.gn-v4 .gn21-pdp-support{padding:clamp(65px,7vw,105px) 0;background:#111318;color:#fff}.geba-next.gn-v4 .gn21-pdp-support__grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:end}.geba-next.gn-v4 .gn21-pdp-support h2{max-width:820px;margin:11px 0 16px;font-size:clamp(36px,4.5vw,64px);line-height:.98;letter-spacing:-.05em}.geba-next.gn-v4 .gn21-pdp-support p{max-width:720px;color:rgba(255,255,255,.63);line-height:1.7}.geba-next.gn-v4 .gn21-pdp-support__grid>div:last-child{display:grid;gap:9px;min-width:230px}.geba-next.gn-v4 .gn21-related{padding:clamp(72px,8vw,122px) 0;background:#efefed;color:#111318}
@media(max-width:1180px){.geba-next.gn-v4 .gn21-category-grid,.geba-next.gn-v4 .gn21-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.geba-next.gn-v4 .gn21-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.geba-next.gn-v4 .gn21-brand-shelf{grid-template-columns:150px minmax(0,1fr)}.geba-next.gn-v4 .gn21-brand-shelf__all{grid-column:1/-1;justify-self:end}.geba-next.gn-v4 .gn21-pdp-grid{grid-template-columns:minmax(0,1fr) minmax(340px,.8fr)}}
@media(max-width:900px){.geba-next.gn-v4 .gn21-section-head,.geba-next.gn-v4 .gn21-product-content__grid,.geba-next.gn-v4 .gn21-pdp-support__grid{grid-template-columns:1fr}.geba-next.gn-v4 .gn21-category-grid,.geba-next.gn-v4 .gn21-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.geba-next.gn-v4 .gn21-pdp-grid{grid-template-columns:1fr}.geba-next.gn-v4 .gn21-pdp-gallery,.geba-next.gn-v4 .gn21-product-content__head{position:static}.geba-next.gn-v4 .gn21-pdp-info h1{font-size:clamp(44px,9vw,72px)}.geba-next.gn-v4 .gn21-decision-grid{grid-template-columns:1fr}.geba-next.gn-v4 .gn21-decision-grid>a{min-height:180px}.geba-next.gn-v4 .gn21-pdp-support__grid>div:last-child{display:flex;flex-wrap:wrap}.geba-next.gn-v4 .gn21-brand-policy{grid-template-columns:1fr}.geba-next.gn-v4 .gn21-pdp-gallery__thumbs{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:620px){.geba-next.gn-v4 .gn21-catalog-discovery,.geba-next.gn-v4 .gn21-brand-world,.geba-next.gn-v4 .gn21-decision-path,.geba-next.gn-v4 .gn21-product-content,.geba-next.gn-v4 .gn21-related{padding-top:72px;padding-bottom:72px}.geba-next.gn-v4 .gn21-category-grid,.geba-next.gn-v4 .gn21-product-grid,.geba-next.gn-v4 .gn21-brand-grid{grid-template-columns:1fr}.geba-next.gn-v4 .gn21-category-card__main{min-height:300px}.geba-next.gn-v4 .gn21-brand-shelf{grid-template-columns:1fr;padding:17px}.geba-next.gn-v4 .gn21-brand-shelf__all{grid-column:auto;justify-self:start}.geba-next.gn-v4 .gn21-brand-card__main{min-height:315px}.geba-next.gn-v4 .gn21-pdp-hero{padding-top:118px}.geba-next.gn-v4 .gn21-pdp-meta{grid-template-columns:1fr}.geba-next.gn-v4 .gn21-pdp-meta span+span{padding-left:0;border-left:0;border-top:1px solid rgba(255,255,255,.12)}.geba-next.gn-v4 .gn21-pdp-actions{display:grid;grid-template-columns:1fr}.geba-next.gn-v4 .gn21-pdp-actions .gn-button{justify-content:center}.geba-next.gn-v4 .gn21-pdp-gallery__thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}.geba-next.gn-v4 .gn21-product-card__actions{grid-template-columns:1fr}.geba-next.gn-v4 .gn21-product-card__actions a:last-child{text-align:left}.geba-next.gn-v4 .gn21-pdp-brand>a{max-width:100%;flex-wrap:wrap}.geba-next.gn-v4 .gn21-pdp-brand em{width:100%;padding:7px 0 0;border-left:0;border-top:1px solid #e1e1df}.geba-next.gn-v4 .gn21-section-head h2{font-size:clamp(38px,11vw,54px)}}
@media(prefers-reduced-motion:reduce){.geba-next.gn-v4 .gn21-category-card__main img,.geba-next.gn-v4 .gn21-product-card,.geba-next.gn-v4 .gn21-product-card__media img,.geba-next.gn-v4 .gn21-decision-grid>a{transition:none!important}.geba-next.gn-v4 .gn21-category-card__main:hover img,.geba-next.gn-v4 .gn21-product-card:hover,.geba-next.gn-v4 .gn21-product-card__media:hover img,.geba-next.gn-v4 .gn21-decision-grid>a:hover{transform:none!important}}
/* CP22 — Documents + Technical Content Experience */
.geba-next.gn-v4 .gn22-resource-centre,.geba-next.gn-v4 .gn22-resource-paths,.geba-next.gn-v4 .gn22-linked-resources,.geba-next.gn-v4 .gn22-product-resources{padding:clamp(72px,8vw,124px) 0;background:#0b0e12;color:#f6f7f8}
.geba-next.gn-v4 .gn22-resource-paths,.geba-next.gn-v4 .gn22-product-resources{background:#10141a}.geba-next.gn-v4 .gn22-linked-resources{background:#0f1318}
.geba-next.gn-v4 .gn22-resource-centre__head{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(230px,.5fr);gap:40px;align-items:end;margin-bottom:34px}.geba-next.gn-v4 .gn22-resource-centre__head h2{font-size:clamp(38px,5vw,72px);line-height:.95;letter-spacing:-.05em;margin:8px 0 16px}.geba-next.gn-v4 .gn22-resource-centre__head p{max-width:820px;color:rgba(255,255,255,.66);font-size:clamp(16px,1.4vw,20px);line-height:1.68}.geba-next.gn-v4 .gn22-resource-centre__stats{display:grid;gap:14px;justify-items:start}.geba-next.gn-v4 .gn22-resource-centre__stats>span{display:flex;align-items:end;gap:10px}.geba-next.gn-v4 .gn22-resource-centre__stats strong{font-size:48px;line-height:.85;color:#ff4f91}.geba-next.gn-v4 .gn22-resource-centre__stats small{color:rgba(255,255,255,.55);padding-bottom:3px}
.geba-next.gn-v4 .gn22-resource-controls{display:grid;grid-template-columns:minmax(260px,1.4fr) repeat(2,minmax(170px,.6fr)) auto;gap:10px;align-items:end;padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:rgba(255,255,255,.035);margin-bottom:12px}.geba-next.gn-v4 .gn22-resource-controls label{display:grid;gap:7px}.geba-next.gn-v4 .gn22-resource-controls label>span{font-size:10px;font-weight:900;letter-spacing:.12em;color:rgba(255,255,255,.55);text-transform:uppercase}.geba-next.gn-v4 .gn22-resource-controls input,.geba-next.gn-v4 .gn22-resource-controls select{width:100%;min-height:46px;border:1px solid rgba(255,255,255,.13);border-radius:10px;background:#11161c;color:#fff;padding:0 13px}.geba-next.gn-v4 .gn22-resource-controls button{min-height:46px;padding:0 15px;border:1px solid rgba(255,255,255,.16);border-radius:10px;background:transparent;color:#fff;font-weight:800;cursor:pointer}.geba-next.gn-v4 .gn22-resource-types{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 28px}.geba-next.gn-v4 .gn22-resource-types button{padding:10px 14px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:transparent;color:rgba(255,255,255,.68);font-weight:800;cursor:pointer}.geba-next.gn-v4 .gn22-resource-types button.is-active{background:#ff4f91;color:#0a0c10;border-color:#ff4f91}
.geba-next.gn-v4 .gn22-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.geba-next.gn-v4 .gn22-resource-card{display:flex;flex-direction:column;min-width:0;padding:24px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(255,255,255,.018));color:#fff}.geba-next.gn-v4 .gn22-resource-card[hidden]{display:none!important}.geba-next.gn-v4 .gn22-resource-card__meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.geba-next.gn-v4 .gn22-resource-card__meta span{font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:#ff73aa}.geba-next.gn-v4 .gn22-resource-card__meta b{font:800 11px/1 Consolas,monospace;color:rgba(255,255,255,.48)}.geba-next.gn-v4 .gn22-resource-card h3{font-size:clamp(21px,2vw,29px);line-height:1.08;letter-spacing:-.035em;margin:20px 0 10px}.geba-next.gn-v4 .gn22-resource-card>p{color:rgba(255,255,255,.62);line-height:1.6;margin:0 0 18px}.geba-next.gn-v4 .gn22-resource-card dl{display:grid;gap:7px;margin:auto 0 18px;padding-top:8px}.geba-next.gn-v4 .gn22-resource-card dl>div{display:grid;grid-template-columns:82px 1fr;gap:10px;padding-top:7px;border-top:1px solid rgba(255,255,255,.07)}.geba-next.gn-v4 .gn22-resource-card dt{font-size:10px;font-weight:900;color:rgba(255,255,255,.42);text-transform:uppercase}.geba-next.gn-v4 .gn22-resource-card dd{margin:0;font-size:12px;color:rgba(255,255,255,.72)}.geba-next.gn-v4 .gn22-resource-card>a,.geba-next.gn-v4 .gn22-resource-card__links a{color:#fff;text-decoration:none;font-weight:800}.geba-next.gn-v4 .gn22-resource-card__links{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:auto}.geba-next.gn-v4 .gn22-resource-card__links .gn22-resource-open{color:#ff73aa}.geba-next.gn-v4 .gn22-resource-empty{padding:34px;border:1px dashed rgba(255,255,255,.2);border-radius:20px;background:rgba(255,255,255,.025);text-align:center}.geba-next.gn-v4 .gn22-resource-empty span{display:block;color:#ff4f91;font:900 11px/1.2 Consolas,monospace;letter-spacing:.14em;margin-bottom:12px}.geba-next.gn-v4 .gn22-resource-empty strong{display:block;font-size:clamp(23px,3vw,36px);letter-spacing:-.035em}.geba-next.gn-v4 .gn22-resource-empty p{max-width:760px;margin:12px auto 20px;color:rgba(255,255,255,.62);line-height:1.65}
.geba-next.gn-v4 .gn22-resource-paths__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.geba-next.gn-v4 .gn22-resource-paths__grid>a{display:grid;gap:9px;min-height:170px;padding:22px;border:1px solid rgba(255,255,255,.1);border-radius:16px;color:#fff;text-decoration:none;background:rgba(255,255,255,.03)}.geba-next.gn-v4 .gn22-resource-paths__grid small{color:#ff4f91;font-weight:900}.geba-next.gn-v4 .gn22-resource-paths__grid strong{font-size:20px}.geba-next.gn-v4 .gn22-resource-paths__grid span{margin-top:auto;color:rgba(255,255,255,.6)}
.geba-next.gn-v4 .gn22-knowledge-tools{background:#0d1116;color:#fff;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}.geba-next.gn-v4 .gn22-knowledge-tools__inner{display:grid;grid-template-columns:repeat(2,max-content) 1fr;gap:28px;align-items:center;padding-top:18px;padding-bottom:18px}.geba-next.gn-v4 .gn22-knowledge-tools__inner>div{display:grid;gap:4px}.geba-next.gn-v4 .gn22-knowledge-tools small{font-size:9px;font-weight:900;letter-spacing:.14em;color:rgba(255,255,255,.42)}.geba-next.gn-v4 .gn22-knowledge-tools strong{font-size:13px}.geba-next.gn-v4 .gn22-knowledge-tools__actions{display:flex!important;gap:8px;justify-self:end}.geba-next.gn-v4 .gn22-knowledge-tools button{padding:9px 13px;border:1px solid rgba(255,255,255,.15);border-radius:999px;background:transparent;color:#fff;font-weight:800;cursor:pointer}
@media(max-width:980px){.geba-next.gn-v4 .gn22-resource-centre__head{grid-template-columns:1fr}.geba-next.gn-v4 .gn22-resource-controls{grid-template-columns:1fr 1fr}.geba-next.gn-v4 .gn22-resource-search{grid-column:1/-1}.geba-next.gn-v4 .gn22-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.geba-next.gn-v4 .gn22-resource-paths__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.geba-next.gn-v4 .gn22-resource-centre,.geba-next.gn-v4 .gn22-resource-paths,.geba-next.gn-v4 .gn22-linked-resources,.geba-next.gn-v4 .gn22-product-resources{padding-top:68px;padding-bottom:68px}.geba-next.gn-v4 .gn22-resource-controls,.geba-next.gn-v4 .gn22-resource-grid,.geba-next.gn-v4 .gn22-resource-paths__grid{grid-template-columns:1fr}.geba-next.gn-v4 .gn22-resource-search{grid-column:auto}.geba-next.gn-v4 .gn22-resource-centre__head h2{font-size:clamp(38px,11vw,54px)}.geba-next.gn-v4 .gn22-knowledge-tools__inner{grid-template-columns:1fr 1fr;gap:16px}.geba-next.gn-v4 .gn22-knowledge-tools__actions{grid-column:1/-1;justify-self:start}}
@media print{.geba-next.gn-v4 .gn-header,.geba-next.gn-v4 .gn-site-footer,.geba-next.gn-v4 .gn22-knowledge-tools__actions,.geba-next.gn-v4 .gn-money-actions,.geba-next.gn-v4 .gn-mobile-dock{display:none!important}.geba-next.gn-v4{background:#fff!important;color:#111!important}.geba-next.gn-v4 .gn-money-intro,.geba-next.gn-v4 .gn-money-sections,.geba-next.gn-v4 .gn-money-note,.geba-next.gn-v4 .gn-money-related{background:#fff!important;color:#111!important}.geba-next.gn-v4 .gn-money-section,.geba-next.gn-v4 .gn-money-note>div{break-inside:avoid;border-color:#ddd!important}.geba-next.gn-v4 *{text-shadow:none!important}}
/* CP23 — Mobile / accessibility / interaction final guard */
.geba-next.gn-v4 { overflow-x: clip; }
.geba-next.gn-v4 :where([id]) { scroll-margin-top: 96px; }
.geba-next.gn-v4 :where(summary, button, [role="button"]) { -webkit-tap-highlight-color: transparent; }
.geba-next.gn-v4 :where(summary, .gn-button, .gn-menu-toggle, .gn-nav__shop, .gn-nav__cta):focus-visible {
outline: 3px solid #ffba20;
outline-offset: 3px;
}
.geba-next.gn-v4 .gn-mega > summary { cursor: pointer; }
.geba-next.gn-v4 .gn-form [aria-invalid="true"] { border-color: #ff6f61 !important; box-shadow: 0 0 0 2px rgba(255,111,97,.18); }
.geba-next.gn-v4 .gn-form__submit [data-gn-form-status] { min-height: 1.6em; }
.geba-next.gn-v4 .gn-product-gallery__thumbs,
.geba-next.gn-v4 .gn21-pdp-gallery__thumbs,
.geba-next.gn-v4 .gn21-brand-shelf > div:nth-child(2) { scroll-snap-type: x proximity; overscroll-behavior-inline: contain; }
.geba-next.gn-v4 .gn-product-gallery__thumbs > *,
.geba-next.gn-v4 .gn21-pdp-gallery__thumbs > *,
.geba-next.gn-v4 .gn21-brand-shelf > div:nth-child(2) > * { scroll-snap-align: start; }
/* CP23 dock: direct B2B actions on inner/mobile pages. */
.geba-next.gn-v4 .gn23-mobile-dock .gn23-mobile-dock__item {
grid-template-columns: 22px minmax(0,auto);
gap: 10px;
min-height: 58px;
}
.geba-next.gn-v4 .gn23-mobile-dock svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.geba-next.gn-v4 .gn23-mobile-dock .gn23-mobile-dock__item > span { display: grid; gap: 3px; }
.geba-next.gn-v4 .gn23-mobile-dock .gn23-mobile-dock__item small { font-size: 7px; letter-spacing: .12em; }
.geba-next.gn-v4 .gn23-mobile-dock .gn23-mobile-dock__item strong { color: inherit; font-size: 11px; line-height: 1; white-space: nowrap; }
.geba-next.gn-v4.gn-menu-open .gn23-mobile-dock,
.geba-next.gn-v4.gn-dialog-open .gn23-mobile-dock { pointer-events: none; opacity: 0; transform: translateY(120%); }
@media (hover: none), (pointer: coarse) {
.geba-next.gn-v4 :where(.gn-catalog-card,.gn21-product-card,.gn18-engineering-card,.gn18-sector-card,.gn20-service-grid>a,.gn20-about-links__grid>a) { transition-duration: .12s; }
.geba-next.gn-v4 :where(.gn-catalog-card,.gn21-product-card,.gn18-engineering-card,.gn18-sector-card,.gn20-service-grid>a,.gn20-about-links__grid>a):hover { transform: none; box-shadow: none; }
.geba-next.gn-v4 .gn-catalog-card__media b { opacity: 1; transform: none; }
.geba-next.gn-v4 .gn18-engineering-card:hover img,
.geba-next.gn-v4 .gn18-sector-card:hover img,
.geba-next.gn-v4 .gn21-category-card__main:hover img { transform: none; }
}
@media (max-width: 820px) {
:root { --gn-mobile-dock-height: 68px; }
.geba-next.gn-v4 .gn-header { height: 72px; }
.geba-next.gn-v4 .gn-header__inner { height: 72px; }
.geba-next.gn-v4 .gn-brandlockup__mark { width: 34px; height: 34px; }
.geba-next.gn-v4 .gn-menu-toggle { width: 48px; height: 48px; min-width: 48px; min-height: 48px; }
.geba-next.gn-v4 .gn-nav {
position: fixed;
z-index: 101;
inset: 72px 0 0;
width: 100%;
height: calc(100dvh - 72px);
max-height: none;
padding: 14px max(18px, env(safe-area-inset-right)) calc(30px + env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));
overflow-y: auto;
overscroll-behavior: contain;
-webkit-overflow-scrolling: touch;
}
.geba-next.gn-v4 .gn-nav .gn-mega > summary {
display: flex;
min-height: 56px;
padding: 8px 0;
align-items: center;
justify-content: space-between;
font-size: clamp(24px, 7vw, 34px);
line-height: 1.05;
}
.geba-next.gn-v4 .gn-nav .gn-mega > summary::after { min-width: 32px; margin-left: 16px; text-align: center; }
.geba-next.gn-v4 .gn-mega__panel {
max-height: none;
padding: 12px 0 22px 14px;
overflow: visible;
background: transparent;
border: 0;
}
.geba-next.gn-v4 .gn-mega__panel > div:not(.gn-mega__aside) > a,
.geba-next.gn-v4 .gn-mega__feature,
.geba-next.gn-v4 .gn-nav__shop,
.geba-next.gn-v4 .gn-nav__cta { min-height: 48px; }
.geba-next.gn-v4 .gn-mega__panel > div:not(.gn-mega__aside) > a { display: flex; padding-block: 10px; align-items: center; }
.geba-next.gn-v4 .gn-mega__aside { padding: 20px; }
.geba-next.gn-v4 .gn-nav__shop,
.geba-next.gn-v4 .gn-nav__cta { display: flex; align-items: center; justify-content: space-between; width: 100%; margin-top: 8px; padding: 0 16px; }
.geba-next.gn-v4.gn-inner-site .gn6-conversion-dock {
right: 0;
bottom: 0;
left: 0;
grid-template-columns: repeat(3,minmax(0,1fr));
min-height: calc(var(--gn-mobile-dock-height) + env(safe-area-inset-bottom));
padding-bottom: env(safe-area-inset-bottom);
border-radius: 0;
transition: transform .22s ease, opacity .18s ease;
}
.geba-next.gn-v4 .gn23-mobile-dock .gn23-mobile-dock__item {
display: grid;
grid-template-columns: 20px auto;
justify-content: center;
min-height: var(--gn-mobile-dock-height);
padding: 0 8px;
border-right: 1px solid rgba(255,255,255,.1);
}
.geba-next.gn-v4 .gn23-mobile-dock .gn23-mobile-dock__item:last-child { border-right: 0; }
.geba-next.gn-v4 .gn23-mobile-dock .gn23-mobile-dock__item > span { text-align: left; }
.geba-next.gn-v4 .gn23-mobile-dock .gn23-mobile-dock__item strong { font-size: 11px; }
.geba-next.gn-v4.gn-inner-site .gn-footer { padding-bottom: calc(var(--gn-mobile-dock-height) + 22px + env(safe-area-inset-bottom)); }
html.gn-has-mobile-dock .gn-consent { bottom: calc(var(--gn-mobile-dock-height) + 10px + env(safe-area-inset-bottom)); }
.geba-next.gn-v4 .gn-dialog {
width: 100vw;
max-width: none;
height: 100dvh;
max-height: 100dvh;
margin: 0;
border: 0;
border-radius: 0;
overscroll-behavior: contain;
}
.geba-next.gn-v4 .gn-dialog[open] { overflow-y: auto; }
.geba-next.gn-v4 .gn-dialog__close { position: sticky; z-index: 4; top: 10px; float: right; width: 48px; height: 48px; min-width: 48px; min-height: 48px; margin: 10px 10px -58px 0; }
.geba-next.gn-v4 .gn-dialog__intro { padding: 64px 20px 28px; }
.geba-next.gn-v4 .gn-form { padding: 26px 20px calc(28px + env(safe-area-inset-bottom)); }
.geba-next.gn-v4 .gn-form input:not([type="checkbox"]),
.geba-next.gn-v4 .gn-form select,
.geba-next.gn-v4 .gn-form textarea { min-height: 50px; font-size: 16px; }
.geba-next.gn-v4 .gn-form textarea { min-height: 120px; }
.geba-next.gn-v4 .gn-form__check { min-height: 44px; }
.geba-next.gn-v4 .gn-form__check input { width: 22px; height: 22px; }
.geba-next.gn-v4 .gn-form__submit { gap: 10px; }
.geba-next.gn-v4 .gn-form__submit .gn-button { min-height: 50px; }
.geba-next.gn-v4 .gn21-pdp-gallery__thumbs { display: flex; gap: 8px; overflow-x: auto; }
.geba-next.gn-v4 .gn21-pdp-gallery__thumbs > * { flex: 0 0 76px; }
.geba-next.gn-v4 .gn22-resource-controls :where(input,select,button) { min-height: 48px; }
}
@media (max-width: 430px) {
.geba-next.gn-v4 .gn-shell { width: calc(100% - 28px); }
.geba-next.gn-v4 :where(.gn-catalog-hero h1,.gn-page-hero h1,.gn21-pdp-info h1) { font-size: clamp(38px, 12vw, 52px); overflow-wrap: anywhere; }
.geba-next.gn-v4 :where(.gn18-manifesto h2,.gn18-section-head h2,.gn18-title-row h2,.gn18-knowledge__intro h2,.gn21-section-head h2,.gn22-resource-centre__head h2) { font-size: clamp(34px, 10.5vw, 46px); }
.geba-next.gn-v4 .gn-brandlockup__wordmark > small { display: none; }
.geba-next.gn-v4 .gn-brandlockup__wordmark > img { max-width: 116px; height: auto; }
.geba-next.gn-v4 .gn18-proof-rail,
.geba-next.gn-v4 .gn18-sector-grid,
.geba-next.gn-v4 .gn18-brand-wall { grid-template-columns: 1fr; }
.geba-next.gn-v4 .gn21-category-card__main,
.geba-next.gn-v4 .gn21-brand-card__main { min-height: 270px; }
.geba-next.gn-v4 .gn-pagination a,
.geba-next.gn-v4 .gn-pagination span { min-width: 44px; min-height: 44px; height: 44px; }
.geba-next.gn-v4 .gn23-mobile-dock .gn23-mobile-dock__item { gap: 7px; padding-inline: 5px; }
.geba-next.gn-v4 .gn23-mobile-dock svg { width: 18px; height: 18px; }
}
@media (max-width: 390px) {
.geba-next.gn-v4 .gn-brandlockup__wordmark > img { max-width: 110px; }
.geba-next.gn-v4 .gn23-mobile-dock .gn23-mobile-dock__item { padding-inline: 4px; }
.geba-next.gn-v4 .gn23-mobile-dock .gn23-mobile-dock__item strong { font-size: 10.5px; }
}
@media (max-width: 360px) {
.geba-next.gn-v4 .gn-shell { width: calc(100% - 22px); }
.geba-next.gn-v4 .gn-brandlockup__mark { width: 31px; height: 31px; }
.geba-next.gn-v4 .gn-brandlockup__wordmark > img { max-width: 104px; }
.geba-next.gn-v4 .gn23-mobile-dock .gn23-mobile-dock__item { grid-template-columns: 18px auto; gap: 5px; }
.geba-next.gn-v4 .gn23-mobile-dock .gn23-mobile-dock__item small { display: none; }
.geba-next.gn-v4 .gn23-mobile-dock .gn23-mobile-dock__item strong { font-size: 10px; }
.geba-next.gn-v4 .gn-dialog__intro h2 { font-size: 32px; }
}
@media (max-width: 320px) {
.geba-next.gn-v4 .gn-shell { width: calc(100% - 18px); }
.geba-next.gn-v4 .gn-brandlockup__mark { display: none; }
.geba-next.gn-v4 .gn23-mobile-dock .gn23-mobile-dock__item { grid-template-columns: 1fr; place-items: center; gap: 2px; }
.geba-next.gn-v4 .gn23-mobile-dock .gn23-mobile-dock__item > span { text-align: center; }
.geba-next.gn-v4 .gn23-mobile-dock svg { width: 17px; height: 17px; }
}
@media (prefers-reduced-motion: reduce) {
.geba-next.gn-v4 *,
.geba-next.gn-v4 *::before,
.geba-next.gn-v4 *::after { scroll-behavior: auto !important; }
.geba-next.gn-v4 .gn23-mobile-dock,
.geba-next.gn-v4 .gn-nav,
.geba-next.gn-v4 .gn-mega__panel { transition-duration: .001ms !important; }
}
/* CP24 — final cross-site polish */
.geba-next.gn-v4{overflow-x:clip}.geba-next.gn-v4 :where(h1,h2,h3,strong,a,p){text-wrap:pretty}.geba-next.gn-v4 :where(h1,h2,h3){overflow-wrap:break-word}.geba-next.gn-v4 :where(.gn-button,.gn-nav__cta,.gn-nav__shop,.gn23-mobile-dock__item){touch-action:manipulation}.geba-next.gn-v4 :where(.gn21-product-card,.gn22-resource-card,.gn19-project-card,.gn20-service-grid>a){content-visibility:auto;contain-intrinsic-size:auto 360px}.geba-next.gn-v4 .gn-footer__bottom nav{display:flex;flex-wrap:wrap;gap:10px 16px}.geba-next.gn-v4 .gn-footer__bottom nav a{text-underline-offset:4px}.geba-next.gn-v4 .gn-form :where(input,select,textarea):focus-visible{outline:3px solid rgba(255,72,151,.5);outline-offset:2px}.geba-next.gn-v4 .gn-form button[aria-disabled="true"]{cursor:progress;opacity:.72}.geba-next.gn-v4 .gn22-resource-card a,.geba-next.gn-v4 .gn19-project-card,.geba-next.gn-v4 .gn21-product-card a{overflow-wrap:anywhere}@media(max-width:820px){.geba-next.gn-v4 main{min-width:0}.geba-next.gn-v4 :where(.gn-shell,.gn-page-hero__inner,.gn-catalog-page__inner){min-width:0}.geba-next.gn-v4 .gn-footer__bottom{gap:14px}.geba-next.gn-v4 .gn-footer__bottom nav{justify-content:center}}@media(prefers-reduced-motion:reduce){.geba-next.gn-v4 :where([data-gn-reveal],.gn21-product-card,.gn22-resource-card,.gn19-project-card){transition:none!important;animation:none!important}}
/* CP26 — live-content visual consistency polish */
.geba-next.gn-v4 .gn25-showroom__grid {
grid-template-rows: repeat(2, clamp(280px, 24vw, 460px));
}
.geba-next.gn-v4 .gn25-showroom__grid figure:nth-child(2) img { object-position: 50% 48%; }
.geba-next.gn-v4 .gn25-showroom__grid figure:nth-child(3) img { object-position: 50% 48%; }
.geba-next.gn-v4 .gn25-showroom__grid figure:nth-child(4) img { object-position: 50% 42%; }
.geba-next.gn-v4 .gn26-public-empty {
max-width: 940px;
margin-inline: auto;
text-align: left;
border-color: rgba(18,24,35,.12);
background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(247,248,250,.9));
box-shadow: 0 24px 70px rgba(13,18,28,.08);
}
.geba-next.gn-v4 .gn26-public-empty > span {
color: var(--gn-accent, #ec1c65);
letter-spacing: .15em;
}
.geba-next.gn-v4 .gn26-public-empty strong { max-width: 760px; }
.geba-next.gn-v4 .gn26-public-empty p { max-width: 760px; color: rgba(18,24,35,.68); }
.geba-next.gn-v4 .gn26-empty-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:22px; }
.geba-next.gn-v4 .gn26-project-evidence {
margin-top: clamp(30px,4vw,56px);
padding-top: clamp(28px,3vw,46px);
border-top: 1px solid rgba(18,24,35,.12);
}
.geba-next.gn-v4 .gn26-project-evidence > div:first-child { display:grid; gap:8px; margin-bottom:20px; }
.geba-next.gn-v4 .gn26-project-evidence > div:first-child small { font-size:10px; font-weight:800; letter-spacing:.14em; color:rgba(18,24,35,.52); }
.geba-next.gn-v4 .gn26-project-evidence > div:first-child strong { font-size:clamp(22px,2.8vw,38px); line-height:1.04; letter-spacing:-.035em; }
.geba-next.gn-v4 .gn26-project-evidence__grid { display:grid; grid-template-columns:1.25fr .875fr .875fr; gap:clamp(12px,1.5vw,20px); }
.geba-next.gn-v4 .gn26-project-evidence__grid figure { position:relative; overflow:hidden; margin:0; min-height:280px; border-radius:22px; background:#11151b; }
.geba-next.gn-v4 .gn26-project-evidence__grid img { width:100%; height:100%; object-fit:cover; display:block; }
.geba-next.gn-v4 .gn26-project-evidence__grid figure:first-child img { object-position:center 50%; }
.geba-next.gn-v4 .gn26-project-evidence__grid figcaption { position:absolute; left:14px; right:14px; bottom:14px; padding:10px 12px; border-radius:12px; color:#fff; background:rgba(5,8,12,.68); backdrop-filter:blur(8px); font-size:12px; font-weight:700; }
@media (max-width:920px) {
.geba-next.gn-v4 .gn25-showroom__grid { grid-template-rows:330px 280px 280px; }
.geba-next.gn-v4 .gn26-project-evidence__grid { grid-template-columns:1fr 1fr; }
.geba-next.gn-v4 .gn26-project-evidence__grid figure:first-child { grid-column:1 / -1; aspect-ratio:16 / 9; min-height:0; }
}
@media (max-width:620px) {
.geba-next.gn-v4 .gn25-showroom__grid { grid-template-rows:none; }
.geba-next.gn-v4 .gn26-project-evidence__grid { grid-template-columns:1fr; }
.geba-next.gn-v4 .gn26-project-evidence__grid figure,
.geba-next.gn-v4 .gn26-project-evidence__grid figure:first-child { grid-column:auto; min-height:0; aspect-ratio:4 / 3; }
.geba-next.gn-v4 .gn26-project-evidence__grid figure:nth-child(n+2) { aspect-ratio:4 / 5; }
.geba-next.gn-v4 .gn26-empty-actions .gn-button { width:100%; justify-content:center; }
}
/* UX-1 — Sultanbeyli office / showroom + physical contact */
.geba-next.gn-v4 .gn25-showroom__maps { color: #ff73aa; }
.geba-next.gn-v4 .gn-footer__address strong {
max-width: 270px;
line-height: 1.55;
text-wrap: pretty;
}
@media (max-width: 600px) {
.geba-next.gn-v4 .gn25-showroom__actions { gap: 11px; }
.geba-next.gn-v4 .gn-footer__address strong { max-width: 100%; }
}
/* RESP-1 — site-wide responsive hardening (desktop/tablet/mobile at 100% zoom) */
.geba-next.gn-v4,
.geba-next.gn-v4 main,
.geba-next.gn-v4 .gn-header,
.geba-next.gn-v4 .gn-footer {
max-width: 100%;
}
.geba-next.gn-v4 :where(main, section, article, aside, nav, header, footer, div),
.geba-next.gn-v4 [class*="__grid"] > *,
.geba-next.gn-v4 [class*="__inner"] > * {
min-width: 0;
}
.geba-next.gn-v4 :where(img, video, canvas, iframe, svg) { max-width: 100%; }
.geba-next.gn-v4 :where(iframe, video) { width: 100%; }
.geba-next.gn-v4 :where(pre, table) { max-width: 100%; }
.geba-next.gn-v4 pre { overflow-x: auto; }
.geba-next.gn-v4 table { display: block; overflow-x: auto; }
.geba-next.gn-v4 :where(.gn-footer__contact-link strong,.gn-footer__address strong,.gn-contact-page__details,.gn22-resource-card dd,.gn20-contact-context span) {
overflow-wrap: anywhere;
}
/* Desktop mega panels keep their visual anchoring but are shifted by JS when an
individual trigger would otherwise push them outside the viewport. */
.geba-next.gn-v4 .gn-mega__panel,
.geba-next.gn-v4 .gn-mega--products .gn-mega__panel,
.geba-next.gn-v4 .gn-mega--corporate .gn-mega__panel,
.geba-next.gn-v4 .gn-mega__panel--expertise {
max-width: calc(100vw - 32px);
transform: translateX(var(--gn-mega-shift-x, 0px));
}
.geba-next.gn-v4 .gn-mega__panel > *,
.geba-next.gn-v4 .gn-mega__panel a,
.geba-next.gn-v4 .gn-mega__aside { min-width: 0; }
.geba-next.gn-v4 .gn-mega__panel a { overflow-wrap: anywhere; }
/* Do not allow the premium header's flex children to create a hidden horizontal
overflow at common laptop widths. */
.geba-next.gn-v4 .gn-header__inner { max-width: 100%; }
.geba-next.gn-v4 .gn-nav--premium { min-width: 0; }
/* Cinematic hero: keep copy and verified media inside their assigned columns
before the single-column breakpoint is reached. */
@media (max-width: 1440px) and (min-width: 821px) {
.geba-next.gn-v4 .gn5-poster__grid {
grid-template-columns: minmax(0, 1.04fr) minmax(340px, .66fr);
gap: clamp(22px, 3.5vw, 52px);
}
.geba-next.gn-v4 .gn5-poster__copy h1,
.geba-next.gn-v4 .gn5-poster__copy h2 { font-size: clamp(55px, 6.1vw, 88px); }
.geba-next.gn-v4 .gn5-viewer--360 .gn5-360-frame,
.geba-next.gn-v4 .gn5-viewer--cric .gn5-360-frame,
.geba-next.gn-v4 .gn5-viewer--milan .gn5-360-frame {
width: min(40vw, 560px);
height: min(40vw, 560px);
}
}
/* Large tablet / compact desktop: reduce visual density before the existing
mobile navigation takeover, while retaining full functionality. */
@media (max-width: 1180px) and (min-width: 1025px) {
.geba-next.gn-v4 .gn-header__inner { gap: 14px; }
.geba-next.gn-v4 .gn-nav--premium { gap: 1px; }
.geba-next.gn-v4 .gn-mega__panel,
.geba-next.gn-v4 .gn-mega--products .gn-mega__panel,
.geba-next.gn-v4 .gn-mega__panel--expertise { width: min(900px, calc(100vw - 36px)); }
.geba-next.gn-v4 .gn-mega--corporate .gn-mega__panel { width: min(680px, calc(100vw - 36px)); }
}
@media (max-width: 1024px) {
.geba-next.gn-v4 .gn-mega__panel,
.geba-next.gn-v4 .gn-mega--products .gn-mega__panel,
.geba-next.gn-v4 .gn-mega--corporate .gn-mega__panel,
.geba-next.gn-v4 .gn-mega__panel--expertise {
max-width: 100%;
transform: none;
}
.geba-next.gn-v4 .gn-nav--premium,
.geba-next.gn-v4 .gn-nav--premium > * { min-width: 0; max-width: 100%; }
.geba-next.gn-v4 .gn-footer__top--premium > * { min-width: 0; }
.geba-next.gn-v4 :where(.gn21-pdp-support__grid,.gn22-resource-controls,.gn20-service-channels__grid) > * { min-width: 0; }
}
@media (max-width: 820px) {
.geba-next.gn-v4 .gn-shell {
width: min(calc(100% - 40px), 1440px);
max-width: 100%;
}
.geba-next.gn-v4 .gn-nav { max-width: 100vw; overflow-x: hidden; }
.geba-next.gn-v4 .gn-nav .gn-mega,
.geba-next.gn-v4 .gn-nav .gn-mega__panel { width: 100%; max-width: 100%; }
.geba-next.gn-v4 .gn5-poster__copy,
.geba-next.gn-v4 .gn5-viewer,
.geba-next.gn-v4 .gn5-showcase__tabs,
.geba-next.gn-v4 .gn5-showcase__controls { min-width: 0; max-width: 100%; }
.geba-next.gn-v4 .gn5-viewer__toolbar { max-width: 100%; }
.geba-next.gn-v4 .gn4-title-row > *,
.geba-next.gn-v4 .gn18-title-row > *,
.geba-next.gn-v4 .gn18-section-head > *,
.geba-next.gn-v4 .gn25-showroom__head > * { min-width: 0; }
.geba-next.gn-v4 .gn4-cta__grid > div { min-width: 0; }
.geba-next.gn-v4 .gn21-pdp-support__grid > div:last-child { min-width: 0; width: 100%; }
}
@media (max-width: 560px) {
.geba-next.gn-v4 .gn-shell { width: min(calc(100% - 28px), 1440px); }
.geba-next.gn-v4 .gn5-poster__actions { grid-template-columns: minmax(0, 1fr); }
.geba-next.gn-v4 .gn5-poster__actions .gn-button { min-width: 0; }
.geba-next.gn-v4 .gn5-poster__specs { width: 100%; }
.geba-next.gn-v4 .gn5-poster__specs dd { overflow-wrap: anywhere; }
.geba-next.gn-v4 .gn5-showcase__navigation { width: 100%; max-width: 100%; gap: 8px; }
.geba-next.gn-v4 .gn5-showcase__controls { gap: 4px; padding-left: 4px; }
.geba-next.gn-v4 .gn5-showcase__controls button { width: 42px; height: 42px; }
.geba-next.gn-v4 .gn-footer__lockup,
.geba-next.gn-v4 .gn-footer__lockup > span { width: auto; max-width: 100%; }
.geba-next.gn-v4 .gn-footer__column > a { max-width: 100%; }
}
@media (max-width: 430px) {
.geba-next.gn-v4 .gn-shell { width: calc(100% - 28px); }
.geba-next.gn-v4 .gn5-poster__grid { padding-inline: 0; }
.geba-next.gn-v4 .gn5-poster__specs > div { min-width: 0; }
.geba-next.gn-v4 .gn44-product-rail-tools > p { max-width: none; }
}
@media (max-width: 390px) {
.geba-next.gn-v4 .gn-shell { width: calc(100% - 24px); }
.geba-next.gn-v4 .gn5-poster__copy h1,
.geba-next.gn-v4 .gn5-poster__copy h2 { font-size: clamp(40px, 12.2vw, 50px); }
.geba-next.gn-v4 .gn5-poster__specs dt { font-size: 7px; }
.geba-next.gn-v4 .gn5-poster__specs dd { font-size: 8.5px; }
}
@media (max-width: 360px) {
.geba-next.gn-v4 .gn-shell { width: calc(100% - 22px); }
.geba-next.gn-v4 .gn-nav--premium { padding-inline: 14px; }
.geba-next.gn-v4 .gn-nav .gn-mega > summary { font-size: clamp(25px, 8vw, 31px); }
.geba-next.gn-v4 .gn5-showcase__controls > span { display: none; }
.geba-next.gn-v4 .gn5-showcase__controls button { width: 40px; height: 40px; }
}
@media (max-width: 320px) {
.geba-next.gn-v4 .gn-shell { width: calc(100% - 18px); }
.geba-next.gn-v4 .gn5-poster__actions .gn-button { padding-inline: 10px; font-size: 9.5px; }
.geba-next.gn-v4 .gn5-poster__specs { grid-template-columns: 1fr; gap: 0; }
.geba-next.gn-v4 .gn5-poster__specs > div,
.geba-next.gn-v4 .gn5-poster__specs > div:not(:first-child) { padding: 9px 0; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.1); }
.geba-next.gn-v4 .gn5-poster__specs > div:last-child { border-bottom: 0; }
}
/* CX-1 — commercial clarity */
.geba-next.gn-v4 .gn18-proof-rail::before,
.geba-next.gn-v4 .gn18-proof-rail::after { display:none !important; content:none !important; }
.geba-next.gn-v4 .gn18-proof-rail > a { overflow:hidden; }
.geba-next.gn-v4 .gn19-project-policy { padding: 0 0 96px; }
/* CVR-1 — persistent phone / quote / WhatsApp actions */
.geba-next.gn-v4 .gn6-conversion-dock {
position: fixed;
z-index: 80;
right: max(18px, env(safe-area-inset-right));
bottom: max(18px, env(safe-area-inset-bottom));
display: grid;
grid-template-columns: repeat(3, auto);
overflow: hidden;
color: #fff;
background: rgba(10,12,16,.94);
border: 1px solid rgba(255,255,255,.14);
border-radius: 2px;
box-shadow: 0 22px 70px rgba(4,6,9,.30);
backdrop-filter: blur(20px);
transition: transform .22s ease, opacity .18s ease;
}
.geba-next.gn-v4 .gn23-mobile-dock__brand-icon { display:grid; place-items:center; width:22px; height:22px; }
.geba-next.gn-v4 .gn23-mobile-dock__brand-icon img { display:block; width:22px; height:22px; filter:brightness(0) invert(1); }
.geba-next.gn-v4 .gn23-mobile-dock__whatsapp { background:#128c7e; color:#fff; }
.geba-next.gn-v4 .gn23-mobile-dock__whatsapp small { color:#fff; }
.geba-next.gn-v4 .gn-footer { padding-bottom: 74px; }
html.gn-menu-open .geba-next.gn-v4 .gn6-conversion-dock,
html.gn-dialog-open .geba-next.gn-v4 .gn6-conversion-dock,
.geba-next.gn-v4.is-menu-open .gn6-conversion-dock { opacity:0; pointer-events:none; transform:translateY(calc(100% + 24px)); }
@media (max-width:820px) {
.geba-next.gn-v4 .gn6-conversion-dock {
right:0; bottom:0; left:0;
grid-template-columns:repeat(3,minmax(0,1fr));
min-height:calc(var(--gn-mobile-dock-height) + env(safe-area-inset-bottom));
padding-bottom:env(safe-area-inset-bottom);
border-right:0; border-bottom:0; border-left:0; border-radius:0;
}
.geba-next.gn-v4 .gn-footer { padding-bottom:calc(var(--gn-mobile-dock-height) + 22px + env(safe-area-inset-bottom)); }
html.gn-has-mobile-dock .gn-consent { bottom:calc(var(--gn-mobile-dock-height) + 10px + env(safe-area-inset-bottom)); }
}
@media (max-width:360px) {
.geba-next.gn-v4 .gn23-mobile-dock__brand-icon { width:18px; height:18px; }
.geba-next.gn-v4 .gn23-mobile-dock__brand-icon img { width:18px; height:18px; }
}
/* VIS-1 — hero media control zone: controls never cover the product */
.geba-next.gn-v4 .gn5-viewer { box-sizing:border-box; padding-bottom:96px; }
.geba-next.gn-v4 .gn5-viewer__toolbar {
right:0; bottom:8px; left:0;
min-height:58px;
background:rgba(4,7,10,.92);
backdrop-filter:blur(18px);
}
.geba-next.gn-v4 .gn5-drag-hint { bottom:76px; }
.geba-next.gn-v4 .gn5-360-frame {
top:42%;
max-width:calc(100% - 18px);
max-height:calc(100% - 132px);
}
.geba-next.gn-v4 .gn5-viewer--cric .gn5-360-frame,
.geba-next.gn-v4 .gn5-viewer--milan .gn5-360-frame {
max-width:calc(100% - 18px);
max-height:calc(100% - 132px);
}
.geba-next.gn-v4 .gn5-milan-object {
top:0;
height:calc(100% - 118px);
max-height:calc(100% - 118px);
}
.geba-next.gn-v4 .gn5-viewer--milan.is-field .gn5-milan-object {
top:0;
width:100%;
height:calc(100% - 132px);
max-height:calc(100% - 132px);
object-fit:contain;
}
.geba-next.gn-v4 .gn5-flip-card {
top:0;
height:calc(100% - 125px);
max-height:calc(100% - 125px);
}
.geba-next.gn-v4 .gn5-viewer__rings,
.geba-next.gn-v4 .gn5-viewer__blueprint,
.geba-next.gn-v4 .gn5-wind-orbit,
.geba-next.gn-v4 .gn5-viewer::before,
.geba-next.gn-v4 .gn5-viewer--360::after { top:42%; }
@media (max-width:820px) {
.geba-next.gn-v4 .gn5-viewer { padding-bottom:84px; }
.geba-next.gn-v4 .gn5-viewer__toolbar { bottom:6px; min-height:52px; }
.geba-next.gn-v4 .gn5-drag-hint { bottom:64px; }
.geba-next.gn-v4 .gn5-360-frame,
.geba-next.gn-v4 .gn5-viewer--cric .gn5-360-frame,
.geba-next.gn-v4 .gn5-viewer--milan .gn5-360-frame { top:41%; max-height:calc(100% - 112px); }
.geba-next.gn-v4 .gn5-milan-object,
.geba-next.gn-v4 .gn5-flip-card { height:calc(100% - 108px); max-height:calc(100% - 108px); }
}
@media (max-width:560px) {
.geba-next.gn-v4 .gn5-viewer { padding-bottom:76px; }
.geba-next.gn-v4 .gn5-viewer__toolbar { bottom:4px; min-height:48px; padding:7px 9px; }
.geba-next.gn-v4 .gn5-drag-hint { bottom:58px; }
.geba-next.gn-v4 .gn5-360-frame,
.geba-next.gn-v4 .gn5-viewer--cric .gn5-360-frame,
.geba-next.gn-v4 .gn5-viewer--milan .gn5-360-frame { top:40%; max-height:calc(100% - 100px); }
.geba-next.gn-v4 .gn5-milan-object,
.geba-next.gn-v4 .gn5-flip-card { height:calc(100% - 96px); max-height:calc(100% - 96px); }
}
@media (max-width:820px){html.gn-mobile-input-active .geba-next.gn-v4 .gn6-conversion-dock{opacity:0;pointer-events:none;transform:translateY(calc(100% + 24px));}}
/* CVR-3 — mobile showcase collision guard. The full-width fixed dock yields only while a critical showcase control/media region crosses its reserved viewport strip. */
@media (max-width:820px) {
.geba-next.gn-v4.gn-showcase-dock-collision .gn6-conversion-dock {
opacity:0;
pointer-events:none;
transform:translateY(calc(100% + 24px));
}
}
/* MR31 — Sultanbeyli showroom trust experience */
.geba-next.gn-v4 .gn25-showroom__head { margin-bottom: clamp(24px, 3vw, 40px); }
.geba-next.gn-v4 .gn31-showroom__facts {
position: relative;
z-index: 1;
display: grid;
grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr);
gap: clamp(12px, 1.6vw, 20px);
margin-bottom: clamp(28px, 4vw, 54px);
}
.geba-next.gn-v4 .gn31-showroom__fact {
display: grid;
align-content: center;
gap: 8px;
min-height: 132px;
padding: clamp(20px, 2.4vw, 30px);
border: 1px solid rgba(255,255,255,.14);
border-radius: clamp(16px, 1.6vw, 24px);
background: rgba(255,255,255,.055);
}
.geba-next.gn-v4 .gn31-showroom__fact small {
color: rgba(255,255,255,.52);
font-size: 10px;
font-weight: 800;
letter-spacing: .14em;
}
.geba-next.gn-v4 .gn31-showroom__fact strong {
color: #fff;
font-size: clamp(18px, 1.65vw, 25px);
line-height: 1.15;
letter-spacing: -.025em;
}
.geba-next.gn-v4 .gn31-showroom__fact p,
.geba-next.gn-v4 .gn31-showroom__fact a {
margin: 0;
color: rgba(255,255,255,.72);
font-size: clamp(13px, 1vw, 15px);
line-height: 1.55;
overflow-wrap: anywhere;
}
.geba-next.gn-v4 .gn31-showroom__fact a { width: fit-content; text-decoration: none; }
.geba-next.gn-v4 .gn31-showroom__fact a:hover { color: #fff; }
.geba-next.gn-v4 .gn31-showroom__fact a:focus-visible {
outline: 3px solid rgba(255,115,170,.6);
outline-offset: 4px;
border-radius: 3px;
}
.geba-next.gn-v4 .gn31-showroom__fact--contact { align-content: center; }
@media (max-width: 760px) {
.geba-next.gn-v4 .gn31-showroom__facts { grid-template-columns: 1fr; }
.geba-next.gn-v4 .gn31-showroom__fact { min-height: 0; }
}
/* MR40 — Full Mobile UX + Accessibility Pass 1 */
.geba-next.gn-v4 main[tabindex="-1"]:focus { outline: none; }
.geba-next.gn-v4 .gn5-showcase__tabs button { color: rgba(255,255,255,.55); }
.geba-next.gn-v4 .gn21-pdp-gallery__thumbs button:focus-visible { outline: 3px solid #ffba20; outline-offset: 2px; }
.gn-consent .gn-button { min-height: 44px; }
@media (max-width: 560px) {
.geba-next.gn-v4 .gn5-showcase__controls button { width: 44px; height: 44px; min-width: 44px; min-height: 44px; }
}
@media (max-width: 360px) {
.geba-next.gn-v4 .gn5-showcase__controls button { width: 44px; height: 44px; }
}
.gn61-media-caption{margin:10px 0 0;color:var(--gn-muted,#6d7278);font-size:12px;line-height:1.5}
/* MR65 — GEO / AI-citable content */
.geba-next.gn-v4 .gn65-citable{padding:clamp(34px,5vw,72px) 0;border-bottom:1px solid var(--gn-border,rgba(15,24,38,.11));background:linear-gradient(180deg,rgba(247,249,252,.96),#fff)}
.geba-next.gn-v4 .gn65-citable__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:clamp(22px,4vw,56px);align-items:start}
.geba-next.gn-v4 .gn65-citable__answer h2{margin:8px 0 14px;font-size:clamp(28px,3.2vw,46px);line-height:1.03;letter-spacing:-.035em}
.geba-next.gn-v4 .gn65-citable__lede{max-width:850px;margin:0;color:var(--gn-ink,#101722);font-size:clamp(17px,1.45vw,21px);line-height:1.62}
.geba-next.gn-v4 .gn65-citable__signals{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 0;padding:0;list-style:none}
.geba-next.gn-v4 .gn65-citable__signals li{padding:8px 11px;border:1px solid rgba(17,30,48,.12);border-radius:999px;background:#fff;color:#344054;font-size:12px;font-weight:750;line-height:1.25}
.geba-next.gn-v4 .gn65-citable__evidence{padding:clamp(18px,2.2vw,26px);border:1px solid rgba(17,30,48,.12);border-radius:18px;background:#fff;box-shadow:0 12px 32px rgba(18,34,55,.055)}
.geba-next.gn-v4 .gn65-citable__evidence dl{display:grid;gap:12px;margin:0 0 18px}
.geba-next.gn-v4 .gn65-citable__evidence dl div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;align-items:start}
.geba-next.gn-v4 .gn65-citable__evidence dt{color:#7b8492;font-size:10px;font-weight:850;letter-spacing:.11em;text-transform:uppercase}
.geba-next.gn-v4 .gn65-citable__evidence dd{margin:0;color:#121b28;font-size:14px;font-weight:760;line-height:1.45;overflow-wrap:anywhere}
.geba-next.gn-v4 .gn65-citable__sources{display:grid;gap:8px;padding-top:16px;border-top:1px solid rgba(17,30,48,.1)}
.geba-next.gn-v4 .gn65-citable__sources strong{font-size:12px;letter-spacing:.04em}
.geba-next.gn-v4 .gn65-citable__sources a{color:inherit;font-size:13px;line-height:1.45;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;overflow-wrap:anywhere}
.geba-next.gn-v4 .gn65-citable__scope,.geba-next.gn-v4 .gn65-citable__source-note{margin:16px 0 0;color:#697386;font-size:12px;line-height:1.55}
.geba-next.gn-v4 .gn65-citable--product{background:#f8fafc}
@media (max-width:820px){.geba-next.gn-v4 .gn65-citable__grid{grid-template-columns:1fr}.geba-next.gn-v4 .gn65-citable__evidence{max-width:none}}
/* NEXT-GEN V2 CP8 — component state / accessibility lab */
.geba-next [data-gn-component="ProductCard"]:focus-within {
box-shadow: 0 0 0 3px var(--gn-amber);
}
.geba-next .gn-form :is(input, select, textarea)[aria-invalid="true"] {
border-color: #b42318;
box-shadow: 0 0 0 2px rgba(180, 35, 24, .18);
}
.geba-next .gn-form[aria-busy="true"] .gn-button[type="submit"],
.geba-next .gn-button[aria-disabled="true"] {
opacity: .62;
}
.geba-next .gn-nav .gn-mega[open] > summary {
color: #fff;
}
@media (hover: none), (pointer: coarse) {
.geba-next [data-gn-component="Button"],
.geba-next .gn-nav .gn-mega > summary,
.geba-next .gn6-conversion-dock a {
min-height: 44px;
}
}
