*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { max-width: 100%; overflow-x: hidden; background: #020202; scroll-behavior: smooth; scroll-padding-top: 110px; }
:root {
    --section-y: clamp(2.75rem, 6svh, 5rem);
    --section-x: clamp(1.35rem, 5vw, 5rem);
    --section-gap: clamp(1.4rem, 4vw, 4rem);
    --page-bg-base: #020202;
    --page-bg-soft: #070504;
    --page-bg-warm: #100c08;
    --page-bg-mist: rgba(119,111,90,0.17);
    --page-bg-bronze: rgba(102,74,42,0.14);
    --page-bg-gold: rgba(194,154,66,0.13);
    --page-transition-mask: linear-gradient(180deg, transparent 0%, #000 16%, #000 84%, transparent 100%);
    --hero-where-overlap: clamp(110px, 16svh, 220px);
}
body { position: relative; max-width: 100%; background: var(--page-bg-base); overflow-x: hidden; width: 100%; min-height: 100vh; font-family: 'Orbitron', sans-serif; color: #fff; isolation: isolate; }
@supports (overflow: clip) {
    html, body { overflow-x: clip; }
}
body.is-preloading { overflow: hidden; }
body::before, body::after { content: ""; position: fixed; inset: 0; z-index: 0; pointer-events: none; }
body::before { background-image: radial-gradient(ellipse at 78% 16%, var(--page-bg-gold), transparent 36%), radial-gradient(ellipse at 19% 74%, var(--page-bg-bronze), transparent 34%), radial-gradient(ellipse at 52% 52%, var(--page-bg-mist), transparent 58%), linear-gradient(180deg, var(--page-bg-soft) 0%, #040303 34%, var(--page-bg-warm) 68%, var(--page-bg-base) 100%); }
body::after { inset: -18vmax; opacity: 0.5; background-image: radial-gradient(circle at 18px 24px, rgba(255,240,194,0.38) 0 1px, transparent 1.45px), radial-gradient(circle at 112px 86px, rgba(194,154,66,0.26) 0 1px, transparent 1.55px), radial-gradient(circle at 214px 148px, rgba(144,88,38,0.2) 0 1px, transparent 1.35px); background-repeat: repeat; background-size: 220px 220px, 360px 360px, 520px 520px; animation: spaceStarDrift 74s linear infinite; will-change: background-position; }
.site-loader { position: fixed; inset: 0; z-index: 999; display: grid; align-content: center; justify-items: center; gap: clamp(0.82rem, 2vw, 1.1rem); min-height: 100svh; padding: 2rem; background: linear-gradient(135deg, rgba(194,154,66,0.08), transparent 34%, rgba(255,179,70,0.06) 68%, rgba(102,74,42,0.1)), #070504; color: #fff; isolation: isolate; contain: layout paint; opacity: 1; visibility: visible; transition: opacity 420ms ease, visibility 420ms ease; }
.site-loader::before { content: ""; position: absolute; inset: 0; z-index: 0; box-shadow: inset 0 0 140px rgba(0,0,0,0.82); pointer-events: none; }
.site-loader__grid { position: absolute; inset: -16%; z-index: 0; background-image: linear-gradient(rgba(255,255,255,0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.035) 1px, transparent 1px); background-size: 62px 62px; opacity: 0.34; transform: translate3d(0,0,0); animation: loaderGrid 1800ms linear infinite; -webkit-mask-image: linear-gradient(115deg, transparent 0%, #000 22%, #000 72%, transparent 100%); mask-image: linear-gradient(115deg, transparent 0%, #000 22%, #000 72%, transparent 100%); pointer-events: none; }
.site-loader__mark { position: relative; z-index: 1; width: clamp(92px, 14vw, 148px); aspect-ratio: 1; display: grid; place-items: center; contain: layout paint; filter: drop-shadow(0 0 28px rgba(194,154,66,0.2)); transform: translateZ(0); }
.site-loader__ring { position: absolute; border-radius: 50%; border: 1px solid rgba(255,255,255,0.13); transform: translateZ(0); will-change: transform; }
.site-loader__ring--outer { inset: 0; border-top-color: rgba(226,181,84,0.76); border-right-color: rgba(255,179,70,0.58); animation: loaderSpin 920ms linear infinite; }
.site-loader__ring--inner { inset: 22%; border-bottom-color: rgba(194,154,66,0.58); border-left-color: rgba(144,88,38,0.62); opacity: 0.82; animation: loaderSpin 1450ms linear infinite reverse; }
.site-loader__axis { position: relative; width: 78%; height: 1px; background: linear-gradient(90deg, transparent, rgba(194,154,66,0.88), rgba(255,255,235,0.86), rgba(255,179,70,0.76), transparent); box-shadow: 0 0 18px rgba(194,154,66,0.34); animation: loaderPulse 1100ms ease-in-out infinite; transform-origin: center; }
.site-loader__axis::before { content: ""; position: absolute; top: 50%; left: 50%; width: 1px; height: clamp(54px, 7vw, 86px); background: linear-gradient(180deg, transparent, rgba(255,255,255,0.58), transparent); transform: translate(-50%, -50%); }
.site-loader__brand { position: relative; z-index: 1; font-size: clamp(1.35rem, 4vw, 2.25rem); line-height: 1; font-weight: 900; letter-spacing: 0; text-shadow: 0 0 28px rgba(194,154,66,0.26), 0 12px 38px rgba(0,0,0,0.45); }
.site-loader__bar { position: relative; z-index: 1; overflow: hidden; width: min(180px, 44vw); height: 2px; background: rgba(255,255,255,0.12); contain: strict; }
.site-loader__bar span { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(194,154,66,0.05), rgba(226,181,84,0.9), rgba(255,179,70,0.82), rgba(112,74,34,0.62)); transform: scaleX(0.18); transform-origin: left; animation: loaderBar 980ms cubic-bezier(0.65, 0, 0.35, 1) infinite; will-change: transform; }
body.is-loaded .site-loader { opacity: 0; visibility: hidden; pointer-events: none; }
@keyframes loaderSpin { to { transform: rotate(1turn); } }
@keyframes loaderPulse { 0%, 100% { opacity: 0.46; transform: scaleX(0.5); } 50% { opacity: 1; transform: scaleX(1); } }
@keyframes loaderBar { 0% { transform: translateX(-55%) scaleX(0.18); } 48% { transform: translateX(18%) scaleX(0.7); } 100% { transform: translateX(108%) scaleX(0.24); } }
@keyframes loaderGrid { to { transform: translate3d(62px, 62px, 0); } }
@keyframes spaceStarDrift { to { background-position: -220px 180px, 360px -240px, -520px -320px; } }
@media (prefers-reduced-motion: reduce) {
    .site-loader { transition: none; }
    .site-loader__grid, .site-loader__ring, .site-loader__axis, .site-loader__bar span, .partners-marquee__track { animation: none; }
    .site-loader__grid { opacity: 0.18; }
    .site-loader__axis { opacity: 0.82; transform: none; }
    .site-loader__bar span { transform: scaleX(1); }
    body::after { animation: none; }
    .hero-space::before { animation: none; opacity: 0.28; }
}
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; clip-path: inset(50%); }
main { position: relative; z-index: 2; }
main section[id], .site-footer { scroll-margin-top: 0; }
#particles { position: fixed; inset: 0; width: 100vw; height: 100svh; z-index: 1; pointer-events: none; opacity: 1; transition: opacity 480ms ease; }
body.hero-scene-away #particles { opacity: 0; }
.vignette { position: absolute; top: 0; left: 0; right: 0; bottom: calc(-1 * var(--hero-where-overlap)); width: 100%; z-index: 2; background: radial-gradient(ellipse at center, transparent 0%, rgba(0,0,0,0.4) 50%, rgba(0,0,0,0.85) 100%); -webkit-mask-image: linear-gradient(180deg, #000 0%, #000 68%, transparent 100%); mask-image: linear-gradient(180deg, #000 0%, #000 68%, transparent 100%); pointer-events: none; }
.center-wrapper { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 10; text-align: center; display: flex; flex-direction: column; align-items: center; justify-content: center; pointer-events: none; transition: opacity 2s ease; }
.halo { position: absolute; width: 640px; height: 640px; border-radius: 50%; background: radial-gradient(circle, rgba(255,236,178,0.16) 0%, rgba(255,174,51,0.11) 32%, rgba(168,72,18,0.055) 52%, transparent 73%); box-shadow: inset 0 0 80px rgba(255,205,102,0.08), 0 0 96px rgba(255,158,38,0.07); animation: haloPulse 4s ease-in-out infinite; pointer-events: none; }
.halo-2 { position: absolute; width: 430px; height: 430px; border-radius: 50%; background: radial-gradient(circle, rgba(255,255,226,0.13) 0%, rgba(255,171,118,0.075) 45%, transparent 72%); box-shadow: 0 0 70px rgba(255,220,148,0.065); animation: haloPulse2 6s ease-in-out infinite; pointer-events: none; }
@keyframes haloPulse { 0%, 100% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.15); opacity: 0.6; } }
@keyframes haloPulse2 { 0%, 100% { transform: scale(1); opacity: 0.8; } 50% { transform: scale(1.2); opacity: 0.4; } }
.light-line { position: absolute; width: 880px; height: 2px; background: linear-gradient(90deg, transparent 0%, rgba(255,190,72,0) 10%, rgba(255,190,72,0.45) 28%, rgba(255,255,235,0.92) 50%, rgba(255,171,118,0.42) 72%, rgba(255,190,72,0) 90%, transparent 100%); box-shadow: 0 0 22px rgba(255,216,132,0.28), 0 0 54px rgba(255,164,44,0.16); animation: linePulse 2.6s ease-in-out infinite; pointer-events: none; }
.light-line-2 { position: absolute; width: 560px; height: 1px; background: linear-gradient(90deg, transparent 0%, rgba(176,92,18,0) 15%, rgba(255,171,118,0.34) 35%, rgba(255,239,190,0.72) 50%, rgba(176,92,18,0.3) 65%, rgba(176,92,18,0) 85%, transparent 100%); box-shadow: 0 0 28px rgba(255,171,118,0.16); animation: linePulse2 4.2s ease-in-out infinite; pointer-events: none; transform: translateY(3px); }
@keyframes linePulse { 0%, 100% { opacity: 1; width: 800px; } 50% { opacity: 0.4; width: 600px; } }
@keyframes linePulse2 { 0%, 100% { opacity: 0.6; width: 500px; } 50% { opacity: 0.2; width: 350px; } }
.subtitle-wrapper { position: absolute; top: 50%; left: 50%; transform: translate(-50%, 0); margin-top: clamp(3rem, 8vw, 7rem); z-index: 10; text-align: center; pointer-events: none; transition: margin-top 2s ease; }
body.globe-active .subtitle-wrapper { margin-top: clamp(8rem, 24vh, 16rem); }
.subtitle { font-size: clamp(0.7rem, 1.5vw, 1rem); font-weight: 400; letter-spacing: 0.5em; color: rgba(255,232,176,0.78); text-transform: uppercase; background: linear-gradient(100deg, rgba(144,58,16,0.7), #ffb56a 18%, #fff9d9 36%, #ffd05f 52%, #fff2bc 68%, #c56522 84%, #ffe8a2 100%); background-size: 360% 100%; -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; animation: subtitleGoldShimmer 3.6s ease-in-out infinite; user-select: none; text-shadow: 0 0 24px rgba(255,194,92,0.24), 0 0 54px rgba(255,133,38,0.12); transition: text-shadow 2s ease; }
body.globe-active .subtitle { text-shadow: 0 0 30px rgba(255,206,104,0.34), 0 0 70px rgba(255,133,38,0.14); }
@keyframes subtitleGoldShimmer { 0%, 100% { opacity: 0.88; letter-spacing: 0.5em; background-position: 0% 50%; } 50% { opacity: 1; letter-spacing: 0.56em; background-position: 100% 50%; } }
.ring { position: absolute; border-radius: 50%; border: 1px solid rgba(255,214,126,0.16); box-shadow: 0 0 32px rgba(255,184,70,0.08), inset 0 0 28px rgba(255,236,178,0.035); pointer-events: none; animation: ringExpand 5.4s ease-in-out infinite; }
.ring-1 { width: 300px; height: 300px; animation-delay: 0s; }
.ring-2 { width: 450px; height: 450px; animation-delay: 1.8s; border-color: rgba(255,241,191,0.12); }
.ring-3 { width: 620px; height: 620px; animation-delay: 3.6s; border-color: rgba(255,151,54,0.085); }
@keyframes ringExpand { 0%, 100% { transform: scale(0.8); opacity: 0; } 20% { opacity: 1; } 80% { opacity: 1; } 100% { transform: scale(1.3); opacity: 0; } }
.scanlines { position: absolute; top: 0; left: 0; right: 0; bottom: calc(-1 * var(--hero-where-overlap)); width: 100%; z-index: 20; background: repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(0,0,0,0.03) 2px, rgba(0,0,0,0.03) 4px); -webkit-mask-image: linear-gradient(180deg, #000 0%, #000 72%, transparent 100%); mask-image: linear-gradient(180deg, #000 0%, #000 72%, transparent 100%); pointer-events: none; }
.noise { position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; z-index: 3; opacity: 0.015; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E"); }
.site-header { position: fixed; top: clamp(0.75rem, 2vw, 1.25rem); left: 50%; transform: translateX(-50%); z-index: 80; width: min(1180px, calc(100% - 2.5rem)); display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: clamp(0.8rem, 2vw, 1.6rem); border: 1px solid rgba(255,255,255,0.12); border-radius: 8px; background: rgba(2,7,8,0.68); backdrop-filter: blur(18px); box-shadow: 0 18px 60px rgba(0,0,0,0.32); padding: 0.7rem 0.85rem; }
.site-header--minimal { top: clamp(0.85rem, 2vw, 1.25rem); left: clamp(0.9rem, 3vw, 1.8rem); right: clamp(0.9rem, 3vw, 1.8rem); transform: none; width: auto; max-width: none; grid-template-columns: auto minmax(0, 1fr); justify-content: stretch; align-items: start; gap: 0.85rem; border: 0; border-radius: 0; background: transparent; backdrop-filter: none; -webkit-backdrop-filter: none; box-shadow: none; padding: 0; }
.site-header--minimal .site-actions { justify-self: end; min-width: 0; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0.38rem; padding: 0; border: 0; border-radius: 0; background: transparent; backdrop-filter: none; -webkit-backdrop-filter: none; box-shadow: none; }
.site-header--minimal .site-brand-mark { display: none; }
.site-header--minimal .site-brand { align-self: start; min-height: 46px; padding: 0.1rem 0; font-size: 1.75rem; line-height: 1; letter-spacing: 0; text-transform: none; color: #ffe1a0; text-shadow: 0 0 24px rgba(255,190,88,0.3), 0 10px 32px rgba(0,0,0,0.4); }
.site-header--minimal .site-cta, .site-header--minimal .site-secondary, .site-header--minimal .site-logout, .site-header--minimal .language-switch select { width: 8.4rem; min-height: 40px; padding: 0 0.78rem; border-color: rgba(255,255,255,0.12); background: rgba(255,255,255,0.045); color: rgba(245,250,250,0.88); font-size: 0.72rem; line-height: 1.1; text-align: center; }
.site-header--minimal .site-admin-link { min-width: 4.6rem; min-height: 36px; border-color: rgba(255,255,255,0.075); background: rgba(255,255,255,0.018); color: rgba(230,235,238,0.46); padding: 0 0.56rem; font-size: 0.64rem; box-shadow: none; }
.site-header--minimal .site-secondary, .site-header--minimal .language-switch select { border-color: rgba(255,221,142,0.56); background: linear-gradient(135deg, rgba(4,8,9,0.96), rgba(20,16,9,0.94) 48%, rgba(36,25,9,0.9)); color: #ffd36f; box-shadow: 0 10px 28px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,221,142,0.12); }
.site-header--minimal .site-cta:hover, .site-header--minimal .site-cta:focus-visible, .site-header--minimal .site-logout:hover, .site-header--minimal .site-logout:focus-visible { color: #fff; border-color: rgba(226,181,84,0.42); background: linear-gradient(135deg, rgba(194,154,66,0.13), rgba(255,179,70,0.075)); outline: none; }
.site-header--minimal .site-secondary:hover, .site-header--minimal .site-secondary:focus-visible, .site-header--minimal .language-switch select:hover, .site-header--minimal .language-switch select:focus-visible { color: #ffe8a8; border-color: rgba(255,235,180,0.82); background: linear-gradient(135deg, rgba(2,7,8,0.98), rgba(26,19,8,0.96) 48%, rgba(47,31,9,0.94)); outline: none; transform: translateY(-1px); }
.site-header--minimal .site-admin-link:hover, .site-header--minimal .site-admin-link:focus-visible { color: rgba(255,255,255,0.74); border-color: rgba(255,255,255,0.2); background: rgba(255,255,255,0.04); transform: translateY(-1px); }
.site-header--minimal .language-switch select { max-width: 100%; padding-right: 1.7rem; }
.site-header--minimal .site-auth-form { display: flex; }
.site-brand { display: inline-flex; align-items: center; gap: 0.62rem; color: #fff; font-size: clamp(1rem, 1.6vw, 1.22rem); font-weight: 900; letter-spacing: 0; text-decoration: none; text-transform: uppercase; white-space: nowrap; }
.site-brand-mark { display: block; width: 30px; height: 30px; border: 1px solid rgba(226,181,84,0.38); border-radius: 8px; background: radial-gradient(circle at 34% 32%, rgba(255,246,219,0.95) 0 2px, transparent 3px), linear-gradient(135deg, rgba(194,154,66,0.18), rgba(255,179,71,0.1)); box-shadow: inset 0 0 18px rgba(194,154,66,0.12), 0 0 24px rgba(194,154,66,0.12); }
.nav-toggle { display: none; place-items: center; width: 40px; height: 40px; border: 1px solid rgba(255,255,255,0.13); border-radius: 8px; background: rgba(255,255,255,0.04); color: #fff; cursor: pointer; }
.nav-toggle span { display: block; width: 18px; height: 2px; border-radius: 999px; background: currentColor; transition: transform 180ms ease, opacity 180ms ease; }
.nav-toggle span + span { margin-top: 5px; }
.site-nav { display: flex; align-items: center; justify-content: center; gap: clamp(0.35rem, 0.8vw, 0.75rem); min-width: 0; }
.site-nav a, .site-cta, .site-secondary, .site-admin-link, .site-logout, .footer-cta, .footer-secondary { min-height: 38px; display: inline-grid; place-items: center; border-radius: 8px; color: rgba(245,250,250,0.78); font-family: Arial, sans-serif; font-size: 0.78rem; font-weight: 700; letter-spacing: 0; text-decoration: none; transition: color 180ms ease, border-color 180ms ease, background 180ms ease, transform 180ms ease; }
.site-nav a { padding: 0 0.64rem; white-space: nowrap; }
.site-nav a:hover, .site-nav a:focus-visible { color: #fff; background: rgba(255,255,255,0.055); outline: none; }
.site-cta, .footer-cta { border: 1px solid rgba(194,154,66,0.42); background: linear-gradient(135deg, rgba(194,154,66,0.16), rgba(255,179,70,0.1)); color: #fff; padding: 0 0.9rem; text-transform: uppercase; white-space: nowrap; }
.site-cta:hover, .site-cta:focus-visible, .footer-cta:hover, .footer-cta:focus-visible { border-color: rgba(255,226,160,0.72); background: linear-gradient(135deg, rgba(226,181,84,0.22), rgba(255,179,70,0.16)); transform: translateY(-1px); outline: none; }
.site-actions { display: flex; align-items: center; justify-content: flex-end; gap: 0.5rem; min-width: max-content; }
.language-switch { margin: 0; }
.language-switch select { min-height: 38px; border: 1px solid rgba(255,255,255,0.12); border-radius: 8px; background: rgba(255,255,255,0.045); color: #fff; padding: 0 2rem 0 0.72rem; font-family: Arial, sans-serif; font-size: 0.72rem; font-weight: 800; letter-spacing: 0; text-transform: uppercase; cursor: pointer; }
.language-switch select:focus-visible { outline: 2px solid rgba(226,181,84,0.58); outline-offset: 2px; }
.language-switch select option { color: #15100b; background: #fff8ea; }
.site-auth-form { margin: 0; }
.site-secondary, .site-logout, .footer-secondary { border: 1px solid rgba(255,255,255,0.12); background: rgba(255,255,255,0.035); color: rgba(255,255,255,0.86); padding: 0 0.82rem; text-transform: uppercase; white-space: nowrap; cursor: pointer; }
.site-secondary:hover, .site-secondary:focus-visible, .site-logout:hover, .site-logout:focus-visible, .footer-secondary:hover, .footer-secondary:focus-visible { color: #fff; border-color: rgba(255,255,255,0.32); background: rgba(255,255,255,0.075); outline: none; }
.site-admin-link { min-height: 34px; border: 1px solid rgba(255,255,255,0.075); background: rgba(255,255,255,0.018); color: rgba(230,235,238,0.46); padding: 0 0.62rem; font-size: 0.68rem; font-weight: 800; text-transform: uppercase; white-space: nowrap; }
.site-admin-link:hover, .site-admin-link:focus-visible { color: rgba(255,255,255,0.78); border-color: rgba(255,255,255,0.18); background: rgba(255,255,255,0.045); outline: none; }
.hero-space { position: relative; z-index: 31; min-height: 100vh; overflow: visible; pointer-events: none; isolation: isolate; background: transparent; }
.hero-space::before { content: ""; position: absolute; inset: 10% -20% 8%; z-index: 4; pointer-events: none; background: conic-gradient(from 238deg at 50% 48%, transparent 0deg, rgba(255,196,74,0.035) 54deg, rgba(255,255,226,0.09) 72deg, rgba(255,171,118,0.035) 96deg, transparent 132deg, transparent 360deg); -webkit-mask-image: radial-gradient(ellipse at center, #000 0%, #000 48%, transparent 76%); mask-image: radial-gradient(ellipse at center, #000 0%, #000 48%, transparent 76%); mix-blend-mode: screen; opacity: 0.88; animation: heroGildedSweep 14s ease-in-out infinite; }
.hero-space::after { content: ""; position: absolute; left: 0; right: 0; bottom: calc(-1 * var(--hero-where-overlap)); z-index: 26; height: calc(var(--hero-where-overlap) * 2); pointer-events: none; background: radial-gradient(ellipse at 50% 48%, rgba(119,111,90,0.16), transparent 58%), linear-gradient(180deg, transparent 0%, rgba(2,2,2,0.16) 22%, rgba(13,10,7,0.72) 52%, rgba(15,11,7,0.42) 76%, transparent 100%); }
@keyframes heroGildedSweep { 0%, 100% { transform: rotate(-4deg) scale(1); opacity: 0.58; } 45% { transform: rotate(7deg) scale(1.08); opacity: 1; } }
.about-section { position: relative; z-index: 30; min-height: 100svh; display: grid; grid-template-columns: minmax(300px, 0.86fr) minmax(360px, 1.14fr); align-items: center; gap: var(--section-gap); padding: var(--section-y) var(--section-x); background: linear-gradient(180deg, rgba(0,0,0,0.96), #050606 18%, #070908 100%); border-top: 1px solid rgba(255,255,255,0.08); overflow: hidden; }
.about-section::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(115deg, rgba(0,225,200,0.06), transparent 36%, rgba(255,178,74,0.045) 72%, rgba(112,108,255,0.035)); pointer-events: none; }
.about-section::after { content: ""; position: absolute; inset: 0; z-index: -1; background-image: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.026) 1px, transparent 1px); background-size: 58px 58px; -webkit-mask-image: linear-gradient(90deg, #000 0%, transparent 72%); mask-image: linear-gradient(90deg, #000 0%, transparent 72%); pointer-events: none; }
.about-copy { justify-self: start; max-width: 610px; }
.about-label { display: block; margin-bottom: 1.1rem; font-size: 0.74rem; font-weight: 700; color: rgba(170,170,170,0.8); text-transform: uppercase; }
.about-copy h2 { font-size: clamp(2.45rem, 5vw, 5.35rem); line-height: 0.9; font-weight: 900; margin-bottom: 1.15rem; color: #f4f6f7; }
.about-copy p { max-width: 34rem; font-family: Arial, sans-serif; font-size: clamp(0.95rem, 1.3vw, 1.05rem); line-height: 1.6; color: rgba(230,235,238,0.74); }
.about-actions { display: flex; flex-wrap: wrap; gap: 0.72rem; margin-top: 1.35rem; }
.about-primary, .about-secondary { display: inline-flex; align-items: center; justify-content: center; gap: 0.55rem; min-height: 46px; max-width: 100%; border: 1px solid rgba(255,255,255,0.14); border-radius: 8px; padding: 0 1rem; color: #fff; font-size: 0.82rem; font-weight: 900; text-align: center; text-decoration: none; text-transform: uppercase; transition: transform 180ms ease, border-color 180ms ease, background 180ms ease; }
.about-primary { border-color: rgba(194,154,66,0.42); background: linear-gradient(135deg, rgba(194,154,66,0.16), rgba(255,179,70,0.1)); }
.about-secondary { background: rgba(255,255,255,0.035); color: rgba(255,255,255,0.86); }
.about-primary:hover, .about-primary:focus-visible, .about-secondary:hover, .about-secondary:focus-visible { transform: translateY(-1px); border-color: rgba(255,255,255,0.42); outline: none; }
.about-details { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-top: 1.5rem; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,0.12); }
.about-detail strong { display: block; margin-bottom: 0.45rem; font-size: clamp(1.05rem, 2vw, 1.45rem); font-weight: 900; color: #fff; }
.about-detail span { display: block; font-family: Arial, sans-serif; font-size: 0.78rem; line-height: 1.45; color: rgba(230,235,238,0.55); }
.project-flow { position: relative; justify-self: end; width: min(650px, 100%); }
.project-flow::before { content: ""; position: absolute; inset: -7% -4% 18% 14%; border: 1px solid rgba(162,136,56,0.16); transform: skewY(-7deg); pointer-events: none; }
.flow-panel { position: relative; overflow: hidden; border: 1px solid rgba(255,255,255,0.12); border-radius: 8px; background: linear-gradient(145deg, rgba(255,255,255,0.064), rgba(255,255,255,0.02) 52%, rgba(0,0,0,0.24)); box-shadow: 0 24px 90px rgba(0,0,0,0.38); padding: clamp(1rem, 2.2vw, 1.45rem); }
.flow-panel::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(162,136,56,0.12), transparent 34%, rgba(255,179,70,0.05)), repeating-linear-gradient(135deg, rgba(255,255,255,0.04) 0 1px, transparent 1px 18px); opacity: 0.8; pointer-events: none; }
.flow-panel-head { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: clamp(0.9rem, 1.8vw, 1.25rem); }
.flow-panel-head span { font-size: clamp(0.62rem, 1vw, 0.74rem); font-weight: 700; color: rgba(230,240,242,0.58); text-transform: uppercase; }
.flow-panel-head strong { font-size: clamp(0.82rem, 1.4vw, 1rem); font-weight: 900; color: rgba(255,255,255,0.92); text-transform: uppercase; white-space: nowrap; }
.flow-steps { position: relative; z-index: 1; display: grid; list-style: none; }
.flow-step { position: relative; display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 0.85rem; padding: clamp(0.78rem, 1.4vw, 1rem) 0; border-top: 1px solid rgba(255,255,255,0.1); }
.flow-step:first-child { border-top: 0; }
.flow-step::before { content: ""; position: absolute; left: 21px; top: 52px; bottom: -16px; width: 1px; background: linear-gradient(rgba(194,154,66,0.42), rgba(255,255,255,0.08)); }
.flow-step:last-child::before { display: none; }
.flow-index { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid rgba(255,255,255,0.12); border-radius: 8px; background: rgba(255,255,255,0.055); font-family: Arial, sans-serif; font-size: 0.76rem; font-weight: 900; color: rgba(255,255,255,0.76); }
.flow-step.is-active .flow-index { border-color: rgba(194,154,66,0.48); background: rgba(162,136,56,0.16); color: #fff; }
.flow-step strong { display: block; margin-bottom: 0.32rem; font-size: clamp(1rem, 1.45vw, 1.2rem); line-height: 1.12; font-weight: 900; color: #fff; }
.flow-step p { max-width: 32rem; font-family: Arial, sans-serif; font-size: clamp(0.82rem, 1vw, 0.9rem); line-height: 1.48; color: rgba(230,235,238,0.64); }
.flow-output { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 0.75rem; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,0.1); }
.flow-output span { display: inline-grid; place-items: center; min-height: 30px; border: 1px solid rgba(255,255,255,0.12); border-radius: 8px; background: rgba(28,23,18,0.52); padding: 0 0.68rem; font-family: Arial, sans-serif; font-size: 0.72rem; font-weight: 800; color: rgba(255,255,255,0.76); }
.where-section { position: relative; z-index: 30; min-height: 100svh; display: grid; align-content: start; gap: clamp(0.9rem, 2.4svh, 1.9rem); padding: clamp(7rem, 15svh, 10rem) var(--section-x) clamp(9rem, 22svh, 14rem); background: linear-gradient(180deg, #070908 0%, #020303 46%, #000 100%); border-top: 1px solid rgba(255,255,255,0.07); overflow: hidden; }
.where-section::before { content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(ellipse at 72% 42%, rgba(162,136,56,0.12), transparent 34%), radial-gradient(ellipse at 28% 66%, rgba(255,179,70,0.055), transparent 32%), linear-gradient(rgba(255,255,255,0.024) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.024) 1px, transparent 1px); background-size: auto, auto, 58px 58px, 58px 58px; -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 10%, #000 90%, transparent 100%); mask-image: linear-gradient(180deg, transparent 0%, #000 10%, #000 90%, transparent 100%); pointer-events: none; }
.where-section::after { content: ""; position: absolute; inset: 17% clamp(0.8rem, 3vw, 3rem) 15% auto; z-index: -1; width: min(540px, 44vw); border: 1px solid rgba(255,179,70,0.075); transform: skewY(7deg); pointer-events: none; }
.where-head { position: relative; z-index: 3; width: min(1340px, 100%); margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(1rem, 2.4vw, 2.6rem); align-items: end; }
.where-label { display: block; margin: 0; font-size: 0.74rem; font-weight: 700; color: rgba(170,170,170,0.82); text-transform: uppercase; }
.where-head .where-label { max-width: 18ch; font-size: clamp(1.15rem, 2.2vw, 2.5rem); line-height: 0.98; font-weight: 900; overflow-wrap: anywhere; transform: translateY(-0.65rem); }
.where-head h2 { font-size: clamp(2.5rem, 5.4vw, 5.8rem); line-height: 0.9; font-weight: 900; color: #f7f7f7; }
.where-head p { font-family: Arial, sans-serif; font-size: clamp(0.9rem, 1.15vw, 1rem); line-height: 1.55; color: rgba(230,235,238,0.66); }
.where-planet-stage { width: min(1340px, 100%); min-height: clamp(420px, 52svh, 620px); margin: 0 auto; pointer-events: none; }
.services-section { position: relative; z-index: 30; min-height: 100svh; display: grid; grid-template-columns: minmax(230px, 0.42fr) minmax(0, 1.58fr); align-items: center; gap: var(--section-gap); padding: var(--section-y) var(--section-x); background: linear-gradient(180deg, #070908 0%, #020303 42%, #000 100%); border-top: 1px solid rgba(255,255,255,0.07); overflow: hidden; }
.services-section::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(115deg, rgba(162,136,56,0.1), transparent 34%, rgba(255,179,70,0.035) 64%, rgba(112,74,34,0.12)), repeating-linear-gradient(90deg, rgba(255,255,255,0.018) 0 1px, transparent 1px 72px); pointer-events: none; }
.services-section::after { content: ""; position: absolute; inset: 12% auto 10% clamp(0.8rem, 3vw, 3rem); z-index: -1; width: min(520px, 46vw); border: 1px solid rgba(162,136,56,0.12); transform: skewY(-8deg); pointer-events: none; }
.services-visual { position: relative; z-index: 1; justify-self: start; width: min(500px, 38vw); min-width: 250px; aspect-ratio: 1; display: grid; place-items: center; pointer-events: none; }
.services-stage { position: relative; width: 100%; aspect-ratio: 1; display: grid; place-items: center; isolation: isolate; filter: drop-shadow(0 28px 80px rgba(0,0,0,0.48)); }
.services-stage-canvas { position: relative; z-index: 2; width: 100%; height: 100%; display: block; }
.services-content { position: relative; z-index: 2; justify-self: end; width: min(1180px, 100%); min-width: 0; margin: 0; }
.services-head { display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(1.25rem, 3vw, 3rem); align-items: start; margin-bottom: clamp(1rem, 2.4svh, 1.75rem); }
.services-label { display: block; margin-bottom: 0.9rem; font-size: 0.74rem; font-weight: 700; color: rgba(170,170,170,0.82); text-transform: uppercase; }
.services-head h2 { font-size: clamp(2rem, 3.8vw, 4rem); line-height: 0.98; font-weight: 900; color: #f4f6f7; }
.services-head p { font-family: Arial, sans-serif; font-size: clamp(0.9rem, 1.15vw, 1rem); line-height: 1.55; color: rgba(230,235,238,0.68); }
.services-carousel { position: relative; overflow: visible; }
.services-track { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(0.82rem, 1.5vw, 1.15rem); transform: none; transition: none; will-change: auto; }
.service-card { position: relative; min-width: 0; min-height: clamp(320px, 28vw, 390px); display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; border: 1px solid rgba(255,255,255,0.12); border-radius: 8px; background: rgba(255,255,255,0.025); color: #fff; padding: clamp(0.95rem, 1.3vw, 1.32rem); cursor: pointer; transition: opacity 460ms cubic-bezier(.22,.8,.22,1), border-color 460ms cubic-bezier(.22,.8,.22,1), background 460ms cubic-bezier(.22,.8,.22,1), box-shadow 460ms cubic-bezier(.22,.8,.22,1), transform 520ms cubic-bezier(.22,.8,.22,1); }
.service-card:hover, .service-card:focus-visible { border-color: rgba(194,154,66,0.32); transform: translateY(-1px); }
.service-card:focus-visible { outline: 2px solid rgba(226,181,84,0.72); outline-offset: 4px; }
.service-card.is-active { background: linear-gradient(145deg, rgba(38,29,18,0.9), rgba(18,14,10,0.96)); border-color: rgba(226,181,84,0.42); box-shadow: 0 24px 80px rgba(102,74,42,0.24); opacity: 1; }
.service-card.is-planned { opacity: 0.64; }
.service-card.is-planned.is-active { opacity: 1; }
.service-card.is-planned::after { content: ""; position: absolute; right: -12%; bottom: -10%; width: 58%; aspect-ratio: 1; background: radial-gradient(circle, rgba(194,154,66,0.38) 0 2px, transparent 3px) 0 0 / 17px 17px; mask-image: radial-gradient(circle, #000, transparent 72%); opacity: 0.5; }
.service-card-top { display: flex; align-items: flex-start; justify-content: flex-start; gap: 1rem; }
.service-card h3 { font-size: clamp(1.15rem, 1.7vw, 1.45rem); line-height: 1.12; font-weight: 900; }
.service-card p { max-width: 19rem; margin-top: clamp(0.9rem, 2svh, 1.4rem); font-family: Arial, sans-serif; font-size: clamp(0.84rem, 1vw, 0.92rem); line-height: 1.5; color: rgba(255,255,255,0.73); }
.service-card.is-planned p { color: rgba(255,255,255,0.56); }
.service-bottom { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.8rem; align-items: end; margin-top: clamp(1.1rem, 2.8svh, 2rem); }
.service-bottom span { display: block; font-family: Arial, sans-serif; font-size: 0.76rem; line-height: 1.45; color: rgba(255,255,255,0.64); }
.service-bottom strong { display: block; margin-bottom: 0.42rem; font-size: 0.82rem; font-weight: 900; color: rgba(255,255,255,0.9); }
.service-tools { display: grid; grid-template-columns: repeat(2, 34px); gap: 0.45rem; }
.service-tool { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 8px; background: rgba(255,255,255,0.14); font-family: Arial, sans-serif; font-size: 0.72rem; font-weight: 800; color: #fff; }
.service-badge { display: inline-grid; place-items: center; width: max-content; min-height: 30px; margin-top: 1.3rem; border: 1px solid rgba(255,191,88,0.36); border-radius: 8px; background: rgba(255,191,88,0.08); padding: 0 0.8rem; font-family: Arial, sans-serif; font-size: 0.76rem; font-weight: 700; color: rgba(255,214,148,0.86); }
.service-card-link { position: relative; z-index: 2; display: inline-grid; place-items: center; min-height: 34px; margin-top: 0.78rem; border: 1px solid rgba(226,181,84,0.34); border-radius: 8px; background: rgba(162,136,56,0.1); padding: 0 0.72rem; color: rgba(255,238,190,0.92); font-family: Arial, sans-serif; font-size: 0.72rem; line-height: 1; font-weight: 800; text-decoration: none; text-transform: uppercase; transition: border-color 180ms ease, background 180ms ease, transform 180ms ease; }
.service-card-link:hover, .service-card-link:focus-visible { border-color: rgba(255,235,180,0.7); background: rgba(194,154,66,0.17); color: #fff; outline: none; transform: translateY(-1px); }
.reviews-section { position: relative; z-index: 30; min-height: 100svh; display: grid; align-content: center; padding: var(--section-y) 0; background: linear-gradient(180deg, #000 0%, #040505 48%, #000 100%); border-top: 1px solid rgba(255,255,255,0.07); overflow: hidden; }
.reviews-section::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(112,74,34,0.12), transparent 28%, rgba(162,136,56,0.1) 70%, transparent), radial-gradient(ellipse at 50% 56%, rgba(255,255,255,0.05), transparent 44%); pointer-events: none; }
.reviews-head { width: min(1160px, calc(100% - 2.7rem)); margin: 0 auto clamp(1rem, 2.4svh, 1.8rem); display: grid; grid-template-columns: minmax(0, 1fr) minmax(230px, 360px); gap: clamp(1.25rem, 3vw, 3rem); align-items: end; }
.reviews-head h2 { font-size: clamp(1.35rem, 3vw, 3.2rem); line-height: 0.88; font-weight: 900; color: #f7f7f7; }
.reviews-head p { font-family: Arial, sans-serif; font-size: clamp(0.9rem, 1.15vw, 1rem); line-height: 1.55; color: rgba(230,235,238,0.66); }
.partner-wave { width: min(1280px, 100%); margin: 0 auto clamp(0.9rem, 2.2svh, 1.6rem); display: flex; justify-content: center; gap: clamp(1.1rem, 4vw, 4.5rem); padding: 0 clamp(1.35rem, 6vw, 5rem); -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); }
.partner-mark { position: relative; flex: 0 0 auto; padding-bottom: 0.7rem; font-size: clamp(1rem, 2.4vw, 2rem); line-height: 1; font-weight: 900; color: rgba(255,255,255,0.28); text-transform: uppercase; opacity: 0.58; transform: translateY(10px) scale(0.9); transition: opacity 260ms ease, transform 260ms ease, color 260ms ease; }
.partner-mark::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 10px; background: radial-gradient(circle at 10% 50%, currentColor 0 3px, transparent 4px), radial-gradient(circle at 30% 50%, currentColor 0 3px, transparent 4px), radial-gradient(circle at 50% 50%, currentColor 0 3px, transparent 4px), radial-gradient(circle at 70% 50%, currentColor 0 3px, transparent 4px), radial-gradient(circle at 90% 50%, currentColor 0 3px, transparent 4px); opacity: 0.5; transform: skewX(-18deg); }
.partner-mark.is-active { color: rgba(255,255,255,0.96); opacity: 1; transform: translateY(0) scale(1.12); }
.partners-marquee { --marquee-curve-depth: clamp(22px, 3.4vw, 42px); position: relative; z-index: 30; overflow: hidden; padding: clamp(0.55rem, 1.4svh, 0.85rem) 0 clamp(2rem, 5svh, 3rem); border-block: 0; background: linear-gradient(90deg, transparent, rgba(255,240,194,0.018) 18%, rgba(194,154,66,0.028) 52%, rgba(255,240,194,0.014) 82%, transparent); -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.partners-marquee__track { display: flex; width: max-content; min-width: 200%; animation: partnersMarquee 32s linear infinite; will-change: transform; }
.partners-marquee__group { display: flex; align-items: center; gap: clamp(1.35rem, 5vw, 4.5rem); padding-inline: clamp(1.35rem, 5vw, 4.5rem); }
.partner-logo { --marquee-edge-drop: 0px; display: inline-flex; align-items: center; white-space: nowrap; font-size: clamp(0.9rem, 2.2vw, 1.6rem); line-height: 1; font-weight: 900; color: rgba(255,255,255,0.86); text-transform: uppercase; text-shadow: 0 0 24px rgba(255,215,111,0.14); transform: translate3d(0, var(--marquee-edge-drop), 0); will-change: transform; }
.partner-logo::before { content: ""; display: inline-block; width: 0.42rem; height: 0.42rem; margin-right: 0.72rem; border-radius: 999px; background: linear-gradient(135deg, #fff, #ffd36f); box-shadow: 0 0 18px rgba(255,211,111,0.24); }
@keyframes partnersMarquee { from { transform: translate3d(-50%,0,0); } to { transform: translate3d(0,0,0); } }
.reviews-carousel { position: relative; width: 100%; overflow: hidden; cursor: grab; touch-action: pan-y; user-select: none; }
.reviews-carousel.is-dragging { cursor: grabbing; }
.reviews-track { --review-shift: 0px; display: flex; align-items: center; gap: clamp(1rem, 2.6vw, 2rem); padding: clamp(0.35rem, 1vw, 0.7rem) 0 clamp(1rem, 2.4svh, 1.7rem); transform: translate3d(var(--review-shift),0,0); transition: transform 520ms cubic-bezier(.22,.8,.22,1); will-change: transform; backface-visibility: hidden; contain: layout style; }
.reviews-carousel.is-dragging .reviews-track { transition: none; }
.review-card { position: relative; flex: 0 0 clamp(300px, 44vw, 600px); min-height: clamp(270px, 28vw, 370px); display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; border: 1px solid rgba(255,255,255,0.12); border-radius: 8px; background: rgba(255,255,255,0.026); color: #fff; padding: clamp(1.1rem, 2vw, 1.8rem); opacity: 0.42; transform: scale(0.88); transition: opacity 320ms ease, transform 320ms ease, border-color 320ms ease, background 320ms ease; will-change: transform, opacity; backface-visibility: hidden; contain: layout paint; }
.review-card::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px); background-size: 46px 46px; opacity: 0.22; pointer-events: none; }
.review-card::after { content: ""; position: absolute; right: -9%; bottom: -16%; width: 44%; aspect-ratio: 1; background: radial-gradient(circle, rgba(194,154,66,0.34) 0 2px, transparent 3px) 0 0 / 17px 17px; -webkit-mask-image: radial-gradient(circle, #000, transparent 72%); mask-image: radial-gradient(circle, #000, transparent 72%); opacity: 0.46; pointer-events: none; }
.review-card.is-active { opacity: 1; transform: scale(1); border-color: rgba(226,181,84,0.42); background: linear-gradient(145deg, rgba(255,255,255,0.075), rgba(255,255,255,0.024) 54%, rgba(102,74,42,0.12)); box-shadow: 0 24px 70px rgba(0,0,0,0.38), 0 0 42px rgba(112,74,34,0.12); }
.review-company { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: clamp(1rem, 2.4svh, 1.6rem); }
.review-company strong { font-size: clamp(1.05rem, 1.8vw, 1.45rem); font-weight: 900; color: rgba(255,255,255,0.92); text-transform: uppercase; }
.review-company span { font-family: Arial, sans-serif; font-size: 0.8rem; color: rgba(230,235,238,0.5); }
.review-text { position: relative; z-index: 1; max-width: 34rem; font-family: Arial, sans-serif; font-size: clamp(1.05rem, 1.8vw, 1.65rem); line-height: 1.3; color: rgba(255,255,255,0.92); }
.review-meta { position: relative; z-index: 1; display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-top: clamp(1.1rem, 2.6svh, 1.9rem); padding-top: 0.9rem; border-top: 1px solid rgba(255,255,255,0.1); }
.review-meta strong { display: block; margin-bottom: 0.28rem; font-size: 0.9rem; font-weight: 900; color: #fff; }
.review-meta span { display: block; font-family: Arial, sans-serif; font-size: 0.78rem; color: rgba(230,235,238,0.56); }
.review-index { font-size: clamp(1.2rem, 2vw, 1.7rem); font-weight: 900; color: rgba(255,255,255,0.28); }
.cases-section { position: relative; z-index: 30; min-height: 100svh; display: grid; align-content: center; gap: clamp(1.25rem, 3svh, 2.5rem); padding: var(--section-y) var(--section-x); background: linear-gradient(180deg, #000 0%, #050707 38%, #010101 100%); border-top: 1px solid rgba(255,255,255,0.07); overflow: hidden; }
.cases-section::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(115deg, rgba(65,255,218,0.075), transparent 30%, rgba(255,178,74,0.06) 68%, transparent), linear-gradient(rgba(255,255,255,0.028) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.028) 1px, transparent 1px); background-size: auto, 56px 56px, 56px 56px; -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 12%, #000 88%, transparent 100%); mask-image: linear-gradient(180deg, transparent 0%, #000 12%, #000 88%, transparent 100%); pointer-events: none; }
.cases-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(250px, 390px); gap: clamp(1.25rem, 3vw, 3.5rem); align-items: end; width: min(1180px, 100%); margin: 0 auto; }
.cases-head h2 { font-size: clamp(1.3rem, 3vw, 3.1rem); line-height: 0.96; font-weight: 900; color: #f7f7f7; }
.cases-head p { font-family: Arial, sans-serif; font-size: clamp(0.88rem, 1.05vw, 0.96rem); line-height: 1.5; color: rgba(230,235,238,0.66); }
.cases-layout { width: min(1180px, 100%); margin: 0 auto; display: grid; grid-template-columns: minmax(230px, 340px) minmax(0, 1fr); gap: clamp(1rem, 2.4vw, 1.6rem); align-items: start; }
.case-client-list { display: grid; gap: 0.62rem; min-width: 0; }
.case-client-button { display: grid; grid-template-columns: 44px minmax(0, 1fr); align-items: center; gap: 0.82rem; width: 100%; min-height: 82px; border: 1px solid rgba(255,255,255,0.12); border-radius: 8px; background: rgba(255,255,255,0.028); color: inherit; padding: 0.75rem; text-align: left; cursor: pointer; transition: border-color 260ms ease, background 260ms ease, transform 260ms ease; }
.case-client-button:hover, .case-client-button:focus-visible, .case-client-button.is-active { border-color: rgba(194,154,66,0.42); background: rgba(162,136,56,0.12); outline: none; }
.case-client-button.is-active { transform: translateX(4px); }
.case-client-index { display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid rgba(194,154,66,0.28); border-radius: 8px; background: rgba(28,23,18,0.74); color: #c89442; font-size: 0.86rem; font-weight: 900; }
.case-client-main { min-width: 0; display: grid; gap: 0.22rem; }
.case-client-main strong { overflow-wrap: anywhere; font-size: 0.95rem; line-height: 1.12; font-weight: 900; color: rgba(255,255,255,0.94); text-transform: uppercase; }
.case-client-main span { font-family: Arial, sans-serif; font-size: 0.76rem; line-height: 1.25; color: rgba(230,235,238,0.58); }
.case-detail-area { min-width: 0; }
.case-detail { position: relative; display: grid; grid-template-columns: minmax(260px, 0.92fr) minmax(0, 1fr); gap: clamp(1rem, 2vw, 1.35rem); overflow: hidden; border: 1px solid rgba(255,255,255,0.12); border-radius: 8px; background: rgba(255,255,255,0.026); padding: clamp(0.95rem, 1.4vw, 1.25rem); color: inherit; }
.case-detail[hidden] { display: none; }
.case-detail::before { content: ""; position: absolute; inset: 0; background: linear-gradient(145deg, rgba(255,255,255,0.07), transparent 38%), radial-gradient(ellipse at 75% 16%, rgba(112,74,34,0.18), transparent 34%); opacity: 0.82; pointer-events: none; }
.case-detail:nth-child(2)::before { background: linear-gradient(145deg, rgba(255,240,194,0.04), transparent 38%), radial-gradient(ellipse at 76% 18%, rgba(162,136,56,0.16), transparent 34%); }
.case-visual { position: relative; z-index: 1; display: block; align-self: start; aspect-ratio: 16 / 9; overflow: hidden; border: 1px solid rgba(255,255,255,0.1); border-radius: 8px; background: rgba(2,7,8,0.78); }
.case-visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 58%, rgba(0,0,0,0.24)); pointer-events: none; }
.case-visual img { display: block; width: 100%; height: 100%; object-fit: cover; transform: scale(1.02); }
.case-detail-content { position: relative; z-index: 1; display: grid; align-content: start; min-width: 0; }
.case-meta { display: flex; align-items: center; justify-content: space-between; gap: 0.8rem; margin-bottom: 0.7rem; font-family: Arial, sans-serif; font-size: 0.75rem; color: rgba(230,235,238,0.52); }
.case-meta strong { font-family: 'Orbitron', sans-serif; font-size: 0.8rem; font-weight: 900; color: rgba(255,255,255,0.92); text-transform: uppercase; }
.case-detail h3 { font-size: 1.35rem; line-height: 1.08; font-weight: 900; color: #fff; margin-bottom: 0.7rem; }
.case-title-link { color: inherit; text-decoration: none; }
.case-title-link:hover, .case-title-link:focus-visible { color: #c89442; outline: none; }
.case-detail p { font-family: Arial, sans-serif; font-size: 0.92rem; line-height: 1.48; color: rgba(230,235,238,0.67); }
.case-service-panel { position: relative; z-index: 1; grid-column: 1 / -1; display: grid; gap: 0.72rem; margin-top: 0; padding-top: 0.9rem; border-top: 1px solid rgba(255,255,255,0.1); }
.case-package { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; min-height: 42px; border: 1px solid rgba(194,154,66,0.22); border-radius: 999px; background: rgba(28,23,18,0.62); padding: 0.38rem 0.45rem 0.38rem 0.78rem; }
.case-package span { font-family: Arial, sans-serif; font-size: 0.68rem; font-weight: 800; line-height: 1.2; color: rgba(230,235,238,0.58); text-transform: uppercase; }
.case-package strong { display: inline-grid; place-items: center; flex: 0 0 auto; min-width: 2.45rem; height: 2rem; border-radius: 999px; background: #c89442; color: #15100b; font-size: 0.88rem; font-weight: 900; box-shadow: 0 0 22px rgba(162,136,56,0.16); }
.case-service-list { display: flex; flex-wrap: wrap; gap: 0.48rem; }
.case-service-list--full { margin-top: 0.08rem; border: 1px solid rgba(162,136,56,0.16); border-radius: 18px; background: rgba(23,18,13,0.48); padding: 0.58rem; }
.case-service-pill { display: inline-flex; align-items: center; gap: 0.44rem; min-height: 34px; max-width: 100%; border: 1px solid rgba(255,255,255,0.13); border-radius: 999px; background: rgba(255,255,255,0.055); padding: 0.36rem 0.66rem 0.36rem 0.42rem; font-family: Arial, sans-serif; font-size: 0.72rem; font-weight: 700; line-height: 1.18; color: rgba(255,255,255,0.84); }
.case-service-pill span { display: inline-grid; place-items: center; flex: 0 0 18px; width: 18px; height: 18px; border-radius: 999px; background: rgba(162,136,56,0.16); color: #c89442; font-size: 0.82rem; font-weight: 900; line-height: 1; }
.team-section { position: relative; z-index: 30; min-height: 100svh; display: grid; align-content: center; gap: clamp(1.25rem, 3svh, 2.4rem); padding: var(--section-y) var(--section-x); background: linear-gradient(180deg, #010101 0%, #040707 46%, #000 100%); border-top: 1px solid rgba(255,255,255,0.07); overflow: hidden; }
.team-section::before { content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(circle at 18% 20%, rgba(162,136,56,0.12), transparent 28%), radial-gradient(circle at 78% 70%, rgba(255,178,74,0.08), transparent 30%), linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.026) 1px, transparent 1px); background-size: auto, auto, 56px 56px, 56px 56px; -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 10%, #000 92%, transparent 100%); mask-image: linear-gradient(180deg, transparent 0%, #000 10%, #000 92%, transparent 100%); pointer-events: none; }
.team-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(250px, 390px); gap: clamp(1.25rem, 3vw, 3.5rem); align-items: end; width: min(1180px, 100%); margin: 0 auto; }
.team-head h2 { font-size: clamp(1.3rem, 3vw, 3.1rem); line-height: 0.96; font-weight: 900; color: #f7f7f7; }
.team-head p { font-family: Arial, sans-serif; font-size: clamp(0.88rem, 1.05vw, 0.96rem); line-height: 1.5; color: rgba(230,235,238,0.66); }
.team-grid { width: min(1180px, 100%); margin: 0 auto; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; gap: clamp(1rem, 2vw, 1.4rem); }
.team-card { --team-avatar-size: 72px; position: relative; min-height: 292px; display: flex; flex-direction: column; justify-content: space-between; gap: clamp(1rem, 2svh, 1.35rem); overflow: hidden; border: 1px solid rgba(255,255,255,0.12); border-radius: 8px; background: rgba(255,255,255,0.026); padding: clamp(1.12rem, 1.8vw, 1.55rem); transition: border-color 220ms ease, background 220ms ease, transform 220ms ease, box-shadow 220ms ease; }
.team-card::before { content: ""; position: absolute; inset: 0; background: linear-gradient(145deg, rgba(255,255,255,0.07), transparent 42%), radial-gradient(ellipse at 72% 18%, rgba(194,154,66,0.14), transparent 34%); opacity: 0.86; pointer-events: none; }
.team-card:nth-child(2)::before { background: linear-gradient(145deg, rgba(255,255,255,0.06), transparent 42%), radial-gradient(ellipse at 72% 18%, rgba(112,74,34,0.18), transparent 34%); }
.team-card:nth-child(3)::before { background: linear-gradient(145deg, rgba(255,255,255,0.06), transparent 42%), radial-gradient(ellipse at 72% 18%, rgba(255,178,74,0.14), transparent 34%); }
.team-card:hover { border-color: rgba(226,181,84,0.46); background: rgba(162,136,56,0.1); transform: translateY(-2px); }
.team-card > div:first-child { position: relative; z-index: 1; min-height: var(--team-avatar-size); }
.team-photo { position: absolute; z-index: 2; top: 0; right: 0; width: var(--team-avatar-size); height: var(--team-avatar-size); overflow: hidden; border: 1px solid rgba(162,136,56,0.38); border-radius: 50%; background: #080707; margin: 0; box-shadow: 0 0 0 1px rgba(255,240,194,0.04), 0 0 24px rgba(194,154,66,0.18); pointer-events: none; }
.team-photo::after { content: ""; position: absolute; inset: 0; border-radius: 50%; background: linear-gradient(180deg, rgba(255,255,255,0.12), transparent 42%, rgba(0,0,0,0.2)); pointer-events: none; }
.team-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 21%; transform: scale(1.08); }
.team-card:nth-child(2) .team-photo img { object-position: 50% 25%; transform: scale(1.07); }
.team-card:nth-child(3) .team-photo img { object-position: 50% 23%; transform: scale(1.12); }
.team-body { position: relative; z-index: 1; display: flex; flex-direction: column; min-height: var(--team-avatar-size); }
.team-meta { order: 2; display: grid; gap: 0.28rem; max-height: none; overflow: visible; margin: 0.55rem 0 0; padding-right: calc(var(--team-avatar-size) + 0.9rem); opacity: 1; transform: none; font-family: Arial, sans-serif; font-size: 0.78rem; line-height: 1.25; color: rgba(230,235,238,0.52); pointer-events: auto; transition: none; }
.team-meta strong { font-family: 'Orbitron', sans-serif; font-size: 0.78rem; line-height: 1.2; font-weight: 900; color: rgba(255,255,255,0.9); text-transform: uppercase; }
.team-card h3 { order: 1; max-width: calc(100% - var(--team-avatar-size)); padding-right: 0.9rem; font-size: 1.42rem; line-height: 1.08; font-weight: 900; color: #fff; margin: 0; }
.team-card p { order: 3; max-height: none; overflow: visible; margin: clamp(1rem, 2svh, 1.25rem) 0 0; opacity: 1; transform: none; font-family: Arial, sans-serif; font-size: 1rem; line-height: 1.58; color: rgba(238,226,204,0.72); pointer-events: auto; transition: none; }
.team-card .team-tags { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 0.48rem; max-height: none; overflow: visible; margin-top: auto; padding-top: clamp(0.85rem, 1.7svh, 1rem); border-top: 1px solid rgba(162,136,56,0.16); opacity: 1; transform: none; pointer-events: auto; transition: border-color 220ms ease; }
.team-tags span { display: inline-grid; place-items: center; min-height: 28px; border: 1px solid rgba(255,255,255,0.12); border-radius: 8px; background: rgba(255,255,255,0.04); padding: 0 0.58rem; font-family: Arial, sans-serif; font-size: 0.68rem; font-weight: 700; color: rgba(230,235,238,0.68); }
@media (prefers-reduced-motion: reduce) { .team-card, .team-card .team-tags { transition: none; } .team-card:hover { transform: none; } }
.site-footer { position: relative; z-index: 30; padding: clamp(3rem, 6svh, 5rem) var(--section-x) clamp(1.25rem, 3svh, 1.8rem); background: linear-gradient(180deg, #000 0%, #030505 100%); border-top: 1px solid rgba(255,255,255,0.08); overflow: hidden; }
.site-footer::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(115deg, rgba(162,136,56,0.1), transparent 34%, rgba(255,178,74,0.045) 70%, transparent); pointer-events: none; }
.site-footer--home { margin-top: -1px; padding: clamp(1.2rem, 3svh, 2rem) var(--section-x) clamp(1.3rem, 3svh, 2.1rem); background: transparent; border-top: 0; }
.site-footer--home::before { display: none; }
.footer-inner { width: min(1180px, 100%); margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.footer-brand { color: #fff; font-size: clamp(1.05rem, 1.8vw, 1.35rem); line-height: 1; font-weight: 900; text-transform: none; }
.footer-actions { display: flex; align-items: center; justify-content: flex-end; gap: 0.55rem; min-width: 0; }
.footer-lead { max-width: 34rem; margin: 1.2rem 0 1.4rem; font-family: Arial, sans-serif; font-size: clamp(0.98rem, 1.3vw, 1.08rem); line-height: 1.7; color: rgba(230,235,238,0.67); }
.footer-column h2, .footer-column h3 { margin-bottom: 0.9rem; font-size: 0.78rem; font-weight: 900; color: rgba(255,255,255,0.92); text-transform: uppercase; }
.footer-column a, .footer-column span { display: block; margin-bottom: 0.62rem; font-family: Arial, sans-serif; font-size: 0.86rem; line-height: 1.42; color: rgba(230,235,238,0.58); text-decoration: none; }
.footer-column a:hover, .footer-column a:focus-visible { color: #fff; outline: none; }
.footer-cta, .footer-secondary { width: max-content; min-height: 42px; padding: 0 1rem; text-transform: none; }
.footer-bottom { width: min(1180px, 100%); margin: clamp(2rem, 4vw, 3rem) auto 0; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,0.1); display: flex; align-items: center; justify-content: space-between; gap: 1rem; font-family: Arial, sans-serif; font-size: 0.78rem; color: rgba(230,235,238,0.44); }
.footer-links { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0.8rem; }
.footer-bottom a { color: rgba(230,235,238,0.62); text-decoration: none; }
.footer-bottom a:hover, .footer-bottom a:focus-visible { color: #fff; outline: none; }
.footer-bottom .footer-admin-link { color: rgba(230,235,238,0.34); font-size: 0.68rem; font-weight: 800; text-transform: uppercase; }
.footer-bottom .footer-admin-link:hover, .footer-bottom .footer-admin-link:focus-visible { color: rgba(255,255,255,0.72); }
.site-footer--home .footer-bottom { margin-top: 0.95rem; padding-top: 0.8rem; }
.flash-stack { position: fixed; top: calc(clamp(0.75rem, 2vw, 1.25rem) + 76px); right: clamp(1rem, 4vw, 2rem); z-index: 140; display: grid; gap: 0.65rem; width: min(420px, calc(100% - 2rem)); pointer-events: none; }
.flash-message { overflow: hidden; max-height: 240px; border: 1px solid rgba(255,255,255,0.14); border-radius: 8px; background: rgba(3,10,11,0.92); box-shadow: 0 18px 60px rgba(0,0,0,0.36); backdrop-filter: blur(18px); padding: 0.9rem 1rem; font-family: Arial, sans-serif; font-size: 0.88rem; line-height: 1.45; color: rgba(255,255,255,0.88); animation: flashAutoHide 4.8s ease forwards; will-change: opacity, transform, max-height, padding; }
.flash-message--success { border-color: rgba(194,154,66,0.42); }
.flash-message--error { border-color: rgba(255,112,112,0.45); }
@keyframes flashAutoHide { 0%, 82% { visibility: visible; opacity: 1; transform: translateY(0); max-height: 240px; padding-top: 0.9rem; padding-bottom: 0.9rem; border-width: 1px; } 100% { visibility: hidden; opacity: 0; transform: translateY(-4px); max-height: 0; padding-top: 0; padding-bottom: 0; border-width: 0; } }
@keyframes flashAutoHideReduced { 0%, 99% { visibility: visible; opacity: 1; max-height: 240px; padding-top: 0.9rem; padding-bottom: 0.9rem; border-width: 1px; } 100% { visibility: hidden; opacity: 0; max-height: 0; padding-top: 0; padding-bottom: 0; border-width: 0; } }
@media (prefers-reduced-motion: reduce) { .flash-message { animation-name: flashAutoHideReduced; } }
.korvix-modal { position: fixed; inset: 0; z-index: 120; display: none; align-items: center; justify-content: center; padding: clamp(1rem, 3vw, 2rem); }
.korvix-modal.is-open { display: flex; }
.korvix-modal__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,0.76); backdrop-filter: blur(12px); }
.korvix-modal__panel { position: relative; z-index: 1; width: min(560px, 100%); max-height: min(820px, calc(100vh - 2rem)); overflow: auto; border: 1px solid rgba(255,255,255,0.14); border-radius: 8px; background: linear-gradient(145deg, rgba(8,15,16,0.98), rgba(3,5,6,0.98)); box-shadow: 0 32px 110px rgba(0,0,0,0.56); padding: clamp(1.25rem, 3vw, 2rem); }
.korvix-modal--wide .korvix-modal__panel { width: min(860px, 100%); }
.korvix-modal__close { position: absolute; z-index: 2; top: 0.9rem; right: 0.9rem; display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid rgba(255,255,255,0.13); border-radius: 8px; background: rgba(255,255,255,0.04); color: #fff; font-family: Arial, sans-serif; font-size: 1.4rem; line-height: 1; cursor: pointer; }
.korvix-modal__close:hover, .korvix-modal__close:focus-visible { border-color: rgba(255,255,255,0.35); outline: none; }
.korvix-modal__panel h2, .portal-head h1, .portal-head h2 { font-size: clamp(2rem, 5vw, 4.5rem); line-height: 0.95; font-weight: 900; color: #fff; }
.korvix-modal__panel p, .portal-panel p { font-family: Arial, sans-serif; font-size: 0.96rem; line-height: 1.65; color: rgba(230,235,238,0.68); }
.portal-kicker { display: block; margin-bottom: 0.75rem; font-size: 0.72rem; font-weight: 900; color: rgba(214,190,145,0.66); text-transform: uppercase; }
.portal-form, .quiz-form, .manager-form { display: grid; gap: 1rem; margin-top: 1.25rem; }
.portal-form label, .quiz-contact-grid label, .quiz-input-label, .manager-form label { display: grid; gap: 0.42rem; font-family: Arial, sans-serif; font-size: 0.78rem; font-weight: 700; color: rgba(230,235,238,0.64); }
.portal-form input, .portal-form textarea, .quiz-contact-grid input, .quiz-input-label input, .quiz-input-label textarea, .manager-form input, .manager-form select, .manager-form textarea, .manager-row input { width: 100%; min-height: 44px; border: 1px solid rgba(255,255,255,0.13); border-radius: 8px; background: rgba(255,255,255,0.045); color: #fff; font-family: Arial, sans-serif; font-size: 0.92rem; padding: 0 0.82rem; outline: none; }
.portal-form textarea, .quiz-input-label textarea, .manager-form textarea { min-height: 104px; padding: 0.8rem; resize: vertical; }
.portal-form input:focus, .portal-form textarea:focus, .quiz-contact-grid input:focus, .quiz-input-label input:focus, .quiz-input-label textarea:focus, .manager-form input:focus, .manager-form select:focus, .manager-form textarea:focus, .manager-row input:focus { border-color: rgba(226,181,84,0.5); box-shadow: 0 0 0 3px rgba(162,136,56,0.12); }
.portal-register-callout { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-top: 1.15rem; padding-top: 1.15rem; border-top: 1px solid rgba(255,255,255,0.1); }
.portal-register-callout p { margin: 0; font-size: 0.88rem; line-height: 1.45; }
.portal-register-callout .portal-button { flex: 0 0 auto; }
.portal-button { display: inline-grid; place-items: center; min-height: 42px; border: 1px solid rgba(255,255,255,0.14); border-radius: 8px; background: rgba(255,255,255,0.05); color: #fff; font-family: Arial, sans-serif; font-size: 0.82rem; font-weight: 800; text-align: center; text-decoration: none; cursor: pointer; padding: 0 1rem; transition: transform 180ms ease, border-color 180ms ease, background 180ms ease; }
.portal-button:hover, .portal-button:focus-visible { transform: translateY(-1px); border-color: rgba(255,255,255,0.4); outline: none; }
.portal-button:disabled { opacity: 0.45; cursor: not-allowed; transform: none; }
.portal-button--primary { border-color: rgba(194,154,66,0.42); background: linear-gradient(135deg, rgba(194,154,66,0.16), rgba(255,179,70,0.1)); }
.portal-button--danger { border-color: rgba(255,112,112,0.38); background: rgba(255,112,112,0.08); }
.quiz-head, .portal-head, .request-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 1.2rem; }
.quiz-counter, .portal-status { display: inline-grid; place-items: center; min-height: 34px; border: 1px solid rgba(194,154,66,0.32); border-radius: 8px; background: rgba(162,136,56,0.1); padding: 0 0.75rem; font-family: Arial, sans-serif; font-size: 0.78rem; font-weight: 800; color: rgba(255,255,255,0.84); white-space: nowrap; }
.quiz-step { display: none; border: 0; min-inline-size: 0; }
.quiz-step.is-active { display: block; }
.quiz-step legend { margin-bottom: 0.85rem; font-size: clamp(1.35rem, 2.6vw, 2.1rem); line-height: 1.1; font-weight: 900; color: #fff; }
.quiz-step-note, .quiz-note { margin: -0.25rem 0 0; font-family: Arial, sans-serif; font-size: 0.82rem; line-height: 1.45; color: rgba(230,235,238,0.62); }
.quiz-fields { display: grid; gap: 1rem; }
.quiz-field { display: grid; gap: 0.65rem; }
.quiz-field-label { margin: 0; font-family: Arial, sans-serif; font-size: 0.78rem; font-weight: 800; color: rgba(230,235,238,0.64); }
.quiz-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; }
.quiz-options--compact { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.quiz-option { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 0.7rem; min-height: 58px; border: 1px solid rgba(255,255,255,0.12); border-radius: 8px; background: rgba(255,255,255,0.035); padding: 0.8rem; cursor: pointer; }
.quiz-option input { accent-color: #c89442; }
.quiz-option span { font-family: Arial, sans-serif; font-size: 0.9rem; line-height: 1.35; color: rgba(255,255,255,0.84); }
.quiz-option strong { display: block; font: inherit; color: inherit; }
.quiz-option small { display: block; margin-top: 0.25rem; font-size: 0.78rem; line-height: 1.35; color: rgba(230,235,238,0.56); }
.quiz-option--stacked { align-items: start; }
.quiz-option.is-included { opacity: 0.72; }
.quiz-option:has(input:checked) { border-color: rgba(226,181,84,0.5); background: rgba(162,136,56,0.12); }
.quiz-contact-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.85rem; }
.quiz-error { margin: 0; color: rgba(255,152,152,0.9) !important; }
.quiz-actions { display: flex; justify-content: flex-end; gap: 0.75rem; }
.portal-section { position: relative; z-index: 30; padding: clamp(5rem, 9vw, 8rem) clamp(1.35rem, 7vw, 7rem); background: linear-gradient(180deg, #000 0%, #040707 48%, #000 100%); border-top: 1px solid rgba(255,255,255,0.08); }
.portal-section::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(115deg, rgba(162,136,56,0.1), transparent 32%, rgba(255,178,74,0.045) 72%, transparent); pointer-events: none; }
.portal-inner { width: min(1180px, 100%); margin: 0 auto; }
.portal-inner--wide { width: min(1320px, 100%); }
.portal-grid { display: grid; gap: 1rem; margin-top: 2rem; }
.portal-grid--client { grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.7fr); }
.portal-panel, .manager-request { border: 1px solid rgba(255,255,255,0.12); border-radius: 8px; background: rgba(255,255,255,0.026); box-shadow: 0 24px 80px rgba(0,0,0,0.26); padding: clamp(1.15rem, 2vw, 1.6rem); }
.portal-panel h3, .manager-request h3 { margin-bottom: 1rem; font-size: clamp(1.25rem, 2vw, 1.75rem); line-height: 1.12; font-weight: 900; color: #fff; }
.progress-list { display: grid; gap: 0.7rem; }
.progress-item { display: grid; grid-template-columns: 38px minmax(0, 1fr); align-items: center; gap: 0.8rem; border: 1px solid rgba(255,255,255,0.1); border-radius: 8px; background: rgba(255,255,255,0.03); padding: 0.72rem; }
.progress-item span { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 8px; background: rgba(255,255,255,0.07); font-family: Arial, sans-serif; font-weight: 900; color: rgba(255,255,255,0.72); }
.progress-item strong { font-family: Arial, sans-serif; font-size: 0.94rem; color: rgba(255,255,255,0.7); }
.progress-item p { margin: 0.25rem 0 0; font-size: 0.86rem; line-height: 1.45; }
.progress-item.is-complete, .progress-item.is-current { border-color: rgba(194,154,66,0.42); background: rgba(162,136,56,0.1); }
.progress-item.is-current span { background: rgba(162,136,56,0.18); color: #fff; }
.progress-item.is-current strong { color: #fff; }
.portal-link { display: inline-grid; place-items: center; min-height: 42px; margin-top: 1rem; border: 1px solid rgba(194,154,66,0.42); border-radius: 8px; background: rgba(162,136,56,0.12); padding: 0 1rem; font-family: Arial, sans-serif; font-size: 0.84rem; font-weight: 800; color: #fff; text-decoration: none; }
.portal-meta { display: grid; gap: 0.7rem; margin-top: 1.2rem; font-family: Arial, sans-serif; }
.portal-meta div { display: flex; justify-content: space-between; gap: 1rem; border-top: 1px solid rgba(255,255,255,0.08); padding-top: 0.7rem; }
.portal-meta dt { color: rgba(230,235,238,0.52); }
.portal-meta dd { color: rgba(255,255,255,0.86); }
.privacy-section { min-height: 100svh; padding-top: clamp(7rem, 12vw, 9rem); }
.privacy-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(240px, 0.36fr); gap: 1rem; margin-top: 2rem; align-items: start; }
.privacy-head .portal-status { align-self: flex-start; }
.privacy-content { display: grid; gap: 1.35rem; }
.privacy-block { display: grid; gap: 0.65rem; padding-top: 1.15rem; border-top: 1px solid rgba(255,255,255,0.1); }
.privacy-block:first-child { padding-top: 0; border-top: 0; }
.privacy-block h3, .privacy-summary h3 { margin: 0; font-size: clamp(1.12rem, 1.8vw, 1.45rem); line-height: 1.2; font-weight: 900; color: #fff; }
.privacy-content p, .privacy-content li, .privacy-summary p { font-family: Arial, sans-serif; font-size: 0.95rem; line-height: 1.68; color: rgba(230,235,238,0.7); }
.privacy-content ul { display: grid; gap: 0.48rem; padding-left: 1.2rem; }
.privacy-content a { color: #ffe2a0; text-decoration: none; }
.privacy-content a:hover, .privacy-content a:focus-visible { color: #fff; outline: none; }
.privacy-summary { position: sticky; top: 112px; display: grid; gap: 0.75rem; }
.privacy-summary a { display: block; min-height: 34px; border-top: 1px solid rgba(255,255,255,0.08); padding-top: 0.7rem; font-family: Arial, sans-serif; font-size: 0.84rem; font-weight: 800; color: rgba(230,235,238,0.68); text-decoration: none; }
.privacy-summary a:hover, .privacy-summary a:focus-visible { color: #fff; outline: none; }
.manager-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 380px); gap: 1rem; margin-top: 2rem; align-items: start; }
.manager-requests { display: grid; gap: 1rem; }
.request-head strong { font-size: clamp(1.35rem, 2vw, 1.9rem); color: #fff; white-space: nowrap; }
.request-head p { margin: 0; }
.request-estimate { display: grid; justify-items: end; gap: 0.25rem; }
.request-estimate span { font-family: Arial, sans-serif; font-size: 0.76rem; font-weight: 800; color: rgba(230,235,238,0.58); white-space: nowrap; }
.answer-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.7rem; margin: 1.1rem 0; }
.answer-grid div { border: 1px solid rgba(255,255,255,0.09); border-radius: 8px; background: rgba(255,255,255,0.026); padding: 0.8rem; min-width: 0; }
.answer-grid span { display: block; margin-bottom: 0.35rem; font-family: Arial, sans-serif; font-size: 0.72rem; color: rgba(230,235,238,0.52); }
.answer-grid strong { display: block; overflow-wrap: anywhere; font-family: Arial, sans-serif; font-size: 0.88rem; line-height: 1.42; color: rgba(255,255,255,0.88); }
.service-pill-list { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-bottom: 1rem; }
.service-pill-list span { display: inline-grid; place-items: center; min-height: 30px; border: 1px solid rgba(194,154,66,0.28); border-radius: 8px; background: rgba(162,136,56,0.1); padding: 0 0.7rem; font-family: Arial, sans-serif; font-size: 0.72rem; font-weight: 800; color: rgba(255,255,255,0.78); }
.design-file-list { display: flex; flex-wrap: wrap; align-items: center; gap: 0.45rem; margin-bottom: 1rem; border: 1px solid rgba(255,255,255,0.08); border-radius: 8px; background: rgba(255,255,255,0.026); padding: 0.72rem; }
.design-file-list > span { flex-basis: 100%; font-family: Arial, sans-serif; font-size: 0.72rem; font-weight: 800; color: rgba(230,235,238,0.5); }
.design-file-list a { border: 1px solid rgba(255,255,255,0.12); border-radius: 8px; background: rgba(255,255,255,0.04); padding: 0.45rem 0.65rem; font-family: Arial, sans-serif; font-size: 0.78rem; font-weight: 800; color: rgba(255,255,255,0.86); text-decoration: none; }
.design-file-list a:hover, .design-file-list a:focus-visible { border-color: rgba(226,181,84,0.42); outline: none; }
.manager-form-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.85rem; }
.manager-admin { position: sticky; top: 110px; }
.manager-list { display: grid; gap: 0.7rem; margin-bottom: 1.3rem; }
.manager-row { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0.55rem; border: 1px solid rgba(255,255,255,0.09); border-radius: 8px; background: rgba(255,255,255,0.026); padding: 0.75rem; }
.manager-row strong { overflow-wrap: anywhere; font-family: Arial, sans-serif; color: #fff; }
.crm-section .portal-head h1 { max-width: 11ch; }
.crm-tabs { display: flex; flex-wrap: wrap; gap: 0.55rem; margin-top: 1.4rem; }
.crm-tab { display: inline-grid; place-items: center; min-height: 38px; border: 1px solid rgba(162,136,56,0.2); border-radius: 8px; background: rgba(255,255,255,0.028); padding: 0 0.85rem; font-family: Arial, sans-serif; font-size: 0.8rem; font-weight: 800; color: rgba(224,236,244,0.72); text-decoration: none; }
.crm-tab:hover, .crm-tab:focus-visible, .crm-tab.is-active { border-color: rgba(226,181,84,0.36); background: rgba(162,136,56,0.12); color: #fff; outline: none; }
.crm-stat-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 0.85rem; margin-top: 1.35rem; }
.crm-stat { min-width: 0; border: 1px solid rgba(162,136,56,0.2); border-radius: 8px; background: rgba(28,23,18,0.58); padding: 1rem; }
.crm-stat span, .crm-badge, .crm-mini-grid span, .crm-summary span, .crm-signal span, .crm-lead-card span, .crm-lead-card small, .crm-signal small { font-family: Arial, sans-serif; color: rgba(205,224,236,0.48); }
.crm-stat span { display: block; margin-bottom: 0.55rem; font-size: 0.72rem; font-weight: 800; text-transform: uppercase; }
.crm-stat strong { display: block; color: #fff; font-size: clamp(1.5rem, 3vw, 2.45rem); line-height: 1; font-weight: 900; }
.crm-toolbar { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 0.75rem; align-items: end; margin-top: 1.35rem; }
.crm-toolbar label { display: grid; gap: 0.42rem; font-family: Arial, sans-serif; font-size: 0.76rem; font-weight: 800; color: rgba(205,224,236,0.56); }
.crm-toolbar input, .crm-toolbar select { width: 100%; min-height: 42px; border: 1px solid rgba(162,136,56,0.18); border-radius: 8px; background: rgba(255,255,255,0.032); color: #fff; font-family: Arial, sans-serif; font-size: 0.9rem; padding: 0 0.78rem; outline: none; }
.crm-toolbar input:focus, .crm-toolbar select:focus { border-color: rgba(226,181,84,0.5); box-shadow: 0 0 0 3px rgba(162,136,56,0.09); }
.crm-toolbar-actions { display: flex; align-items: center; gap: 0.55rem; }
.crm-detail-grid { display: grid; grid-template-columns: minmax(280px, 0.36fr) minmax(0, 1fr); gap: 1rem; margin-top: 1rem; align-items: start; }
.crm-lead-list { position: sticky; top: 104px; max-height: calc(100svh - 124px); overflow: auto; }
.crm-lead-card { display: grid; gap: 0.35rem; border: 1px solid rgba(162,136,56,0.2); border-radius: 8px; background: rgba(255,255,255,0.026); padding: 0.8rem; color: inherit; text-decoration: none; }
.crm-lead-card + .crm-lead-card { margin-top: 0.65rem; }
.crm-lead-card:hover, .crm-lead-card:focus-visible, .crm-lead-card.is-active { border-color: rgba(226,181,84,0.36); background: rgba(162,136,56,0.1); outline: none; }
.crm-lead-card strong { overflow-wrap: anywhere; color: #fff; font-family: Arial, sans-serif; font-size: 0.94rem; line-height: 1.3; }
.crm-lead-card span, .crm-lead-card small { font-size: 0.78rem; line-height: 1.35; overflow-wrap: anywhere; }
.crm-card-head, .crm-column-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.crm-card-head h3 { margin: 0.45rem 0 0; }
.crm-badge { display: inline-grid; place-items: center; min-height: 28px; border: 1px solid rgba(194,154,66,0.24); border-radius: 8px; background: rgba(162,136,56,0.1); padding: 0 0.62rem; font-size: 0.72rem; font-weight: 900; }
.crm-badge--muted { border-color: rgba(255,255,255,0.11); background: rgba(255,255,255,0.034); color: rgba(230,235,238,0.62); }
.crm-lead-meta { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-top: 0.4rem; }
.crm-mini-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.65rem; margin: 1rem 0; }
.crm-mini-grid div, .crm-summary { border: 1px solid rgba(162,136,56,0.16); border-radius: 8px; background: rgba(255,255,255,0.024); padding: 0.75rem; min-width: 0; }
.crm-mini-grid span, .crm-summary span { display: block; margin-bottom: 0.3rem; font-size: 0.72rem; font-weight: 800; }
.crm-mini-grid strong, .crm-summary strong { display: block; overflow-wrap: anywhere; color: rgba(255,255,255,0.88); font-family: Arial, sans-serif; font-size: 0.88rem; line-height: 1.38; }
.crm-summary { display: grid; gap: 0.55rem; margin: 1rem 0; }
.crm-summary p { margin: 0; }
.crm-two-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 1.2rem 0; }
.crm-two-columns h3, .crm-lead-detail > h3 { margin-top: 1.35rem; font-size: clamp(1.05rem, 1.5vw, 1.28rem); }
.crm-signal-list { display: grid; gap: 0.62rem; }
.crm-signal-list--dense { gap: 0.5rem; }
.crm-signal { display: grid; gap: 0.32rem; border: 1px solid rgba(162,136,56,0.16); border-radius: 8px; background: rgba(255,255,255,0.024); padding: 0.78rem; }
.crm-signal span { font-size: 0.72rem; font-weight: 900; text-transform: uppercase; }
.crm-signal strong { overflow-wrap: anywhere; color: rgba(255,255,255,0.88); font-family: Arial, sans-serif; font-size: 0.88rem; line-height: 1.42; }
.crm-signal small { font-size: 0.76rem; line-height: 1.35; }
.crm-signal a { color: rgba(255,222,160,0.96); text-decoration: none; }
.crm-board { display: grid; grid-template-columns: repeat(6, minmax(220px, 1fr)); gap: 0.85rem; margin-top: 1.35rem; overflow-x: auto; padding-bottom: 0.35rem; }
.crm-column { min-width: 220px; border: 1px solid rgba(162,136,56,0.2); border-radius: 8px; background: rgba(28,23,18,0.58); padding: 0.85rem; }
.crm-column-head h3 { margin: 0; color: #fff; font-size: 1rem; line-height: 1.2; }
.crm-column-head span { display: grid; place-items: center; min-width: 30px; min-height: 30px; border-radius: 8px; background: rgba(162,136,56,0.12); color: #fff; font-family: Arial, sans-serif; font-weight: 900; }
.crm-inline-form { margin-top: 0.6rem; }
.crm-inline-form .portal-button { min-height: 34px; padding: 0 0.72rem; font-size: 0.74rem; }
.crm-empty { margin: 0; color: rgba(205,224,236,0.58); }
:root { --space-cyan: rgba(194, 154, 66, 0.82); --space-mint: rgba(255, 214, 126, 0.72); --space-violet: rgba(112, 74, 34, 0.68); --space-panel: rgba(28, 23, 18, 0.58); --space-panel-strong: rgba(35, 27, 18, 0.78); --space-line: rgba(162, 136, 56, 0.24); --space-line-strong: rgba(194, 154, 66, 0.48); --space-copy: rgba(238, 226, 204, 0.68); --space-muted: rgba(214, 190, 145, 0.5); --korvix-gold: #c89442; --korvix-gold-strong: #ffe2a0; --korvix-gold-soft: rgba(194,154,66,0.72); --korvix-bronze: #664a2a; --korvix-mist: rgba(92,86,69,0.28); --korvix-gold-glow: 0 0 28px rgba(194,154,66,0.26); --korvix-flare: radial-gradient(circle, #fff0c2 0 1px, rgba(226,181,84,0.72) 2px, rgba(162,136,56,0.22) 12px, transparent 36px); --section-atmosphere: radial-gradient(ellipse at 76% 28%, rgba(119,111,90,0.14), transparent 38%), radial-gradient(ellipse at 18% 74%, rgba(102,74,42,0.12), transparent 36%), linear-gradient(180deg, rgba(10,8,9,0.02), rgba(21,19,19,0.12) 50%, rgba(8,6,5,0.02)); --section-dust: radial-gradient(circle at 18px 26px, rgba(255,240,194,0.18) 0 1px, transparent 1.5px), radial-gradient(circle at 148px 92px, rgba(194,154,66,0.13) 0 1px, transparent 1.45px), linear-gradient(115deg, transparent 0%, rgba(119,111,90,0.06) 56%, transparent 76%); }
.about-section, .where-section, .services-section, .reviews-section, .cases-section, .team-section, .portal-section, .calculator-section, .site-footer { background: transparent; border-top: 0; box-shadow: none; }
.about-section::before, .where-section::before, .services-section::before, .reviews-section::before, .cases-section::before, .team-section::before, .portal-section::before, .calculator-section::before, .site-footer::before { content: ""; position: absolute; inset: 0; z-index: -1; display: block; background: var(--section-atmosphere); -webkit-mask-image: var(--page-transition-mask); mask-image: var(--page-transition-mask); pointer-events: none; }
.about-section::after, .where-section::after, .services-section::after, .reviews-section::after, .cases-section::after, .team-section::after, .portal-section::after, .calculator-section::after, .site-footer::after { content: ""; position: absolute; inset: 0; z-index: -1; display: block; opacity: 0.22; background-image: var(--section-dust); background-size: 260px 260px, 420px 420px, auto; -webkit-mask-image: var(--page-transition-mask); mask-image: var(--page-transition-mask); pointer-events: none; }
.about-label, .where-label, .services-label, .portal-kicker { color: rgba(214,190,145,0.66); letter-spacing: 0.04em; }
.about-copy h2, .where-head h2, .services-head h2, .reviews-head h2, .cases-head h2, .team-head h2, .korvix-modal__panel h2, .portal-head h1, .portal-head h2 { color: rgba(255,248,232,0.96); text-shadow: 0 0 28px rgba(194,154,66,0.1); }
.about-label, .services-label, .about-copy h2, .services-head h2, .reviews-head h2, .cases-head h2, .team-head h2, .footer-brand, .footer-cta, .footer-secondary { color: var(--korvix-gold); text-shadow: var(--korvix-gold-glow); }
.about-copy h2, .services-head h2 { color: rgba(255,255,255,0.97); text-shadow: 0 0 24px rgba(255,255,255,0.08), 0 0 36px rgba(255,215,111,0.08); }
.footer-cta, .footer-secondary { border-color: rgba(255,215,111,0.26); }
.footer-cta:hover, .footer-cta:focus-visible, .footer-secondary:hover, .footer-secondary:focus-visible { color: var(--korvix-gold-strong); border-color: rgba(255,215,111,0.42); background: rgba(255,184,70,0.08); }
.about-copy p, .where-head p, .services-head p, .reviews-head p, .cases-head p, .team-head p, .case-detail p, .team-card p, .korvix-modal__panel p, .portal-panel p, .privacy-content p, .privacy-content li, .privacy-summary p { color: var(--space-copy); }
.about-primary, .footer-cta, .portal-button--primary, .portal-link { border-color: var(--space-line-strong); background: linear-gradient(135deg, rgba(194,154,66,0.14), rgba(102,74,42,0.16)); box-shadow: none; }
.about-secondary, .footer-secondary, .portal-button { border-color: var(--space-line); background: rgba(255,255,255,0.028); }
.about-primary:hover, .about-primary:focus-visible, .about-secondary:hover, .about-secondary:focus-visible, .footer-cta:hover, .footer-cta:focus-visible, .footer-secondary:hover, .footer-secondary:focus-visible, .portal-button:hover, .portal-button:focus-visible, .portal-link:hover, .portal-link:focus-visible { border-color: rgba(226,181,84,0.5); background: rgba(162,136,56,0.12); }
.site-footer--home .footer-cta, .site-footer--home .footer-secondary { border-color: rgba(255,215,111,0.26); }
.site-footer--home .footer-cta:hover, .site-footer--home .footer-cta:focus-visible, .site-footer--home .footer-secondary:hover, .site-footer--home .footer-secondary:focus-visible { color: var(--korvix-gold-strong); border-color: rgba(255,215,111,0.42); background: rgba(255,184,70,0.08); }
.about-details, .flow-output, .review-meta, .case-service-panel, .team-tags, .portal-register-callout, .footer-bottom, .privacy-block, .portal-meta div { border-color: rgba(162,136,56,0.16); }
.about-detail span, .flow-panel-head span, .flow-step p, .flow-output span, .service-bottom span, .review-company span, .review-meta span, .case-meta, .case-client-main span, .case-package span, .team-meta, .team-tags span, .footer-column a, .footer-column span, .footer-bottom, .footer-bottom a, .privacy-summary a, .portal-meta dt, .request-estimate span, .answer-grid span, .design-file-list > span { color: var(--space-muted); }
.footer-bottom .footer-admin-link { color: rgba(214,190,145,0.36); }
.project-flow::before { display: none; }
.flow-panel, .service-card, .review-card, .case-client-button, .case-detail, .team-card, .portal-panel, .manager-request, .flash-message, .korvix-modal__panel, .progress-item, .answer-grid div, .design-file-list, .manager-row { border-color: var(--space-line); background: var(--space-panel); box-shadow: none; }
.flow-panel::before, .review-card::before, .case-detail::before, .team-card::before { background: linear-gradient(145deg, rgba(255,240,194,0.048), transparent 48%), radial-gradient(ellipse at 78% 16%, rgba(162,136,56,0.18), transparent 36%), linear-gradient(115deg, rgba(92,86,69,0.12), transparent 62%); background-repeat: no-repeat; background-size: auto; opacity: 1; }
.flow-panel::after, .service-card::before, .review-card::after, .case-detail::after, .team-card::after, .korvix-modal__panel::before { content: ""; position: absolute; right: clamp(0.7rem, 4vw, 2.4rem); bottom: clamp(0.7rem, 3vw, 2rem); width: 92px; height: 92px; background: var(--korvix-flare); opacity: 0.28; filter: blur(0.2px); pointer-events: none; transform: translate3d(0,0,0); }
.service-card::before { right: auto; left: 11%; top: 14%; bottom: auto; opacity: 0.18; }
.review-card::after { display: block; right: 8%; bottom: 10%; opacity: 0.2; }
.case-detail::after, .team-card::after { opacity: 0.16; }
.flow-step { border-top-color: rgba(162,136,56,0.16); }
.flow-step::before { background: linear-gradient(rgba(194,154,66,0.32), rgba(255,240,194,0.05)); }
.flow-index, .case-client-index, .progress-item span { border-color: rgba(162,136,56,0.22); background: rgba(255,240,194,0.04); color: rgba(255,232,176,0.78); }
.flow-step.is-active .flow-index, .progress-item.is-current span { border-color: var(--space-line-strong); background: rgba(162,136,56,0.14); }
.where-section { margin-top: calc(-1 * var(--hero-where-overlap)); padding-top: calc(clamp(7rem, 15svh, 10rem) + var(--hero-where-overlap)); box-shadow: none; isolation: isolate; }
.where-section::before, .where-section::after { z-index: 0; }
.where-head, .where-planet-stage { position: relative; z-index: 1; }
.services-stage { filter: drop-shadow(0 24px 70px rgba(0,0,0,0.42)); }
.service-card:hover, .service-card:focus-visible, .case-client-button:hover, .case-client-button:focus-visible, .case-client-button.is-active { border-color: rgba(226,181,84,0.36); background: rgba(162,136,56,0.1); }
.service-card.is-active, .review-card.is-active { border-color: rgba(226,181,84,0.42); background: linear-gradient(145deg, rgba(38,29,18,0.82), rgba(14,11,9,0.8)); box-shadow: 0 0 46px rgba(194,154,66,0.1); }
.service-card.is-planned::after { display: none; }
.service-tool { background: rgba(162,136,56,0.1); color: rgba(255,240,194,0.88); }
.service-badge { border-color: rgba(162,136,56,0.32); background: rgba(102,74,42,0.14); color: rgba(255,222,160,0.86); }
.partner-mark { color: rgba(226,214,194,0.34); }
.partner-mark::after { display: none; }
.partner-mark.is-active { color: rgba(245,250,255,0.94); }
.case-client-button.is-active { transform: none; }
.case-detail:nth-child(2)::before, .case-detail:nth-child(4)::before, .team-card:nth-child(2)::before, .team-card:nth-child(3)::before { background: linear-gradient(145deg, rgba(255,240,194,0.04), transparent 48%), radial-gradient(ellipse at 78% 16%, rgba(112,74,34,0.18), transparent 36%); }
.services-section, .reviews-section { isolation: isolate; background: transparent; }
.services-visual, .services-content, .reviews-head, .reviews-carousel { position: relative; z-index: 1; }
.services-section::before, .reviews-section::before { content: ""; position: absolute; inset: -10% 0; z-index: 0; display: block; opacity: 0.58; pointer-events: none; -webkit-mask-image: var(--page-transition-mask); mask-image: var(--page-transition-mask); }
.services-section::after, .reviews-section::after { content: ""; position: absolute; inset: -14%; z-index: 0; display: block; width: auto; height: auto; border: 0; opacity: 0.42; transform: none; pointer-events: none; background-repeat: repeat; background-image: radial-gradient(circle at 17px 31px, rgba(255,248,224,0.42) 0 1px, transparent 1.55px), radial-gradient(circle at 94px 138px, rgba(194,154,66,0.22) 0 1px, transparent 1.45px), radial-gradient(circle at 184px 76px, rgba(119,111,90,0.22) 0 1px, transparent 1.5px), radial-gradient(circle at 263px 196px, rgba(255,232,176,0.16) 0 1px, transparent 1.35px); background-size: 260px 230px, 360px 320px, 510px 430px, 680px 590px; -webkit-mask-image: var(--page-transition-mask); mask-image: var(--page-transition-mask); animation: referenceStarDrift 58s linear infinite; will-change: background-position; }
.services-section::before { background: radial-gradient(circle at 84% 22%, rgba(255,245,203,0.58) 0 2px, rgba(226,181,84,0.24) 5px, rgba(162,136,56,0.1) 16px, transparent 54px), radial-gradient(circle at 13% 82%, rgba(255,186,118,0.28) 0 1px, rgba(194,154,66,0.14) 6px, transparent 42px), radial-gradient(ellipse at 91% 48%, rgba(119,111,90,0.3), rgba(92,86,69,0.16) 30%, rgba(102,74,42,0.08) 52%, transparent 74%), radial-gradient(ellipse at 34% 32%, rgba(64,60,50,0.16), transparent 50%), linear-gradient(110deg, rgba(10,8,9,0.04), rgba(64,60,50,0.16)); }
.reviews-section::before { background: radial-gradient(circle at 72% 18%, rgba(255,248,224,0.58) 0 2px, rgba(226,181,84,0.22) 6px, rgba(162,136,56,0.09) 17px, transparent 56px), radial-gradient(circle at 18% 70%, rgba(255,183,111,0.3) 0 1px, rgba(194,154,66,0.15) 7px, transparent 48px), radial-gradient(ellipse at 82% 54%, rgba(119,111,90,0.32), rgba(92,86,69,0.16) 32%, rgba(102,74,42,0.08) 54%, transparent 76%), radial-gradient(ellipse at 28% 18%, rgba(46,43,39,0.18), transparent 56%), linear-gradient(105deg, rgba(10,8,9,0.04), rgba(64,60,50,0.15)); }
.service-card, .review-card { border-color: rgba(162,136,56,0.36); background: linear-gradient(180deg, rgba(13,12,11,0.52), rgba(42,38,30,0.28)); box-shadow: inset 0 0 0 1px rgba(255,240,194,0.025); }
.service-card:hover, .service-card:focus-visible, .review-card:hover, .review-card:focus-visible, .service-card.is-active, .review-card.is-active { border-color: rgba(194,154,66,0.58); background: linear-gradient(180deg, rgba(18,15,12,0.62), rgba(56,48,34,0.34)); box-shadow: inset 0 0 0 1px rgba(255,240,194,0.035), 0 0 34px rgba(162,136,56,0.1); }
.service-card::before, .review-card::before { content: ""; position: absolute; inset: 0; background: linear-gradient(145deg, rgba(255,240,194,0.044), transparent 46%), radial-gradient(ellipse at 78% 14%, rgba(162,136,56,0.16), transparent 38%); opacity: 1; pointer-events: none; }
.service-card::after, .service-card.is-planned::after, .review-card::after { content: ""; position: absolute; left: clamp(0.9rem, 1.8vw, 1.35rem); right: clamp(0.9rem, 1.8vw, 1.35rem); bottom: clamp(1rem, 2vw, 1.45rem); display: block; width: auto; height: 1px; border-radius: 999px; opacity: 0.86; transform: none; background: linear-gradient(90deg, transparent, rgba(105,97,71,0.28) 16%, rgba(162,136,56,0.62) 50%, rgba(105,97,71,0.28) 84%, transparent); -webkit-mask-image: none; mask-image: none; pointer-events: none; }
.review-card { --review-avatar-size: 44px; padding-right: max(clamp(1.1rem, 2vw, 1.8rem), calc(var(--review-avatar-size) + 1.2rem)); }
.review-avatar { position: absolute; z-index: 2; top: clamp(0.85rem, 1.5vw, 1.08rem); right: clamp(0.85rem, 1.5vw, 1.08rem); width: var(--review-avatar-size); height: var(--review-avatar-size); display: block; border-radius: 50%; object-fit: cover; background: #080707; box-shadow: 0 0 0 1px rgba(162,136,56,0.38), 0 0 22px rgba(194,154,66,0.18); pointer-events: none; }
.review-company { padding-right: calc(var(--review-avatar-size) + 0.55rem); min-height: var(--review-avatar-size); }
@keyframes referenceStarDrift { to { background-position: -260px 180px, 360px -220px, -510px -260px, 680px 360px; } }
.case-detail:nth-child(3)::before { background: linear-gradient(145deg, rgba(255,255,255,0.034), transparent 48%), radial-gradient(ellipse at 76% 18%, rgba(255,184,70,0.105), transparent 34%); }
.case-visual, .team-photo { border-color: rgba(162,136,56,0.18); background: rgba(18,14,10,0.82); }
.case-package { border-color: rgba(194,154,66,0.24); background: rgba(23,18,13,0.62); }
.case-package strong { background: rgba(162,136,56,0.18); color: rgba(255,240,194,0.96); box-shadow: none; }
.case-service-list--full { border-color: transparent; border-radius: 8px; background: rgba(255,255,255,0.02); }
.case-service-pill, .team-tags span, .service-pill-list span, .design-file-list a { border-color: rgba(162,136,56,0.16); background: rgba(255,240,194,0.026); color: rgba(238,226,204,0.74); }
.case-service-pill span { background: rgba(162,136,56,0.12); color: rgba(255,222,160,0.92); }
.case-visual::after { background: linear-gradient(180deg, transparent 62%, rgba(0,0,0,0.42)); }
.team-card::after { content: ""; position: absolute; left: clamp(0.9rem, 1.8vw, 1.35rem); right: clamp(0.9rem, 1.8vw, 1.35rem); bottom: clamp(0.95rem, 1.8vw, 1.25rem); display: block; width: auto; height: 1px; border-radius: 999px; opacity: 0.62; transform: none; background: linear-gradient(90deg, transparent, rgba(105,97,71,0.28) 16%, rgba(162,136,56,0.58) 50%, rgba(105,97,71,0.28) 84%, transparent); -webkit-mask-image: none; mask-image: none; pointer-events: none; }
.team-photo::after { background: linear-gradient(180deg, rgba(255,255,255,0.13), transparent 42%, rgba(0,0,0,0.22)); }
.site-footer::before { display: block; }
.site-footer--home { background: transparent; }
.site-footer--home::before { display: none; }
.korvix-modal__backdrop { background: rgba(0,0,0,0.82); }
.portal-form input, .portal-form textarea, .quiz-contact-grid input, .quiz-input-label input, .quiz-input-label textarea, .manager-form input, .manager-form select, .manager-form textarea, .manager-row input, .quiz-option { border-color: rgba(162,136,56,0.18); background: rgba(255,240,194,0.032); }
.portal-form input:focus, .portal-form textarea:focus, .quiz-contact-grid input:focus, .quiz-input-label input:focus, .quiz-input-label textarea:focus, .manager-form input:focus, .manager-form select:focus, .manager-form textarea:focus, .manager-row input:focus, .quiz-option:has(input:checked) { border-color: rgba(226,181,84,0.5); box-shadow: 0 0 0 3px rgba(194,154,66,0.08); }
.quiz-option:has(input:checked), .progress-item.is-complete, .progress-item.is-current { background: rgba(162,136,56,0.1); }
.quiz-option input { accent-color: rgb(200, 148, 66); }
.privacy-content a, .case-title-link:hover, .case-title-link:focus-visible { color: rgba(255,222,160,0.96); }
.where-section, .cases-section, .team-section { content-visibility: auto; contain-intrinsic-size: 760px; }
.site-footer { content-visibility: auto; contain-intrinsic-size: 460px; }
.site-footer--home { contain-intrinsic-size: 110px; }
.calculator-section { position: relative; z-index: 30; min-height: 100svh; padding: clamp(6.3rem, 9vw, 8.4rem) var(--section-x) var(--section-y); }
.calculator-section::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: 0.72; background-image: linear-gradient(rgba(162,136,56,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(162,136,56,0.026) 1px, transparent 1px), radial-gradient(ellipse at 76% 24%, rgba(119,111,90,0.14), transparent 38%); background-size: 58px 58px, 58px 58px, auto; -webkit-mask-image: var(--page-transition-mask); mask-image: var(--page-transition-mask); pointer-events: none; }
.calculator-shell { width: min(1240px, 100%); margin: 0 auto; }
.calculator-head { display: grid; grid-template-columns: minmax(0, 0.72fr) minmax(280px, 0.42fr); align-items: end; gap: clamp(1rem, 3vw, 2.4rem); margin-bottom: clamp(1.1rem, 3vw, 1.8rem); }
.calculator-head h1 { max-width: 12ch; color: rgba(255,248,232,0.98); font-size: clamp(2.45rem, 6.5vw, 5.25rem); line-height: 0.94; font-weight: 900; text-shadow: 0 0 34px rgba(194,154,66,0.12); }
.calculator-head p { max-width: 35rem; margin: 0; font-family: Arial, sans-serif; font-size: clamp(0.95rem, 1.2vw, 1.04rem); line-height: 1.62; color: var(--space-copy); }
.calculator-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 370px); align-items: start; gap: clamp(0.9rem, 2.3vw, 1.35rem); }
.calculator-workspace { min-width: 0; display: grid; gap: 1rem; scroll-margin-top: 6rem; border: 1px solid rgba(162,136,56,0.16); border-radius: 8px; background: linear-gradient(145deg, rgba(18,15,11,0.86), rgba(8,7,6,0.78)); box-shadow: inset 0 1px 0 rgba(255,240,194,0.035); padding: clamp(0.95rem, 2.2vw, 1.25rem); }
.calculator-stage { display: grid; gap: clamp(0.86rem, 2vw, 1.1rem); }
.calculator-stage[hidden], .calculator-questionnaire[hidden], .calculator-controls [hidden] { display: none !important; }
.calculator-stage-head { display: grid; gap: 0.38rem; max-width: 50rem; }
.calculator-stage-head span, .calculator-assistant__block span { color: rgba(255,222,160,0.82); font-family: Arial, sans-serif; font-size: 0.72rem; line-height: 1.2; font-weight: 900; text-transform: uppercase; }
.calculator-stage-head h2 { margin: 0; color: rgba(246,250,255,0.95); font-size: clamp(1.45rem, 3vw, 2.2rem); line-height: 1.04; font-weight: 900; }
.calculator-stage-head p { max-width: 42rem; margin: 0; color: rgba(205,224,236,0.66); font-family: Arial, sans-serif; font-size: 0.9rem; line-height: 1.55; }
.calculator-package-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.72rem; }
.calculator-package { position: relative; min-height: 214px; display: grid; grid-template-columns: 52px minmax(0, 1fr); align-items: start; gap: 0.82rem; border: 1px solid rgba(162,136,56,0.2); border-radius: 8px; background: rgba(255,240,194,0.032); padding: 0.96rem; cursor: pointer; transition: border-color 180ms ease, background 180ms ease, transform 180ms ease; }
.calculator-package:hover, .calculator-package:focus-within { border-color: rgba(226,181,84,0.38); background: rgba(162,136,56,0.1); transform: translateY(-1px); }
.calculator-package input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.calculator-package__code { display: grid; place-items: center; width: 52px; height: 52px; border: 1px solid rgba(162,136,56,0.26); border-radius: 8px; color: rgba(255,248,232,0.95); background: rgba(255,240,194,0.04); font-size: 1rem; line-height: 1; font-weight: 900; }
.calculator-package__copy { display: grid; gap: 0.48rem; min-width: 0; }
.calculator-package__copy strong { color: rgba(246,250,255,0.96); font-family: Arial, sans-serif; font-size: 1rem; line-height: 1.2; font-weight: 850; }
.calculator-package__copy small { color: rgba(205,224,236,0.62); font-family: Arial, sans-serif; font-size: 0.8rem; line-height: 1.44; }
.calculator-package__examples { display: flex; flex-wrap: wrap; gap: 0.34rem; padding-top: 0.12rem; }
.calculator-package__examples em { display: inline-flex; min-height: 1.55rem; align-items: center; border: 1px solid rgba(162,136,56,0.16); border-radius: 8px; background: rgba(255,240,194,0.034); color: rgba(255,239,195,0.78); padding: 0.24rem 0.42rem; font-family: Arial, sans-serif; font-size: 0.72rem; line-height: 1.1; font-style: normal; }
.calculator-package:has(input:checked) { border-color: rgba(255,215,111,0.54); background: linear-gradient(145deg, rgba(44,34,21,0.82), rgba(12,10,8,0.72)); box-shadow: inset 0 1px 0 rgba(255,240,194,0.06), 0 18px 50px rgba(102,74,42,0.16); }
.calculator-package:has(input:checked) .calculator-package__code { border-color: rgba(255,215,111,0.72); background: var(--korvix-gold); color: #15100b; box-shadow: 0 0 22px rgba(255,184,70,0.18); }
.calculator-questionnaire { display: grid; gap: 0.82rem; }
.calculator-question { display: grid; gap: 0.78rem; border: 1px solid rgba(162,136,56,0.16); border-radius: 8px; background: rgba(255,240,194,0.028); padding: clamp(0.86rem, 1.7vw, 1rem); }
.calculator-question__head { display: grid; gap: 0.28rem; }
.calculator-question__head h3 { margin: 0; color: rgba(246,250,255,0.94); font-family: Arial, sans-serif; font-size: clamp(0.98rem, 1.3vw, 1.12rem); line-height: 1.25; font-weight: 850; }
.calculator-question__head p { max-width: 48rem; margin: 0; color: rgba(205,224,236,0.58); font-family: Arial, sans-serif; font-size: 0.8rem; line-height: 1.48; }
.calculator-option-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.55rem; }
.calculator-option-grid--compact { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.calculator-option { position: relative; min-height: 72px; display: grid; grid-template-columns: 28px minmax(0, 1fr); align-items: start; gap: 0.58rem; border: 1px solid rgba(162,136,56,0.15); border-radius: 8px; background: rgba(255,240,194,0.026); padding: 0.68rem; cursor: pointer; transition: border-color 160ms ease, background 160ms ease; }
.calculator-option:hover, .calculator-option:focus-within { border-color: rgba(226,181,84,0.32); background: rgba(162,136,56,0.08); }
.calculator-option input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.calculator-option__mark { position: relative; width: 28px; height: 28px; border: 1px solid rgba(162,136,56,0.25); border-radius: 8px; background: rgba(255,240,194,0.032); }
.calculator-option__mark::after { content: ""; position: absolute; left: 8px; top: 5px; width: 8px; height: 13px; border: solid rgba(4,12,24,0.96); border-width: 0 3px 3px 0; opacity: 0; transform: rotate(45deg) scale(0.8); transition: opacity 160ms ease, transform 160ms ease; }
.calculator-option:has(input[type="radio"]) .calculator-option__mark { border-radius: 50%; }
.calculator-option:has(input:checked) { border-color: rgba(255,215,111,0.46); background: rgba(162,136,56,0.12); }
.calculator-option:has(input:checked) .calculator-option__mark { border-color: rgba(255,215,111,0.72); background: var(--korvix-gold); box-shadow: 0 0 18px rgba(255,184,70,0.16); }
.calculator-option:has(input:checked) .calculator-option__mark::after { opacity: 1; transform: rotate(45deg) scale(1); }
.calculator-option--upgrade { border-color: rgba(92, 166, 255, 0.22); background: linear-gradient(145deg, rgba(92,166,255,0.052), rgba(255,240,194,0.022)); }
.calculator-option--upgrade:hover, .calculator-option--upgrade:focus-within { border-color: rgba(92, 166, 255, 0.42); background: linear-gradient(145deg, rgba(92,166,255,0.085), rgba(162,136,56,0.05)); }
.calculator-option__copy { display: grid; gap: 0.24rem; min-width: 0; }
.calculator-option__copy strong { color: rgba(246,250,255,0.9); font-family: Arial, sans-serif; font-size: 0.82rem; line-height: 1.34; font-weight: 800; }
.calculator-option__copy small { color: rgba(205,224,236,0.56); font-family: Arial, sans-serif; font-size: 0.74rem; line-height: 1.38; }
.calculator-option__copy em { width: max-content; max-width: 100%; min-height: 1.35rem; display: inline-flex; align-items: center; border: 1px solid rgba(92,166,255,0.28); border-radius: 999px; background: rgba(92,166,255,0.09); color: rgba(205,226,255,0.92); padding: 0 0.44rem; font-family: Arial, sans-serif; font-size: 0.66rem; line-height: 1; font-style: normal; font-weight: 850; text-transform: uppercase; }
.calculator-question textarea, .calculator-contact input, .calculator-contact textarea { width: 100%; border: 1px solid rgba(162,136,56,0.18); border-radius: 8px; background: rgba(255,240,194,0.032); color: #fff; padding: 0.78rem 0.82rem; font-family: Arial, sans-serif; font-size: 0.9rem; line-height: 1.35; outline: none; }
.calculator-question textarea { min-height: 110px; resize: vertical; }
.calculator-question textarea:focus, .calculator-contact input:focus, .calculator-contact textarea:focus { border-color: rgba(226,181,84,0.5); box-shadow: 0 0 0 3px rgba(194,154,66,0.08); }
.calculator-contact { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.7rem; }
.calculator-contact label { display: grid; gap: 0.32rem; min-width: 0; }
.calculator-contact label span { color: var(--space-muted); font-family: Arial, sans-serif; font-size: 0.74rem; line-height: 1.35; font-weight: 800; }
.calculator-contact__wide { grid-column: 1 / -1; }
.calculator-contact textarea { resize: vertical; min-height: 108px; }
.calculator-controls { display: flex; align-items: center; justify-content: space-between; gap: 0.72rem; padding-top: 0.1rem; }
.calculator-controls .portal-button { min-width: 9.4rem; }
.calculator-error { margin: 0; color: rgba(255,152,152,0.9); font-family: Arial, sans-serif; font-size: 0.84rem; line-height: 1.4; }
.calculator-assistant { position: sticky; top: clamp(5.2rem, 8vw, 6rem); display: grid; gap: 0.86rem; max-height: calc(100svh - 6.8rem); overflow: auto; border: 1px solid rgba(162,136,56,0.2); border-radius: 8px; background: linear-gradient(145deg, rgba(35,27,18,0.86), rgba(10,8,9,0.92)); box-shadow: 0 24px 70px rgba(0,0,0,0.34); padding: clamp(0.95rem, 2vw, 1.1rem); }
.calculator-progress { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.36rem; }
.calculator-progress span { height: 0.28rem; border-radius: 999px; background: rgba(162,136,56,0.18); }
.calculator-progress span.is-active { background: var(--korvix-gold); box-shadow: 0 0 18px rgba(255,184,70,0.18); }
.calculator-assistant__block { display: grid; gap: 0.34rem; border-bottom: 1px solid rgba(162,136,56,0.16); padding-bottom: 0.86rem; }
.calculator-assistant__block:last-child { border-bottom: 0; padding-bottom: 0; }
.calculator-assistant__block strong { color: rgba(246,250,255,0.98); font-size: clamp(1.25rem, 2vw, 1.55rem); line-height: 1.08; font-weight: 900; }
.calculator-assistant__block p { margin: 0; color: rgba(205,224,236,0.62); font-family: Arial, sans-serif; font-size: 0.82rem; line-height: 1.5; }
.calculator-assistant__block--tip { border: 1px solid rgba(255,215,111,0.18); border-radius: 8px; background: rgba(255,184,70,0.06); padding: 0.82rem; }
.calculator-upgrade { display: grid; gap: 0.58rem; border: 1px solid rgba(92,166,255,0.28); border-radius: 8px; background: linear-gradient(145deg, rgba(28,45,74,0.56), rgba(10,8,9,0.7)); padding: 0.82rem; box-shadow: inset 0 1px 0 rgba(205,226,255,0.05), 0 16px 42px rgba(26,72,138,0.12); }
.calculator-upgrade[hidden] { display: none !important; }
.calculator-upgrade span { color: rgba(205,226,255,0.88); font-family: Arial, sans-serif; font-size: 0.7rem; line-height: 1.2; font-weight: 900; text-transform: uppercase; }
.calculator-upgrade strong { color: rgba(246,250,255,0.98); font-family: Arial, sans-serif; font-size: 1rem; line-height: 1.22; font-weight: 900; }
.calculator-upgrade p { margin: 0; color: rgba(205,224,236,0.68); font-family: Arial, sans-serif; font-size: 0.8rem; line-height: 1.48; }
.calculator-upgrade__actions { display: grid; grid-template-columns: 1fr; gap: 0.45rem; }
.calculator-upgrade__actions .portal-button { width: 100%; min-width: 0; min-height: 38px; padding-inline: 0.7rem; font-size: 0.76rem; }

body.design-page {
    --design-gold: #d8a854;
    --design-gold-soft: rgba(216,168,84,0.74);
    --design-amber: #f6d18a;
    --design-led-a: #fff7dc;
    --design-led-b: #ffd36f;
    --design-led-c: #e79b35;
    --design-ink: #030303;
    --design-line: rgba(216,168,84,0.22);
    --design-muted: rgba(210,197,176,0.56);
    --design-text: rgba(255,248,232,0.94);
    --design-transition-mask: linear-gradient(180deg, transparent 0%, #000 14%, #000 86%, transparent 100%);
    --design-section-wash: radial-gradient(ellipse at 82% 22%, rgba(216,168,84,0.07), transparent 38%), radial-gradient(ellipse at 22% 76%, rgba(156,96,36,0.08), transparent 40%), linear-gradient(180deg, rgba(0,0,0,0.02), rgba(8,7,6,0.12) 52%, rgba(0,0,0,0.02));
    min-height: 100vh;
    background: var(--page-bg-base);
    color: var(--design-text);
    font-family: 'Jura', 'Orbitron', sans-serif;
}
body.design-page::before {
    background:
        radial-gradient(ellipse at 72% 22%, rgba(216,168,84,0.1), transparent 38%),
        radial-gradient(ellipse at 18% 78%, rgba(156,96,36,0.1), transparent 36%),
        radial-gradient(ellipse at 50% 48%, rgba(85,70,48,0.12), transparent 58%),
        linear-gradient(180deg, #020202 0%, #050403 52%, #020202 100%);
}
body.design-page::after {
    inset: -12vmax;
    opacity: 0.42;
    background-image:
        radial-gradient(circle at 18px 26px, rgba(255,239,195,0.4) 0 1px, transparent 1.45px),
        radial-gradient(circle at 184px 118px, rgba(216,168,84,0.28) 0 1px, transparent 1.4px),
        radial-gradient(circle at 312px 72px, rgba(255,183,90,0.18) 0 1px, transparent 1.3px);
    background-size: 260px 240px, 410px 380px, 620px 540px;
    animation: spaceStarDrift 90s linear infinite;
}
@keyframes designLedSweep { 0%, 100% { background-position: 0 0; filter: drop-shadow(0 0 10px rgba(216,168,84,0.12)); } 48% { background-position: 0.12em 0.08em; filter: drop-shadow(0 0 20px rgba(255,207,116,0.24)); } }
@keyframes designLedFlicker { 0%, 8%, 11%, 47%, 52%, 100% { opacity: 1; } 9%, 50% { opacity: 0.88; } }
@keyframes designStarBreath { 0%, 100% { opacity: 0.58; transform: translate3d(0,0,0) scale(1); } 50% { opacity: 0.86; transform: translate3d(-1.5%,1%,0) scale(1.015); } }
body.design-page .design-brand,
body.design-page .design-nav a,
body.design-page .design-connect,
body.design-page .design-kicker p,
body.design-page .design-hero h1 span,
body.design-page .design-primary span,
body.design-page .design-secondary,
body.design-page .design-scroll p,
body.design-page .design-mini-service h2,
body.design-page .design-hero-footer p,
body.design-page .design-hero-footer a span,
body.design-page .design-hero-footer a strong,
body.design-page .design-section-head p,
body.design-page .design-section-head h2,
body.design-page .design-process-grid span,
body.design-page .design-process-grid h3,
body.design-page .design-insight-grid h3,
body.design-page .design-artifact-list span,
body.design-page .design-contact p,
body.design-page .design-contact h2,
body.design-page .design-footer span,
body.design-page .design-footer a {
    color: #ffe2a3;
    text-shadow: 0 0 16px rgba(216,168,84,0.2), 0 0 34px rgba(255,166,54,0.08);
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
    body.design-page .design-brand,
    body.design-page .design-nav a,
    body.design-page .design-connect,
    body.design-page .design-kicker p,
    body.design-page .design-hero h1 span,
    body.design-page .design-primary span,
    body.design-page .design-secondary,
    body.design-page .design-scroll p,
    body.design-page .design-mini-service h2,
    body.design-page .design-hero-footer p,
    body.design-page .design-hero-footer a span,
    body.design-page .design-hero-footer a strong,
    body.design-page .design-section-head p,
    body.design-page .design-section-head h2,
    body.design-page .design-process-grid span,
    body.design-page .design-process-grid h3,
    body.design-page .design-insight-grid h3,
    body.design-page .design-artifact-list span,
    body.design-page .design-contact p,
    body.design-page .design-contact h2,
    body.design-page .design-footer span,
    body.design-page .design-footer a {
        background-image:
            radial-gradient(circle, var(--design-led-a) 0 0.048em, var(--design-led-b) 0.056em 0.082em, rgba(231,155,53,0.62) 0.086em, transparent 0.102em);
        background-size: 0.245em 0.245em;
        background-position: 0 0;
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
        -webkit-text-fill-color: transparent;
        -webkit-text-stroke: 0.18px rgba(255,236,196,0.18);
        animation: designLedSweep 6.8s ease-in-out infinite, designLedFlicker 9.5s steps(1,end) infinite;
    }
    body.design-page .design-kicker p,
    body.design-page .design-hero h1 span {
        animation: none;
        background-position: 0 0;
        filter: drop-shadow(0 0 16px rgba(255,207,116,0.25));
        opacity: 1;
    }
}
.design-page main { position: relative; z-index: 1; }
.design-header {
    position: fixed;
    top: clamp(1rem, 2.35vw, 1.55rem);
    left: clamp(1.25rem, 2.8vw, 2.2rem);
    right: clamp(1.25rem, 2.2vw, 1.7rem);
    z-index: 90;
    display: grid;
    grid-template-columns: minmax(8rem, 13rem) minmax(0, 1fr) auto;
    align-items: start;
    gap: clamp(0.8rem, 2.4vw, 2rem);
    pointer-events: none;
}
.design-header a, .design-header button, .design-header select, .design-header form { pointer-events: auto; }
.design-brand {
    display: inline-flex;
    align-items: center;
    width: max-content;
    min-height: 36px;
    color: #ffe2a3;
    font-family: 'Jura', 'Orbitron', sans-serif;
    font-size: clamp(1.35rem, 2.2vw, 1.8rem);
    line-height: 1;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-decoration: none;
    text-shadow: 0 0 22px rgba(216,168,84,0.34);
}
.design-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(1.65rem, 4vw, 3.25rem);
    min-width: 0;
    padding-top: 0.46rem;
}
.design-nav a {
    color: rgba(217,193,154,0.75);
    font-family: 'Jura', sans-serif;
    font-size: clamp(0.58rem, 0.76vw, 0.72rem);
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.34em;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
    transition: color 180ms ease, text-shadow 180ms ease;
}
.design-nav a:hover, .design-nav a:focus-visible {
    color: #fff0bd;
    text-shadow: 0 0 18px rgba(216,168,84,0.38);
    outline: none;
}
.design-actions { display: flex; align-items: start; justify-content: end; gap: 0.72rem; min-width: 0; }
.design-language select, .design-connect {
    min-width: 5.15rem;
    min-height: 34px;
    border: 1px solid rgba(216,168,84,0.18);
    border-radius: 5px;
    background: rgba(0,0,0,0.22);
    color: rgba(255,235,194,0.88);
    box-shadow: inset 0 0 18px rgba(216,168,84,0.025);
    font-family: 'Jura', sans-serif;
    font-size: 0.66rem;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}
.design-language select { width: 5.15rem; padding: 0 1.32rem 0 0.68rem; }
.design-connect {
    display: inline-grid;
    place-items: center;
    min-width: 6.8rem;
    padding: 0 0.92rem;
    text-decoration: none;
    transition: border-color 180ms ease, color 180ms ease, background 180ms ease;
}
.design-language select:hover, .design-language select:focus-visible, .design-connect:hover, .design-connect:focus-visible {
    border-color: rgba(255,229,168,0.5);
    background: rgba(216,168,84,0.075);
    color: #fff2bf;
    outline: none;
}
.design-hero {
    --design-gutter: clamp(1.5rem, 4.65vw, 3.75rem);
    position: relative;
    min-height: 100svh;
    display: grid;
    grid-template-rows: minmax(420px, 1fr) auto auto;
    overflow: hidden;
    isolation: isolate;
    padding: clamp(6.6rem, 11.5svh, 8.4rem) var(--design-gutter) 0;
    background: transparent;
}
.design-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -3;
    background:
        radial-gradient(ellipse at 78% 25%, rgba(216,168,84,0.11), transparent 34%),
        radial-gradient(ellipse at 44% 44%, rgba(255,255,255,0.024), transparent 46%),
        linear-gradient(180deg, rgba(0,0,0,0.1) 0%, rgba(3,2,1,0.2) 58%, rgba(0,0,0,0.08) 100%);
}
.design-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    background:
        linear-gradient(180deg, transparent 0%, transparent 66%, rgba(0,0,0,0.46) 100%),
        radial-gradient(ellipse at center, transparent 0%, transparent 60%, rgba(0,0,0,0.5) 100%);
    pointer-events: none;
}
.design-stars {
    position: absolute;
    inset: -10%;
    z-index: -2;
    opacity: 0.72;
    background-image:
        radial-gradient(circle at 8% 19%, rgba(255,229,170,0.95) 0 1px, transparent 1.6px),
        radial-gradient(circle at 61% 28%, rgba(216,168,84,0.62) 0 1px, transparent 1.5px),
        radial-gradient(circle at 83% 18%, rgba(255,229,170,0.78) 0 1.6px, transparent 2.3px),
        radial-gradient(circle at 91% 47%, rgba(216,168,84,0.54) 0 1.3px, transparent 2px),
        radial-gradient(circle at 19% 82%, rgba(255,181,90,0.62) 0 1px, transparent 1.8px);
    background-size: 420px 360px, 520px 480px, 680px 580px, 760px 620px, 390px 330px;
    animation: designStarBreath 12s ease-in-out infinite;
}
.design-orbit-art {
    position: absolute;
    z-index: -1;
    top: clamp(3.4rem, 7svh, 5.2rem);
    right: clamp(-1rem, 2.4vw, 2.6rem);
    width: min(62vw, 810px);
    aspect-ratio: 1.27;
    overflow: visible;
    pointer-events: none;
    contain: layout;
    transform: translate3d(0,0,0);
}
.design-orbit-art::before,
.design-orbit-art::after {
    content: "";
    position: absolute;
    inset: -8%;
    pointer-events: none;
}
.design-orbit-art::before {
    z-index: 0;
    background:
        radial-gradient(ellipse at 58% 46%, rgba(255,196,82,0.2), transparent 28%),
        radial-gradient(ellipse at 54% 52%, rgba(255,255,255,0.06), transparent 40%),
        radial-gradient(ellipse at 72% 38%, rgba(255,149,42,0.18), transparent 32%);
    filter: blur(8px);
    opacity: 0.82;
    mix-blend-mode: screen;
}
.design-orbit-art::after {
    z-index: 3;
    background:
        linear-gradient(180deg, transparent, rgba(0,0,0,0.08) 46%, transparent),
        repeating-linear-gradient(0deg, rgba(255,226,160,0.028) 0 1px, transparent 1px 4px);
    opacity: 0.34;
    mix-blend-mode: screen;
}
.design-orbit-art canvas,
.design-orbit-art img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
}
.design-orbit-art canvas {
    z-index: 2;
    opacity: 0;
    mix-blend-mode: screen;
    transition: opacity 520ms ease;
}
.design-orbit-art.is-canvas-ready canvas {
    opacity: 1;
}
.design-orbit-art img {
    z-index: 1;
    object-fit: cover;
    opacity: 0.82;
    filter: saturate(1.12) contrast(1.08);
    mix-blend-mode: screen;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 14%, #000 92%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0%, #000 14%, #000 92%, transparent 100%);
    transition: opacity 520ms ease;
}
.design-orbit-art.is-canvas-ready img {
    opacity: 0;
}
.design-hero-copy {
    position: relative;
    z-index: 3;
    align-self: center;
    width: min(560px, 48vw);
    margin-top: clamp(1rem, 4svh, 2.4rem);
    padding-bottom: clamp(1.5rem, 4svh, 3.2rem);
}
.design-kicker {
    display: flex;
    align-items: center;
    gap: 0.72rem;
    margin-bottom: clamp(1.8rem, 4svh, 2.8rem);
    color: rgba(255,226,172,0.72);
}
.design-kicker span {
    width: clamp(1.2rem, 3.5vw, 2.2rem);
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(216,168,84,0.72), transparent);
}
.design-kicker p {
    margin: 0;
    font-size: 0.78rem;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.28em;
    text-transform: uppercase;
}
.design-hero h1 {
    margin: 0;
    color: #f4f3ef;
    font-family: 'Jura', sans-serif;
    font-size: clamp(2rem, 2.82vw, 3.45rem);
    line-height: 1.46;
    font-weight: 400;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    text-shadow: 0 0 34px rgba(255,255,255,0.08);
}
.design-hero h1 span {
    display: block;
    width: max-content;
    max-width: min(86vw, 780px);
    white-space: nowrap;
}
.design-hero h1 span:first-child {
    color: var(--design-amber);
    text-shadow: 0 0 28px rgba(216,168,84,0.17);
}
.design-led-image {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    object-fit: contain;
    object-position: left center;
    pointer-events: none;
    user-select: none;
}
.design-led-image--brand,
.design-led-image--nav,
.design-led-image--control,
.design-led-image--small-label,
.design-led-image--section-label,
.design-led-image--number,
.design-led-image--footer {
    display: inline-block;
    height: 1.04em;
    width: auto;
    max-width: 100%;
    vertical-align: -0.16em;
}
.design-led-image--brand { height: 0.92em; vertical-align: -0.04em; }
.design-led-image--nav { height: 1.08em; vertical-align: -0.22em; }
.design-led-image--control { height: 1.08em; vertical-align: -0.2em; }
.design-led-image--small-label { height: 1.05em; vertical-align: -0.18em; }
.design-led-image--section-label { height: 1.08em; }
.design-led-image--number { height: 1.05em; }
.design-led-image--footer { height: 1.08em; }
.design-kicker .design-led-image {
    height: 1.14em;
    max-width: min(42vw, 12rem);
}
.design-hero h1 .design-led-image--title {
    height: 1.18em;
    max-width: min(86vw, 780px);
}
.design-led-image--mini-title,
.design-led-image--card-title,
.design-led-image--artifact,
.design-led-image--section-title,
.design-led-image--contact-title {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
}
.design-led-image--mini-title { max-height: 2.35em; }
.design-led-image--card-title {
    max-height: 3.45em;
    object-position: left top;
}
.design-led-image--artifact { max-height: 2.7em; }
.design-led-image--section-title { max-height: 2.35em; }
.design-led-image--contact-title { max-height: 4.2em; }
.design-hero h1 .sr-only {
    width: 1px;
    max-width: 1px;
    height: 1px;
    white-space: nowrap;
}
.design-hero-copy > p {
    max-width: 33rem;
    margin: clamp(1.4rem, 3svh, 2rem) 0 clamp(1.8rem, 4svh, 2.65rem);
    color: rgba(203,190,169,0.66);
    font-size: clamp(0.86rem, 1vw, 1rem);
    line-height: 1.8;
    font-weight: 400;
    letter-spacing: 0.045em;
}
.design-primary, .design-secondary {
    display: inline-grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 1.4rem;
    min-height: 46px;
    min-width: 240px;
    border: 1px solid rgba(216,168,84,0.2);
    border-radius: 2px;
    background: rgba(0,0,0,0.18);
    color: rgba(255,229,174,0.82);
    padding: 0 1.35rem;
    font-family: 'Jura', sans-serif;
    font-size: 0.74rem;
    line-height: 1;
    font-weight: 600;
    letter-spacing: 0.24em;
    text-decoration: none;
    text-transform: uppercase;
    box-shadow: inset 0 0 28px rgba(216,168,84,0.028), 0 0 30px rgba(216,168,84,0.035);
    transition: border-color 180ms ease, color 180ms ease, background 180ms ease, transform 180ms ease;
}
.design-primary svg, .design-secondary svg { width: 1.45rem; height: 1.45rem; }
.design-primary:hover, .design-primary:focus-visible, .design-secondary:hover, .design-secondary:focus-visible {
    border-color: rgba(255,229,174,0.48);
    background: rgba(216,168,84,0.075);
    color: #fff0bd;
    outline: none;
    transform: translateY(-1px);
}
.design-scroll {
    position: absolute;
    left: 50%;
    bottom: clamp(17.8rem, 26svh, 20.2rem);
    z-index: 3;
    display: grid;
    justify-items: center;
    gap: 0.52rem;
    color: rgba(214,187,144,0.62);
    transform: translateX(-50%);
}
.design-scroll span {
    width: 14px;
    height: 24px;
    border: 1px solid rgba(216,168,84,0.58);
    border-radius: 999px;
    box-shadow: 0 0 16px rgba(216,168,84,0.16);
}
.design-scroll p {
    margin: 0;
    font-size: 0.64rem;
    line-height: 1;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}
.design-service-strip {
    position: relative;
    z-index: 4;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-inline: calc(var(--design-gutter) * -1);
    border-top: 0;
    border-bottom: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0.18), rgba(0,0,0,0.34));
}
.design-mini-service {
    position: relative;
    min-height: clamp(150px, 20svh, 178px);
    display: grid;
    align-content: start;
    gap: 0.78rem;
    border-left: 1px solid rgba(216,168,84,0.13);
    padding: clamp(1.3rem, 2vw, 1.7rem) clamp(1.4rem, 2.45vw, 2rem);
}
.design-mini-service:last-child { border-right: 1px solid rgba(216,168,84,0.13); }
.design-mini-service::before {
    content: "";
    position: absolute;
    top: 1.2rem;
    left: -2px;
    width: 5px;
    height: 5px;
    border-radius: 999px;
    background: #ffd88a;
    box-shadow: 0 0 20px rgba(255,199,96,0.65);
}
.design-mini-service h2 {
    margin: 0;
    color: rgba(255,221,170,0.82);
    font-size: clamp(0.74rem, 1vw, 0.9rem);
    line-height: 1.2;
    font-weight: 500;
    letter-spacing: 0.28em;
    text-transform: uppercase;
}
.design-mini-service p {
    max-width: 17rem;
    margin: 0;
    color: rgba(201,188,168,0.58);
    font-size: clamp(0.72rem, 0.92vw, 0.86rem);
    line-height: 1.58;
    letter-spacing: 0.045em;
}
.design-icon {
    position: relative;
    display: block;
    width: 34px;
    height: 34px;
    color: rgba(255,206,132,0.86);
}
.design-icon--frame {
    border: 1px dashed currentColor;
    box-shadow: inset 0 0 0 8px rgba(0,0,0,0.2);
}
.design-icon--frame::before, .design-icon--frame::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background: currentColor;
    box-shadow: 27px 0 0 currentColor, 0 27px 0 currentColor, 27px 27px 0 currentColor;
}
.design-icon--tools::before, .design-icon--tools::after {
    content: "";
    position: absolute;
    left: 15px;
    top: -1px;
    width: 4px;
    height: 36px;
    border: 1px solid currentColor;
    background: rgba(216,168,84,0.08);
}
.design-icon--tools::before { transform: rotate(45deg); }
.design-icon--tools::after { transform: rotate(-45deg); }
.design-icon--mobile {
    width: 25px;
    height: 36px;
    border: 1px dashed currentColor;
    border-radius: 5px;
}
.design-icon--mobile::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 4px;
    width: 5px;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
    transform: translateX(-50%);
}
.design-icon--brand {
    border: 1px dashed currentColor;
    border-radius: 999px;
}
.design-icon--brand::before {
    content: "";
    position: absolute;
    inset: 9px;
    border: 1px solid currentColor;
    border-radius: 999px;
    box-shadow: 0 0 14px rgba(216,168,84,0.22);
}
.design-hero-footer {
    position: relative;
    z-index: 4;
    min-height: 92px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.2rem;
    margin-inline: calc(var(--design-gutter) * -1);
    border-bottom: 0;
    padding: 0 var(--design-gutter);
    background: linear-gradient(180deg, rgba(0,0,0,0.16), rgba(0,0,0,0.34));
}
.design-hero-footer p {
    max-width: 25rem;
    margin: 0;
    color: rgba(216,168,84,0.62);
    font-size: 0.72rem;
    line-height: 1.45;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}
.design-hero-footer a {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 48px;
    align-items: center;
    gap: 0.92rem;
    min-width: min(15rem, 48vw);
    color: rgba(255,225,172,0.72);
    text-align: right;
    text-decoration: none;
    text-transform: uppercase;
}
.design-hero-footer a span, .design-hero-footer a strong {
    display: block;
    font-size: 0.63rem;
    line-height: 1.35;
    letter-spacing: 0.18em;
}
.design-hero-footer a strong { color: rgba(255,238,204,0.86); font-weight: 600; }
.design-hero-footer svg {
    grid-row: 1 / 3;
    grid-column: 2;
    width: 48px;
    height: 48px;
    border: 1px solid rgba(216,168,84,0.4);
    border-radius: 999px;
    padding: 13px;
    color: rgba(255,220,156,0.82);
    box-shadow: 0 0 28px rgba(216,168,84,0.1);
    transition: border-color 180ms ease, transform 180ms ease;
}
.design-hero-footer a:hover svg, .design-hero-footer a:focus-visible svg {
    border-color: rgba(255,229,174,0.74);
    transform: translateX(2px);
}
.design-band {
    position: relative;
    z-index: 2;
    padding: clamp(4.5rem, 11svh, 7.5rem) clamp(1.5rem, 5vw, 5rem);
    border-top: 0;
    background: transparent;
    overflow: hidden;
}
.design-band::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: var(--design-section-wash), linear-gradient(90deg, rgba(216,168,84,0.026) 1px, transparent 1px);
    background-size: auto, 92px 92px;
    opacity: 0.78;
    -webkit-mask-image: var(--design-transition-mask);
    mask-image: var(--design-transition-mask);
    pointer-events: none;
}
.design-section-head {
    width: min(1160px, 100%);
    margin: 0 auto clamp(2rem, 5svh, 3.4rem);
    display: grid;
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
    align-items: end;
    gap: clamp(1.2rem, 5vw, 4rem);
}
.design-section-head p {
    margin: 0;
    color: rgba(216,168,84,0.58);
    font-size: 0.7rem;
    letter-spacing: 0.32em;
    text-transform: uppercase;
}
.design-section-head h2 {
    margin: 0;
    color: rgba(255,243,220,0.94);
    font-size: clamp(1.65rem, 3.8vw, 4rem);
    line-height: 1.05;
    font-weight: 400;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}
.design-process-grid, .design-insight-grid {
    width: min(1160px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid rgba(216,168,84,0.14);
    border-left: 1px solid rgba(216,168,84,0.14);
}
.design-process-grid article, .design-insight-grid article {
    min-height: 250px;
    display: grid;
    align-content: start;
    gap: 0.9rem;
    border-right: 1px solid rgba(216,168,84,0.14);
    border-bottom: 1px solid rgba(216,168,84,0.14);
    background: rgba(255,232,184,0.016);
    padding: clamp(1.1rem, 2vw, 1.5rem);
}
.design-process-grid span {
    color: rgba(216,168,84,0.65);
    font-size: 0.72rem;
    letter-spacing: 0.24em;
}
.design-process-grid h3, .design-insight-grid h3 {
    margin: 0;
    color: rgba(255,238,204,0.9);
    font-size: clamp(0.96rem, 1.35vw, 1.2rem);
    line-height: 1.35;
    font-weight: 500;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}
.design-process-grid p, .design-insight-grid p, .design-deliverables-copy p {
    margin: 0;
    color: rgba(203,190,169,0.62);
    font-size: clamp(0.84rem, 1vw, 0.98rem);
    line-height: 1.72;
    letter-spacing: 0.035em;
}
.design-deliverables-layout {
    width: min(1160px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(260px, 0.85fr) minmax(0, 1.15fr);
    gap: clamp(1.3rem, 5vw, 4rem);
    align-items: start;
}
.design-deliverables-copy {
    display: grid;
    gap: 1.65rem;
    max-width: 31rem;
}
.design-secondary { min-width: 210px; width: max-content; grid-template-columns: minmax(0, 1fr); }
.design-artifact-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-top: 1px solid rgba(216,168,84,0.14);
    border-left: 1px solid rgba(216,168,84,0.14);
}
.design-artifact-list span {
    min-height: 88px;
    display: flex;
    align-items: center;
    border-right: 1px solid rgba(216,168,84,0.14);
    border-bottom: 1px solid rgba(216,168,84,0.14);
    background: linear-gradient(135deg, rgba(216,168,84,0.03), rgba(255,255,255,0.008));
    padding: 1rem;
    color: rgba(255,232,190,0.76);
    font-size: 0.82rem;
    line-height: 1.35;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}
.design-insight-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.design-insight-grid article { min-height: 230px; }
.design-contact {
    position: relative;
    z-index: 2;
    min-height: clamp(320px, 48svh, 460px);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: clamp(1.2rem, 5vw, 4rem);
    padding: clamp(4rem, 10svh, 6.5rem) clamp(1.5rem, 5vw, 5rem);
    border-top: 0;
    background:
        radial-gradient(ellipse at 76% 36%, rgba(216,168,84,0.1), transparent 40%),
        linear-gradient(180deg, transparent 0%, rgba(5,4,3,0.12) 24%, rgba(0,0,0,0.04) 74%, transparent 100%);
}
.design-contact p {
    margin: 0 0 0.85rem;
    color: rgba(216,168,84,0.62);
    font-size: 0.72rem;
    letter-spacing: 0.28em;
    text-transform: uppercase;
}
.design-contact h2 {
    max-width: 15ch;
    margin: 0;
    color: rgba(255,243,220,0.96);
    font-size: clamp(2rem, 5vw, 5.2rem);
    line-height: 0.98;
    font-weight: 400;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.design-footer {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.35rem clamp(1.5rem, 5vw, 5rem);
    border-top: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0.03), rgba(0,0,0,0.16));
    color: rgba(203,190,169,0.48);
    font-family: 'Jura', sans-serif;
    font-size: 0.76rem;
    letter-spacing: 0.08em;
}
.design-footer a { color: rgba(255,229,174,0.62); text-decoration: none; }
.design-footer a:hover, .design-footer a:focus-visible { color: #fff0bd; outline: none; }
body.design-page :is(
    .design-brand,
    .design-nav a,
    .design-connect,
    .design-kicker p,
    .design-hero h1 span,
    .design-primary span,
    .design-secondary,
    .design-scroll p,
    .design-mini-service h2,
    .design-hero-footer p,
    .design-hero-footer a span,
    .design-hero-footer a strong,
    .design-section-head p,
    .design-section-head h2,
    .design-process-grid span,
    .design-process-grid h3,
    .design-insight-grid h3,
    .design-artifact-list span,
    .design-contact p,
    .design-contact h2,
    .design-footer span,
    .design-footer a
) {
    color: #fff4b8;
    text-shadow: none;
    filter: none;
    opacity: 1;
    animation: none;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
    body.design-page :is(
        .design-brand,
        .design-nav a,
        .design-connect,
        .design-kicker p,
        .design-hero h1 span,
        .design-primary span,
        .design-secondary,
        .design-scroll p,
        .design-mini-service h2,
        .design-hero-footer p,
        .design-hero-footer a span,
        .design-hero-footer a strong,
        .design-section-head p,
        .design-section-head h2,
        .design-process-grid span,
        .design-process-grid h3,
        .design-insight-grid h3,
        .design-artifact-list span,
        .design-contact p,
        .design-contact h2,
        .design-footer span,
        .design-footer a
    ) {
        background-image: radial-gradient(ellipse 60% 42% at center, #fffdf0 0 0.054em, #ffe18a 0.066em 0.094em, transparent 0.108em);
        background-size: 0.215em 0.19em;
        background-position: 0 0;
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
        -webkit-text-fill-color: transparent;
        -webkit-text-stroke: 0;
        text-shadow: none;
        filter: none;
        opacity: 1;
        animation: none;
    }
}
body.design-page .design-mini-service h2 {
    background: none;
    color: #fff0c8;
    -webkit-text-fill-color: #fff0c8;
    text-shadow: 0 0 18px rgba(255,210,135,0.12);
}
body.design-page .design-mini-service h2 .design-led-image--mini-title {
    display: none;
}
body.design-page .design-mini-service h2 .sr-only {
    position: static;
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    overflow: visible;
    clip: auto;
    clip-path: none;
    color: #fff0c8;
    font-size: clamp(0.95rem, 1.08vw, 1.08rem);
    font-weight: 600;
    line-height: 1.18;
    letter-spacing: 0.035em;
    text-transform: none;
    white-space: normal;
    -webkit-text-fill-color: #fff0c8;
}
@media (max-width: 980px) {
    .calculator-head, .calculator-layout { grid-template-columns: 1fr; }
    .calculator-package-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .calculator-assistant { position: static; max-height: none; }
}
@media (max-width: 620px) {
    .calculator-section { padding-top: 5.6rem; }
    .calculator-head { gap: 0.8rem; }
    .calculator-package-list { grid-template-columns: 1fr; }
    .calculator-package { min-height: 178px; }
    .calculator-option-grid, .calculator-option-grid--compact, .calculator-contact { grid-template-columns: 1fr; }
    .calculator-controls { align-items: stretch; flex-direction: column-reverse; }
    .calculator-controls .portal-button { width: 100%; min-width: 0; }
}
@media (min-width: 821px) {
    .korvix-modal--wide .quiz-head { position: relative; }
    .korvix-modal--wide .quiz-counter { position: absolute; top: 0; right: 3.7rem; }
}
@media (min-width: 821px) and (max-width: 1280px) {
    .services-track { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .service-card { min-height: clamp(260px, 24vw, 330px); }
}
@media (min-width: 821px) and (max-height: 740px) {
    :root { --section-y: clamp(2rem, 5svh, 2.9rem); --section-gap: clamp(1rem, 3svh, 2rem); }
    .flow-step { padding-block: 0.68rem; }
    .flow-step p { line-height: 1.36; }
    .service-card { min-height: clamp(300px, 28vw, 350px); }
    .case-visual { aspect-ratio: 16 / 7; }
    .team-photo { aspect-ratio: 1 / 1.05; }
}
@media (max-width: 820px) {
    :root { --section-y: clamp(2.2rem, 7svh, 3.8rem); --section-x: clamp(1rem, 4.5vw, 1.35rem); --section-gap: clamp(1rem, 4svh, 1.5rem); }
    html { scroll-padding-top: 92px; }
    main section[id], .site-footer { scroll-margin-top: 0; }
    .halo, .halo-2, .ring, .light-line, .light-line-2, .subtitle { animation: none; }
    .ring-2, .ring-3 { display: none; }
    .halo { width: min(520px, 128vw); height: min(520px, 128vw); opacity: 0.72; }
    .halo-2 { width: min(360px, 92vw); height: min(360px, 92vw); opacity: 0.58; }
    .light-line { width: min(92vw, 520px); opacity: 0.58; }
    .light-line-2 { width: min(74vw, 360px); opacity: 0.38; }
    .hero-space::before { opacity: 0.58; }
    .scanlines { opacity: 0.42; }
    .noise { display: none; }
    .site-header { width: calc(100% - 1.2rem); top: 0.6rem; grid-template-columns: minmax(0, 1fr) auto; column-gap: 0.55rem; row-gap: 0; padding: 0.6rem; }
    .site-header.is-menu-open { row-gap: 0.55rem; }
    .site-brand { font-size: 0.98rem; }
    .site-brand-mark { width: 28px; height: 28px; }
    .nav-toggle { display: grid; }
    .site-header.is-menu-open .nav-toggle span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
    .site-header.is-menu-open .nav-toggle span:nth-child(2) { opacity: 0; }
    .site-header.is-menu-open .nav-toggle span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
    .site-nav { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr; gap: 0.28rem; max-height: 0; overflow: hidden; padding-top: 0; visibility: hidden; opacity: 0; transition: max-height 220ms ease, opacity 180ms ease, padding-top 180ms ease; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
    .site-header.is-menu-open .site-nav { max-height: 280px; padding-top: 0.45rem; visibility: visible; opacity: 1; }
    .site-nav::-webkit-scrollbar { display: none; }
    .site-nav a { width: 100%; min-height: 42px; justify-content: start; padding: 0 0.75rem; border: 1px solid rgba(255,255,255,0.08); background: rgba(255,255,255,0.035); font-size: 0.78rem; text-align: left; }
    .site-actions { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr; gap: 0.28rem; min-width: 0; max-height: 0; overflow: hidden; visibility: hidden; opacity: 0; transition: max-height 220ms ease, opacity 180ms ease; }
    .site-header.is-menu-open .site-actions { max-height: min(60svh, 420px); overflow-y: auto; visibility: visible; opacity: 1; }
    .site-actions .site-cta, .site-secondary, .site-logout, .language-switch select { width: 100%; min-height: 42px; padding: 0 0.75rem; font-size: 0.72rem; text-align: center; }
    .site-header--minimal { top: 0.6rem; left: 0.6rem; right: 0.6rem; width: auto; grid-template-columns: minmax(0, auto) minmax(0, 1fr); column-gap: 0.65rem; padding: 0; }
    .site-header--minimal .site-brand { min-width: 0; min-height: 40px; font-size: 1.45rem; }
    .site-header--minimal .site-actions { grid-column: auto; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0.28rem; min-width: 0; max-height: none; overflow: visible; visibility: visible; opacity: 1; padding: 0; transition: none; }
    .site-header--minimal .site-cta, .site-header--minimal .site-secondary, .site-header--minimal .site-logout, .site-header--minimal .language-switch select { width: auto; min-width: min(5.8rem, 100%); min-height: 36px; padding: 0 0.62rem; font-size: 0.68rem; line-height: 1.1; }
    .site-header--minimal .language-switch select { width: clamp(6.8rem, 28vw, 7.45rem); padding-right: 1.25rem; }
    .about-section { grid-template-columns: 1fr; align-items: start; gap: var(--section-gap); padding: var(--section-y) var(--section-x); }
    .about-copy { order: 1; justify-self: start; max-width: 100%; }
    .about-copy h2 { max-width: 10ch; }
    .about-actions { gap: 0.55rem; }
    .about-primary, .about-secondary { flex: 1 1 190px; min-height: 44px; padding-inline: 0.78rem; }
    .about-details { grid-template-columns: 1fr; gap: 0.65rem; margin-top: 1.1rem; }
    .project-flow { order: 2; justify-self: start; width: 100%; }
    .project-flow::before { inset: -4% 8% 18% -2%; }
    .flow-panel { padding: clamp(0.9rem, 3vw, 1rem); }
    .flow-panel-head { margin-bottom: 0.65rem; }
    .flow-panel-head strong { white-space: normal; }
    .flow-step { grid-template-columns: 40px minmax(0, 1fr); gap: 0.72rem; padding: 0.72rem 0; }
    .flow-step::before { left: 19px; top: 48px; }
    .flow-index { width: 38px; height: 38px; }
    .where-section { min-height: 100svh; gap: var(--section-gap); padding: calc(clamp(6rem, 16svh, 7.5rem) + var(--hero-where-overlap)) var(--section-x) clamp(7rem, 20svh, 9rem); }
    .where-section::after { inset: 0; width: auto; height: auto; opacity: 0.2; }
    .where-head { grid-template-columns: 1fr; gap: 1rem; }
    .where-head .where-label { max-width: 18ch; font-size: clamp(1.05rem, 4.6vw, 1.55rem); transform: translateY(-0.35rem); }
    .where-head h2 { font-size: clamp(2.15rem, 10vw, 3.1rem); }
    .where-planet-stage { min-height: clamp(360px, 58svh, 520px); }
    .services-section { grid-template-columns: 1fr; gap: var(--section-gap); padding: var(--section-y) var(--section-x); }
    .services-section::after { inset: -18%; width: auto; height: auto; opacity: 0.34; }
    .services-visual { position: absolute; top: 0.4rem; right: -22%; width: min(340px, 78vw); min-width: 0; opacity: 0.45; }
    .services-content { width: 100%; }
    .services-head { grid-template-columns: 1fr; gap: 1rem; }
    .services-carousel { width: calc(100% + (var(--section-x) * 2)); margin-inline: calc(var(--section-x) * -1); overflow-x: auto; overflow-y: hidden; overscroll-behavior-x: contain; scroll-behavior: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; touch-action: pan-x pan-y; user-select: none; cursor: grab; }
    .services-carousel.is-dragging { cursor: grabbing; }
    .services-carousel::-webkit-scrollbar { display: none; }
    .services-track { display: flex; width: max-content; min-width: max-content; overflow: visible; transform: none; transition: none; padding: 0 var(--section-x) 0.35rem; }
    .service-card { flex: 0 0 min(82vw, 320px); min-height: 330px; scroll-snap-align: center; }
    .reviews-section { padding: var(--section-y) 0; }
    .reviews-head { grid-template-columns: 1fr; width: calc(100% - 2.5rem); gap: 1rem; }
    .partner-wave { justify-content: flex-start; overflow: hidden; gap: 2rem; }
    .partners-marquee { --marquee-curve-depth: 28px; }
    .partners-marquee__track { animation-duration: 42s; }
    .partners-marquee__group { gap: 1.35rem; padding-inline: 1.35rem; }
    .partner-mark { font-size: 1rem; }
    .review-card { flex-basis: min(82vw, 340px); min-height: 330px; }
    .review-text { font-size: clamp(1.05rem, 5vw, 1.35rem); }
    .review-meta { align-items: start; flex-direction: column; }
    .cases-section { padding: var(--section-y) var(--section-x); gap: var(--section-gap); }
    .cases-head { grid-template-columns: 1fr; gap: 1rem; }
    .cases-layout { width: 100%; grid-template-columns: 1fr; gap: 0.9rem; }
    .case-client-list { display: grid; gap: 0.55rem; }
    .case-client-button { min-height: 74px; }
    .case-client-button.is-active { transform: none; }
    .case-detail { grid-template-columns: 1fr; gap: 0.9rem; padding: clamp(0.9rem, 3vw, 1rem); }
    .case-visual { min-height: 0; aspect-ratio: 16 / 8.5; }
    .case-service-list { gap: 0.42rem; }
    .team-section { padding: var(--section-y) 0; gap: var(--section-gap); }
    .team-head { width: calc(100% - 2.5rem); grid-template-columns: 1fr; gap: 1rem; }
    .team-grid { width: 100%; display: flex; grid-template-columns: none; gap: 0.95rem; overflow-x: auto; overflow-y: visible; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scroll-padding: 1.25rem; padding: 0 1.25rem 0.4rem; -webkit-overflow-scrolling: touch; scrollbar-width: none; touch-action: pan-x pan-y; mask-image: linear-gradient(90deg, transparent 0, #000 1.25rem, #000 calc(100% - 1.25rem), transparent 100%); -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 1.25rem, #000 calc(100% - 1.25rem), transparent 100%); }
    .team-grid::-webkit-scrollbar { display: none; }
    .team-card { --team-avatar-size: 64px; flex: 0 0 min(84vw, 360px); min-height: auto; scroll-snap-align: center; scroll-snap-stop: normal; box-shadow: 0 20px 60px rgba(0,0,0,0.38); }
    .team-photo { aspect-ratio: 4 / 5; }
    .team-card.is-open .team-meta, .team-card.is-open p, .team-card.is-open .team-tags { max-height: none; }
    .team-card.is-open .team-meta { flex-wrap: wrap; }
    .site-footer { padding: var(--section-y) var(--section-x) 1.5rem; }
    .site-footer--home { padding: 1.35rem var(--section-x) 1.55rem; }
    .site-footer--home .footer-inner { flex-wrap: wrap; gap: 0.9rem; }
    .site-footer--home .footer-actions { flex-wrap: wrap; }
    .footer-column:first-child { grid-column: 1 / -1; }
    .footer-brand { font-size: clamp(1.05rem, 5vw, 1.35rem); }
    .footer-lead { margin: 0.9rem 0 1rem; font-size: 0.92rem; line-height: 1.55; }
    .footer-bottom { align-items: flex-start; flex-direction: column; margin-top: 1.25rem; }
    .footer-links { justify-content: flex-start; }
    .flash-stack { top: 92px; right: 0.75rem; width: calc(100% - 1.5rem); }
    .korvix-modal { align-items: stretch; padding: 0.75rem; }
    .korvix-modal__panel { max-height: calc(100vh - 1.5rem); padding: 1.15rem; }
    .quiz-head, .portal-head, .request-head { flex-direction: column; }
    .quiz-options, .quiz-contact-grid, .portal-grid--client, .manager-layout, .answer-grid, .manager-form-grid, .crm-stat-grid, .crm-toolbar, .crm-detail-grid, .crm-mini-grid, .crm-two-columns { grid-template-columns: 1fr; }
    .quiz-actions { justify-content: stretch; }
    .quiz-actions .portal-button { flex: 1; }
    .portal-register-callout { align-items: stretch; flex-direction: column; }
    .portal-register-callout .portal-button { width: 100%; }
    .portal-section { padding: var(--section-y) var(--section-x); }
    .privacy-section { padding-top: calc(var(--section-y) + 5.2rem); }
    .privacy-layout { grid-template-columns: 1fr; }
    .privacy-summary { position: static; }
    .manager-admin, .crm-lead-list { position: static; max-height: none; }
    .crm-board { grid-template-columns: repeat(6, minmax(210px, 78vw)); }
    body::after { animation: none; opacity: 0.28; will-change: auto; }
    .hero-space::before { display: none; animation: none; opacity: 0; }
    .site-loader__mark, .services-stage { filter: none; }
    .site-loader__brand, .site-brand, .site-header--minimal .site-brand, .subtitle, body.globe-active .subtitle, .partner-logo, .about-label, .services-label, .where-label, .about-copy h2, .where-head h2, .services-head h2, .reviews-head h2, .cases-head h2, .team-head h2, .footer-brand, .calculator-head h1 { text-shadow: none; }
    .site-header, .flash-message, .korvix-modal__backdrop, .korvix-modal__panel { -webkit-backdrop-filter: none; backdrop-filter: none; }
    .site-header { background: rgba(2,7,8,0.82); box-shadow: none; }
    .site-brand-mark, .site-header--minimal .site-secondary, .site-header--minimal .language-switch select, .flow-panel, .service-card, .service-card.is-active, .review-card, .review-card.is-active, .case-client-button, .case-detail, .team-card, .calculator-package:has(input:checked), .calculator-package:has(input:checked) .calculator-package__code, .calculator-service:has(input:checked) .calculator-service__mark, .calculator-summary, .flash-message, .portal-panel, .manager-request, .korvix-modal__panel { box-shadow: none; }
    .flow-panel::after, .service-card::before, .review-card::after, .case-detail::after, .team-card::after, .korvix-modal__panel::before { display: none; box-shadow: none; filter: none; }
    .partner-logo::before { box-shadow: none; filter: none; }
    .partners-marquee__track { will-change: auto; }
    html.motion-reduced .partners-marquee__track, html.is-save-data .partners-marquee__track { animation: none; transform: none; }
}
html.motion-lite body::after { animation: none; opacity: 0.28; will-change: auto; }
html.motion-lite .hero-space::before { display: none; animation: none; opacity: 0; }
html.motion-lite .site-loader__mark, html.motion-lite .services-stage { filter: none; }
html.motion-lite .site-loader__brand, html.motion-lite .site-brand, html.motion-lite .site-header--minimal .site-brand, html.motion-lite .subtitle, html.motion-lite body.globe-active .subtitle, html.motion-lite .partner-logo, html.motion-lite .about-label, html.motion-lite .services-label, html.motion-lite .where-label, html.motion-lite .about-copy h2, html.motion-lite .where-head h2, html.motion-lite .services-head h2, html.motion-lite .reviews-head h2, html.motion-lite .cases-head h2, html.motion-lite .team-head h2, html.motion-lite .footer-brand, html.motion-lite .calculator-head h1 { text-shadow: none; }
html.motion-lite .site-header, html.motion-lite .flash-message, html.motion-lite .korvix-modal__backdrop, html.motion-lite .korvix-modal__panel { -webkit-backdrop-filter: none; backdrop-filter: none; }
html.motion-lite .site-header { background: rgba(2,7,8,0.82); box-shadow: none; }
html.motion-lite .site-brand-mark, html.motion-lite .site-header--minimal .site-secondary, html.motion-lite .site-header--minimal .language-switch select, html.motion-lite .flow-panel, html.motion-lite .service-card, html.motion-lite .service-card.is-active, html.motion-lite .review-card, html.motion-lite .review-card.is-active, html.motion-lite .case-client-button, html.motion-lite .case-detail, html.motion-lite .team-card, html.motion-lite .calculator-package:has(input:checked), html.motion-lite .calculator-package:has(input:checked) .calculator-package__code, html.motion-lite .calculator-service:has(input:checked) .calculator-service__mark, html.motion-lite .calculator-summary, html.motion-lite .flash-message, html.motion-lite .portal-panel, html.motion-lite .manager-request, html.motion-lite .korvix-modal__panel { box-shadow: none; }
html.motion-lite .flow-panel::after, html.motion-lite .service-card::before, html.motion-lite .review-card::after, html.motion-lite .case-detail::after, html.motion-lite .team-card::after, html.motion-lite .korvix-modal__panel::before { display: none; box-shadow: none; filter: none; }
html.motion-lite .partner-logo::before { box-shadow: none; filter: none; }
html.motion-lite .partners-marquee__track { animation-duration: 42s; will-change: auto; }
html.motion-reduced .partners-marquee__track, html.is-save-data .partners-marquee__track { animation: none; transform: none; }
@media (max-width: 430px) {
    html { scroll-padding-top: 88px; }
    main section[id], .site-footer { scroll-margin-top: 0; }
    .site-header { width: calc(100% - 0.8rem); }
    .site-brand { gap: 0.48rem; }
    .site-nav { gap: 0.22rem; }
    .site-nav a { min-height: 40px; padding: 0 0.7rem; font-size: 0.72rem; }
    .site-actions .site-cta, .site-secondary, .site-admin-link, .site-logout, .language-switch select { width: 100%; max-width: none; text-align: center; line-height: 1.1; }
    .site-header--minimal { left: 0.5rem; right: 0.5rem; width: auto; column-gap: 0.38rem; }
    .site-header--minimal .site-brand { font-size: clamp(0.92rem, 5vw, 1.18rem); }
    .site-header--minimal .site-actions { gap: 0.22rem; padding: 0; }
    .site-header--minimal .site-cta, .site-header--minimal .site-secondary, .site-header--minimal .site-admin-link, .site-header--minimal .site-logout, .site-header--minimal .language-switch select { flex: 0 1 auto; width: auto; max-width: 100%; min-width: 0; min-height: 34px; padding: 0 0.45rem; font-size: 0.62rem; }
    .site-header--minimal .site-admin-link { min-width: 4.2rem; color: rgba(230,235,238,0.48); }
    .site-header--minimal .language-switch select { width: clamp(6.4rem, 32vw, 7.2rem); padding-right: 1rem; font-size: 0.58rem; }
    .team-grid { gap: 0.8rem; scroll-padding: 0.95rem; padding-inline: 0.95rem; mask-image: linear-gradient(90deg, transparent 0, #000 0.95rem, #000 calc(100% - 0.95rem), transparent 100%); -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 0.95rem, #000 calc(100% - 0.95rem), transparent 100%); }
    .team-card { --team-avatar-size: 58px; flex-basis: min(86vw, 340px); min-height: auto; }
    .team-photo { aspect-ratio: 4 / 5; }
    .quiz-actions { flex-direction: column; }
}
html[dir="rtl"] body { direction: rtl; }
html[dir="rtl"] .site-header, html[dir="rtl"] .portal-grid, html[dir="rtl"] .about-section, html[dir="rtl"] .services-content, html[dir="rtl"] .footer-inner { direction: rtl; }
html[dir="rtl"] .site-brand, html[dir="rtl"] .site-actions, html[dir="rtl"] .about-actions, html[dir="rtl"] .quiz-actions, html[dir="rtl"] .footer-actions, html[dir="rtl"] .footer-links { flex-direction: row-reverse; }
html[dir="rtl"] input, html[dir="rtl"] textarea { text-align: right; }
html[dir="rtl"] .language-switch select { padding: 0 0.72rem 0 2rem; }
@media (max-width: 430px) and (max-height: 700px) {
    :root { --section-y: 1.35rem; --section-gap: 0.75rem; }
    .about-label { display: none; }
    .about-copy h2 { margin-bottom: 0.65rem; font-size: 1.8rem; }
    .about-copy p { font-size: 0.86rem; line-height: 1.42; }
    .about-actions { margin-top: 0.85rem; }
    .about-primary, .about-secondary { min-height: 40px; font-size: 0.7rem; }
    .about-details { display: none; }
    .flow-panel { padding: 0.72rem; }
    .flow-panel-head { margin-bottom: 0.45rem; }
    .flow-panel-head strong { font-size: 0.72rem; }
    .flow-step { padding: 0.5rem 0; }
    .flow-step strong { font-size: 0.92rem; }
    .flow-step p { font-size: 0.76rem; line-height: 1.34; }
    .flow-output { margin-top: 0.45rem; padding-top: 0.65rem; }
    .services-head, .reviews-head, .cases-head, .team-head { gap: 0.65rem; }
    .services-head h2 { font-size: clamp(2rem, 12vw, 2.65rem); }
    .cases-head h2, .team-head h2 { font-size: clamp(1rem, 6vw, 1.325rem); }
    .reviews-head h2 { font-size: clamp(1rem, 6vw, 1.325rem); }
    .services-head p, .reviews-head p, .cases-head p, .team-head p { font-size: 0.84rem; line-height: 1.42; }
    .services-head { margin-bottom: 0.8rem; }
    .service-card { min-height: 300px; }
    .partner-wave { display: none; }
    .review-card { min-height: 300px; }
    .case-client-button { grid-template-columns: 40px minmax(0, 1fr); min-height: 70px; padding: 0.65rem; }
    .case-client-index { width: 40px; height: 40px; }
    .case-detail { padding: 0.82rem; }
    .case-detail h3 { font-size: 1.15rem; }
    .case-visual { aspect-ratio: 16 / 6.6; }
    .case-service-pill { min-height: 32px; font-size: 0.68rem; }
    .team-card { --team-avatar-size: 56px; flex-basis: min(86vw, 320px); }
    .team-photo { aspect-ratio: 1 / 1.05; }
    .site-footer--home .footer-inner { gap: 0.75rem; }
    .footer-column:first-child { grid-column: 1 / -1; }
    .footer-column h2, .footer-column h3 { margin-bottom: 0.7rem; font-size: 0.82rem; }
    .footer-column a, .footer-column span { margin-bottom: 0.42rem; font-size: 0.72rem; line-height: 1.3; }
    .footer-lead { margin: 0.7rem 0 0.85rem; font-size: 0.86rem; line-height: 1.45; }
    .footer-bottom { margin-top: 1.25rem; }
}
@media (max-width: 820px) {
    .services-section::before { background: radial-gradient(circle at 74% 18%, rgba(255,245,203,0.58) 0 2px, rgba(226,181,84,0.22) 5px, rgba(162,136,56,0.1) 16px, transparent 52px), radial-gradient(circle at 24% 70%, rgba(255,183,111,0.28) 0 1px, rgba(194,154,66,0.14) 7px, transparent 46px), radial-gradient(ellipse at 68% 32%, rgba(119,111,90,0.3), rgba(92,86,69,0.16) 30%, transparent 72%), radial-gradient(ellipse at 44% 78%, rgba(64,60,50,0.18), transparent 60%), linear-gradient(180deg, rgba(10,8,9,0.02) 0%, rgba(46,43,39,0.14) 72%, rgba(10,8,9,0.02) 100%); }
    .reviews-section::before { background: radial-gradient(circle at 70% 16%, rgba(255,245,203,0.6) 0 2px, rgba(226,181,84,0.22) 5px, rgba(162,136,56,0.1) 17px, transparent 56px), radial-gradient(circle at 52% 72%, rgba(255,183,111,0.3) 0 1px, rgba(194,154,66,0.15) 7px, transparent 48px), radial-gradient(ellipse at 72% 38%, rgba(119,111,90,0.32), rgba(92,86,69,0.16) 34%, transparent 74%), radial-gradient(ellipse at 34% 82%, rgba(64,60,50,0.18), transparent 62%), linear-gradient(180deg, rgba(10,8,9,0.02) 0%, rgba(46,43,39,0.14) 72%, rgba(9,8,7,0.02) 100%); }
    .services-section::after, .reviews-section::after { inset: -18%; opacity: 0.52; background-size: 210px 260px, 320px 390px, 430px 520px, 580px 700px; }
    .review-card { --review-avatar-size: 52px; padding-right: max(1.1rem, calc(var(--review-avatar-size) + 0.95rem)); }
    .review-company { padding-right: calc(var(--review-avatar-size) + 0.38rem); }
    .review-company span { max-width: 8rem; text-align: right; }
}
@media (max-width: 430px) {
    .review-card { --review-avatar-size: 46px; }
    .review-company { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0.28rem; }
    .review-company span { text-align: left; }
}
@media (prefers-reduced-motion: reduce) {
    .services-section::after, .reviews-section::after { animation: none; will-change: auto; }
    .service-card::before, .service-card::after, .service-card.is-planned::after, .review-card::after { display: block; box-shadow: none; filter: none; }
}
html.motion-lite .services-section::after, html.motion-lite .reviews-section::after, html.motion-reduced .services-section::after, html.motion-reduced .reviews-section::after, html.is-save-data .services-section::after, html.is-save-data .reviews-section::after { animation: none; will-change: auto; }
html.motion-lite .service-card::before, html.motion-lite .service-card::after, html.motion-lite .service-card.is-planned::after, html.motion-lite .review-card::after, html.motion-reduced .service-card::before, html.motion-reduced .service-card::after, html.motion-reduced .service-card.is-planned::after, html.motion-reduced .review-card::after, html.is-save-data .service-card::before, html.is-save-data .service-card::after, html.is-save-data .service-card.is-planned::after, html.is-save-data .review-card::after { display: block; box-shadow: none; filter: none; }

/* Public-site cohesion pass: keep the cinematic Korvix core, but make public surfaces read as one system. */
:root {
    --korvix-public-surface: linear-gradient(145deg, rgba(23,18,13,0.76), rgba(8,7,6,0.66) 58%, rgba(33,27,18,0.48));
    --korvix-public-surface-soft: linear-gradient(145deg, rgba(20,16,12,0.58), rgba(8,7,6,0.5) 62%, rgba(31,25,17,0.34));
    --korvix-public-border: rgba(198,158,76,0.25);
    --korvix-public-border-strong: rgba(226,181,84,0.5);
    --korvix-public-copy: rgba(242,231,211,0.74);
    --korvix-public-muted: rgba(214,190,145,0.58);
}

body:not(.design-page)::before {
    background-image:
        radial-gradient(ellipse at 78% 16%, rgba(194,154,66,0.1), transparent 34%),
        radial-gradient(ellipse at 19% 74%, rgba(102,74,42,0.1), transparent 34%),
        radial-gradient(ellipse at 52% 52%, rgba(92,86,69,0.13), transparent 58%),
        linear-gradient(180deg, #050403 0%, #030303 34%, #0a0705 68%, #020202 100%);
}

body:not(.design-page)::after {
    opacity: 0.34;
}

body:not(.design-page) .site-header {
    width: min(1180px, calc(100% - clamp(1.2rem, 4vw, 3rem)));
    top: clamp(0.75rem, 1.8vw, 1.15rem);
    border-color: var(--korvix-public-border);
    background: linear-gradient(145deg, rgba(6,7,7,0.78), rgba(24,18,12,0.66));
    box-shadow: 0 18px 64px rgba(0,0,0,0.34), inset 0 1px 0 rgba(255,240,194,0.045);
    -webkit-backdrop-filter: blur(18px);
    backdrop-filter: blur(18px);
}

body:not(.design-page) .site-header--minimal {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    align-items: center;
    grid-template-columns: auto minmax(0, 1fr);
    border: 1px solid var(--korvix-public-border);
    border-radius: 8px;
    padding: 0.54rem 0.64rem;
}

body:not(.design-page) .site-header--minimal .site-brand {
    min-height: 38px;
    padding: 0 0.3rem;
    color: #ffe2a0;
    font-size: clamp(1.12rem, 1.7vw, 1.42rem);
    text-shadow: 0 0 18px rgba(194,154,66,0.2);
}

body:not(.design-page) .site-brand {
    color: #ffe6ad;
    text-transform: none;
}

body:not(.design-page) .site-brand-mark {
    border-color: rgba(226,181,84,0.34);
    background:
        radial-gradient(circle at 34% 32%, rgba(255,246,219,0.92) 0 2px, transparent 3px),
        linear-gradient(135deg, rgba(194,154,66,0.2), rgba(102,74,42,0.22));
}

body:not(.design-page) .site-nav a,
body:not(.design-page) .site-cta,
body:not(.design-page) .site-secondary,
body:not(.design-page) .site-admin-link,
body:not(.design-page) .site-logout,
body:not(.design-page) .footer-cta,
body:not(.design-page) .footer-secondary,
body:not(.design-page) .language-switch select {
    font-family: Arial, sans-serif;
    font-weight: 800;
    color: rgba(245,236,218,0.8);
}

body:not(.design-page) .site-header--minimal .site-cta,
body:not(.design-page) .site-header--minimal .site-secondary,
body:not(.design-page) .site-header--minimal .site-logout,
body:not(.design-page) .site-header--minimal .language-switch select {
    width: auto;
    min-width: clamp(6.4rem, 10vw, 8.3rem);
    min-height: 36px;
    border-color: rgba(226,181,84,0.26);
    background: rgba(255,240,194,0.035);
    box-shadow: none;
}

body:not(.design-page) .site-cta,
body:not(.design-page) .footer-cta,
body:not(.design-page) .portal-button--primary {
    border-color: rgba(226,181,84,0.44);
    background: linear-gradient(135deg, rgba(194,154,66,0.18), rgba(102,74,42,0.2));
    color: #fff4cf;
}

body:not(.design-page) .site-secondary,
body:not(.design-page) .site-logout,
body:not(.design-page) .footer-secondary,
body:not(.design-page) .portal-button,
body:not(.design-page) .language-switch select {
    border-color: rgba(226,181,84,0.24);
    background: rgba(255,240,194,0.035);
}

body:not(.design-page) .site-nav a:hover,
body:not(.design-page) .site-nav a:focus-visible,
body:not(.design-page) .site-cta:hover,
body:not(.design-page) .site-cta:focus-visible,
body:not(.design-page) .site-secondary:hover,
body:not(.design-page) .site-secondary:focus-visible,
body:not(.design-page) .site-logout:hover,
body:not(.design-page) .site-logout:focus-visible,
body:not(.design-page) .footer-cta:hover,
body:not(.design-page) .footer-cta:focus-visible,
body:not(.design-page) .footer-secondary:hover,
body:not(.design-page) .footer-secondary:focus-visible,
body:not(.design-page) .language-switch select:hover,
body:not(.design-page) .language-switch select:focus-visible {
    border-color: rgba(255,224,158,0.58);
    background: rgba(162,136,56,0.12);
    color: #fff8df;
    outline: none;
}

body:not(.design-page) .about-section::after,
body:not(.design-page) .where-section::after,
body:not(.design-page) .services-section::after,
body:not(.design-page) .reviews-section::after,
body:not(.design-page) .cases-section::after,
body:not(.design-page) .team-section::after,
body:not(.design-page) .portal-section::after,
body:not(.design-page) .calculator-section::after,
body:not(.design-page) .site-footer::after {
    opacity: 0.13;
}

body:not(.design-page) .services-section::after,
body:not(.design-page) .reviews-section::after {
    opacity: 0.26;
}

body:not(.design-page) .services-section::before,
body:not(.design-page) .reviews-section::before {
    opacity: 0.42;
    filter: saturate(0.82);
}

body:not(.design-page) .services-visual {
    opacity: 0.16;
}

body:not(.design-page) .services-stage-canvas {
    filter: saturate(0.72) brightness(0.68);
}

body:not(.design-page) .cases-section::before,
body:not(.design-page) .team-section::before,
body:not(.design-page) .calculator-section::before,
body:not(.design-page) .portal-section::before {
    background:
        radial-gradient(ellipse at 78% 22%, rgba(119,111,90,0.14), transparent 40%),
        radial-gradient(ellipse at 18% 78%, rgba(102,74,42,0.1), transparent 38%),
        linear-gradient(180deg, rgba(8,7,6,0.02), rgba(21,17,12,0.1) 56%, rgba(6,5,4,0.02));
}

body:not(.design-page) .about-copy h2,
body:not(.design-page) .where-head h2,
body:not(.design-page) .services-head h2,
body:not(.design-page) .reviews-head h2,
body:not(.design-page) .cases-head h2,
body:not(.design-page) .team-head h2,
body:not(.design-page) .calculator-head h1,
body:not(.design-page) .korvix-modal__panel h2,
body:not(.design-page) .portal-head h1,
body:not(.design-page) .portal-head h2 {
    color: rgba(255,248,232,0.96);
    line-height: 0.98;
    text-shadow: 0 0 18px rgba(194,154,66,0.1);
}

body:not(.design-page) .cases-head h2,
body:not(.design-page) .team-head h2,
body:not(.design-page) .calculator-head h1,
body:not(.design-page) .portal-head h1 {
    font-size: clamp(2.2rem, 6.2vw, 5rem);
}

body:not(.design-page) .reviews-head h2 {
    font-size: clamp(2rem, 4.8vw, 4rem);
}

body:not(.design-page) .service-card,
body:not(.design-page) .review-card,
body:not(.design-page) .case-client-button,
body:not(.design-page) .case-detail,
body:not(.design-page) .team-card,
body:not(.design-page) .flow-panel,
body:not(.design-page) .portal-panel,
body:not(.design-page) .korvix-modal__panel,
body:not(.design-page) .calculator-package,
body:not(.design-page) .calculator-service,
body:not(.design-page) .calculator-summary,
body:not(.design-page) .quiz-option,
body:not(.design-page) .answer-grid div,
body:not(.design-page) .flash-message {
    border-color: var(--korvix-public-border);
    background: var(--korvix-public-surface-soft);
    box-shadow: inset 0 1px 0 rgba(255,240,194,0.035);
}

body:not(.design-page) .service-card:hover,
body:not(.design-page) .service-card:focus-visible,
body:not(.design-page) .review-card:hover,
body:not(.design-page) .review-card:focus-visible,
body:not(.design-page) .case-client-button:hover,
body:not(.design-page) .case-client-button:focus-visible,
body:not(.design-page) .team-card:hover,
body:not(.design-page) .calculator-package:hover,
body:not(.design-page) .calculator-package:focus-within,
body:not(.design-page) .calculator-service:hover,
body:not(.design-page) .calculator-service:focus-within,
body:not(.design-page) .portal-button:hover,
body:not(.design-page) .portal-button:focus-visible {
    border-color: var(--korvix-public-border-strong);
    background: var(--korvix-public-surface);
    box-shadow: inset 0 1px 0 rgba(255,240,194,0.05), 0 18px 46px rgba(0,0,0,0.24);
}

body:not(.design-page) .service-card.is-active,
body:not(.design-page) .review-card.is-active,
body:not(.design-page) .case-client-button.is-active,
body:not(.design-page) .calculator-package:has(input:checked),
body:not(.design-page) .calculator-service:has(input:checked) {
    border-color: rgba(255,215,111,0.54);
    background: linear-gradient(145deg, rgba(44,34,21,0.76), rgba(12,10,8,0.72));
    box-shadow: inset 0 1px 0 rgba(255,240,194,0.055), 0 18px 50px rgba(102,74,42,0.16);
}

body:not(.design-page) .service-card {
    background: linear-gradient(145deg, rgba(22,18,13,0.94), rgba(8,7,6,0.9) 62%, rgba(31,25,17,0.82));
}

body:not(.design-page) .service-card:hover,
body:not(.design-page) .service-card:focus-visible,
body:not(.design-page) .service-card.is-active {
    background: linear-gradient(145deg, rgba(42,32,20,0.94), rgba(10,8,7,0.9) 62%, rgba(38,30,19,0.82));
}

body:not(.design-page) .service-card p,
body:not(.design-page) .review-text,
body:not(.design-page) .case-detail p,
body:not(.design-page) .team-card p,
body:not(.design-page) .calculator-head p,
body:not(.design-page) .calculator-package__copy small,
body:not(.design-page) .calculator-service__copy small,
body:not(.design-page) .portal-panel p,
body:not(.design-page) .privacy-content p,
body:not(.design-page) .privacy-content li,
body:not(.design-page) .privacy-summary p {
    color: var(--korvix-public-copy);
}

body:not(.design-page) .service-bottom span,
body:not(.design-page) .review-company span,
body:not(.design-page) .review-meta span,
body:not(.design-page) .case-meta,
body:not(.design-page) .case-client-main span,
body:not(.design-page) .case-package span,
body:not(.design-page) .team-meta,
body:not(.design-page) .team-tags span,
body:not(.design-page) .calculator-result span,
body:not(.design-page) .calculator-result small,
body:not(.design-page) .calculator-contact label span,
body:not(.design-page) .privacy-summary a,
body:not(.design-page) .footer-bottom,
body:not(.design-page) .footer-bottom a {
    color: var(--korvix-public-muted);
}

body:not(.design-page) .case-visual,
body:not(.design-page) .team-photo {
    border-color: rgba(198,158,76,0.26);
    background: rgba(18,14,10,0.88);
    box-shadow: inset 0 1px 0 rgba(255,240,194,0.04);
}

body:not(.design-page) .case-visual img,
body:not(.design-page) .team-photo img {
    filter: sepia(0.1) saturate(0.84) hue-rotate(-8deg) brightness(0.9) contrast(1.06);
}

body:not(.design-page) .case-visual::after,
body:not(.design-page) .team-photo::after {
    background:
        linear-gradient(180deg, rgba(255,240,194,0.08), transparent 42%, rgba(0,0,0,0.45)),
        radial-gradient(ellipse at 78% 18%, rgba(194,154,66,0.12), transparent 42%);
}

body:not(.design-page) .service-tool,
body:not(.design-page) .service-badge,
body:not(.design-page) .case-service-pill,
body:not(.design-page) .team-tags span,
body:not(.design-page) .calculator-service__package,
body:not(.design-page) .case-client-index,
body:not(.design-page) .flow-index,
body:not(.design-page) .calculator-package__code,
body:not(.design-page) .calculator-service__mark {
    border-color: rgba(198,158,76,0.24);
    background: rgba(255,240,194,0.045);
    color: rgba(255,232,176,0.88);
}

body:not(.design-page) .calculator-package:has(input:checked) .calculator-package__code,
body:not(.design-page) .calculator-service:has(input:checked) .calculator-service__mark {
    background: linear-gradient(135deg, #d4a553, #ffe2a0);
    color: #15100b;
}

body:not(.design-page) .portal-form input,
body:not(.design-page) .portal-form textarea,
body:not(.design-page) .quiz-contact-grid input,
body:not(.design-page) .quiz-input-label input,
body:not(.design-page) .quiz-input-label textarea,
body:not(.design-page) .calculator-contact input,
body:not(.design-page) .calculator-contact textarea {
    border-color: rgba(198,158,76,0.22);
    background: rgba(255,240,194,0.04);
    color: rgba(255,248,232,0.96);
}

body:not(.design-page) .korvix-modal__panel {
    background: linear-gradient(145deg, rgba(23,18,13,0.96), rgba(5,5,5,0.98));
}

body:not(.design-page) .korvix-modal__backdrop {
    background: rgba(0,0,0,0.78);
}

body:not(.design-page) .site-footer {
    border-top: 1px solid rgba(198,158,76,0.14);
}

body:not(.design-page) .site-footer--home {
    border-top: 1px solid rgba(198,158,76,0.1);
    background: linear-gradient(180deg, transparent, rgba(15,11,7,0.28));
}

body:not(.design-page) main section[id],
body:not(.design-page) .site-footer {
    scroll-margin-top: clamp(82px, 10svh, 116px);
}

@media (max-width: 820px) {
    body:not(.design-page) .site-header,
    body:not(.design-page) .site-header--minimal {
        left: 0.6rem;
        right: 0.6rem;
        width: auto;
        transform: none;
        padding: 0.5rem;
    }

    body:not(.design-page) .site-header--minimal {
        grid-template-columns: minmax(0, auto) minmax(0, 1fr);
    }

    body:not(.design-page) .site-header--minimal .site-brand {
        font-size: clamp(1rem, 4.2vw, 1.28rem);
    }

    body:not(.design-page) .site-header--minimal .site-actions {
        gap: 0.28rem;
    }

    body:not(.design-page) .site-header--minimal .site-cta,
    body:not(.design-page) .site-header--minimal .site-secondary,
    body:not(.design-page) .site-header--minimal .site-logout,
    body:not(.design-page) .site-header--minimal .language-switch select {
        min-width: 0;
        min-height: 34px;
        padding-inline: 0.52rem;
        font-size: 0.64rem;
    }

    body:not(.design-page) .site-header--minimal .language-switch select {
        width: clamp(6.15rem, 29vw, 7rem);
    }

    body:not(.design-page) .cases-head h2,
    body:not(.design-page) .team-head h2,
    body:not(.design-page) .calculator-head h1,
    body:not(.design-page) .portal-head h1 {
        font-size: clamp(2rem, 10vw, 3.25rem);
    }

    body:not(.design-page) main section[id],
    body:not(.design-page) .site-footer {
        scroll-margin-top: 86px;
    }
}

@media (max-width: 430px) {
    body:not(.design-page) .site-header,
    body:not(.design-page) .site-header--minimal {
        left: 0.45rem;
        right: 0.45rem;
        padding: 0.42rem;
    }

    body:not(.design-page) .site-header--minimal .site-brand {
        font-size: clamp(0.98rem, 5vw, 1.12rem);
    }

    body:not(.design-page) .site-header--minimal .site-cta,
    body:not(.design-page) .site-header--minimal .site-secondary,
    body:not(.design-page) .site-header--minimal .site-logout,
    body:not(.design-page) .site-header--minimal .language-switch select {
        min-height: 32px;
        padding-inline: 0.38rem;
        font-size: 0.58rem;
    }

    body:not(.design-page) .site-header--minimal .language-switch select {
        width: clamp(5.9rem, 31vw, 6.6rem);
    }
}
@media (max-width: 1180px) {
    body.design-page .design-header { grid-template-columns: auto minmax(0, 1fr) auto; }
    body.design-page .design-nav { gap: clamp(0.9rem, 2.5vw, 1.7rem); }
    body.design-page .design-hero-copy { width: min(560px, 54vw); }
    body.design-page .design-hero h1 { font-size: clamp(1.9rem, 3.45vw, 3.35rem); letter-spacing: 0.2em; }
    body.design-page .design-orbit-art { width: min(70vw, 780px); right: -1.4rem; }
}
@media (max-width: 900px) {
    body.design-page .design-header {
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: start;
        row-gap: 0.62rem;
        left: 0.9rem;
        right: 0.9rem;
        top: 0.75rem;
    }
    body.design-page .design-brand { min-height: 34px; font-size: 1.3rem; }
    body.design-page .design-actions { grid-column: 2; grid-row: 1; gap: 0.42rem; }
    body.design-page .design-language select {
        width: 4.7rem;
        min-width: 4.7rem;
        min-height: 32px;
        padding: 0 1rem 0 0.52rem;
        font-size: 0.58rem;
    }
    body.design-page .design-connect {
        min-width: 5.9rem;
        min-height: 32px;
        padding: 0 0.58rem;
        font-size: 0.58rem;
        letter-spacing: 0.12em;
    }
    body.design-page .design-nav {
        grid-column: 1 / -1;
        justify-content: start;
        gap: 1rem;
        overflow-x: auto;
        scrollbar-width: none;
        padding: 0.15rem 0 0.35rem;
        -webkit-mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 1.2rem), transparent 100%);
        mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 1.2rem), transparent 100%);
    }
    body.design-page .design-nav::-webkit-scrollbar { display: none; }
    body.design-page .design-nav a { font-size: 0.58rem; letter-spacing: 0.22em; }
    body.design-page .design-hero {
        min-height: auto;
        grid-template-rows: auto auto auto;
        padding-top: 7.7rem;
    }
    body.design-page .design-orbit-art {
        top: 6.6rem;
        right: -28vw;
        width: min(118vw, 780px);
        opacity: 0.62;
    }
    body.design-page .design-hero-copy {
        width: min(560px, 100%);
        min-height: 430px;
        display: grid;
        align-content: center;
        margin: 0;
        padding: clamp(2rem, 8svh, 3.4rem) 0;
    }
    body.design-page .design-hero h1 {
        max-width: 12ch;
        font-size: clamp(2rem, 8.6vw, 3.6rem);
        line-height: 1.18;
        letter-spacing: 0.14em;
    }
    body.design-page .design-hero h1 span { width: auto; max-width: 100%; white-space: normal; }
    body.design-page .design-hero h1 .design-led-image--title { height: 1.04em; max-width: 100%; }
    body.design-page .design-hero-copy > p { max-width: 29rem; font-size: 0.9rem; line-height: 1.64; }
    body.design-page .design-scroll { display: none; }
    body.design-page .design-service-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.design-page .design-mini-service { min-height: 164px; }
    body.design-page .design-hero-footer { min-height: 86px; }
    body.design-page .design-process-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.design-page .design-insight-grid { grid-template-columns: 1fr; }
    body.design-page .design-section-head, body.design-page .design-deliverables-layout {
        grid-template-columns: 1fr;
        gap: 1.1rem;
    }
    body.design-page .design-section-head h2 { font-size: clamp(1.55rem, 7.2vw, 3rem); letter-spacing: 0.08em; }
    body.design-page .design-deliverables-copy { max-width: none; }
}
@media (max-width: 620px) {
    body.design-page .design-header { left: 0.65rem; right: 0.65rem; }
    body.design-page .design-connect { display: none; }
    body.design-page .design-actions { gap: 0; }
    body.design-page .design-hero { --design-gutter: 1rem; padding-top: 7rem; }
    body.design-page .design-orbit-art {
        top: 8rem;
        right: -58vw;
        width: 150vw;
        opacity: 0.42;
    }
    body.design-page .design-kicker { margin-bottom: 1.25rem; }
    body.design-page .design-kicker p { font-size: 0.68rem; letter-spacing: 0.2em; }
    body.design-page .design-hero-copy { min-height: 440px; }
    body.design-page .design-hero h1 { font-size: clamp(1.8rem, 11vw, 3rem); letter-spacing: 0.1em; }
    body.design-page .design-hero h1 .design-led-image--title { height: 0.96em; }
    body.design-page .design-primary, body.design-page .design-secondary {
        width: 100%;
        min-width: 0;
        gap: 0.8rem;
        padding-inline: 1rem;
        font-size: 0.68rem;
        letter-spacing: 0.16em;
    }
    body.design-page .design-service-strip { grid-template-columns: 1fr; }
    body.design-page .design-mini-service {
        min-height: 146px;
        border-right: 1px solid rgba(216,168,84,0.13);
        padding: 1.18rem 1rem;
    }
    body.design-page .design-hero-footer {
        align-items: start;
        flex-direction: column;
        min-height: auto;
        padding-block: 1rem;
    }
    body.design-page .design-hero-footer a {
        width: 100%;
        min-width: 0;
        text-align: left;
    }
    body.design-page .design-band { padding: clamp(3.2rem, 8svh, 4.6rem) 1rem; }
    body.design-page .design-process-grid, body.design-page .design-insight-grid { grid-template-columns: 1fr; }
    body.design-page .design-process-grid article, body.design-page .design-insight-grid article { min-height: auto; }
    body.design-page .design-artifact-list { grid-template-columns: 1fr; }
    body.design-page .design-contact {
        align-items: stretch;
        flex-direction: column;
        padding: clamp(3.2rem, 8svh, 4.6rem) 1rem;
    }
    body.design-page .design-contact h2 { max-width: 11ch; font-size: clamp(1.8rem, 11vw, 3.3rem); }
    body.design-page .design-footer { align-items: flex-start; flex-direction: column; padding-inline: 1rem; }
}
@media (prefers-reduced-motion: reduce) {
    body.design-page::after, body.design-page .design-stars { animation: none; }
    body.design-page .design-brand,
    body.design-page .design-nav a,
    body.design-page .design-connect,
    body.design-page .design-kicker p,
    body.design-page .design-hero h1 span,
    body.design-page .design-primary span,
    body.design-page .design-secondary,
    body.design-page .design-scroll p,
    body.design-page .design-mini-service h2,
    body.design-page .design-hero-footer p,
    body.design-page .design-hero-footer a span,
    body.design-page .design-hero-footer a strong,
    body.design-page .design-section-head p,
    body.design-page .design-section-head h2,
    body.design-page .design-process-grid span,
    body.design-page .design-process-grid h3,
    body.design-page .design-insight-grid h3,
    body.design-page .design-artifact-list span,
    body.design-page .design-contact p,
    body.design-page .design-contact h2,
    body.design-page .design-footer span,
    body.design-page .design-footer a {
        animation: none;
        filter: none;
    }
}

body.design-page {
    --design-readable-font: Arial, "Segoe UI", sans-serif;
}
body.design-page :is(
    .design-brand,
    .design-nav a,
    .design-connect,
    .design-kicker p,
    .design-hero h1 span,
    .design-primary span,
    .design-secondary,
    .design-hero-footer p,
    .design-hero-footer a span,
    .design-hero-footer a strong,
    .design-section-head p,
    .design-section-head h2,
    .design-process-grid span,
    .design-process-grid h3,
    .design-insight-grid h3,
    .design-artifact-list span,
    .design-contact p,
    .design-contact h2,
    .design-footer span,
    .design-footer a
) {
    background: none;
    background-image: none;
    -webkit-background-clip: border-box;
    background-clip: border-box;
    -webkit-text-fill-color: currentColor;
    -webkit-text-stroke: 0;
    text-shadow: none;
    filter: none;
    opacity: 1;
    animation: none;
}
body.design-page :is(
    .design-brand,
    .design-nav a,
    .design-connect,
    .design-kicker p,
    .design-hero h1 span,
    .design-primary span,
    .design-secondary,
    .design-hero-footer p,
    .design-hero-footer a span,
    .design-hero-footer a strong,
    .design-section-head p,
    .design-section-head h2,
    .design-process-grid span,
    .design-process-grid h3,
    .design-insight-grid h3,
    .design-artifact-list span,
    .design-contact p,
    .design-contact h2,
    .design-footer span,
    .design-footer a
) .design-led-image {
    display: none;
}
body.design-page :is(
    .design-brand,
    .design-nav a,
    .design-connect,
    .design-kicker p,
    .design-hero h1 span,
    .design-primary span,
    .design-secondary,
    .design-hero-footer p,
    .design-hero-footer a span,
    .design-hero-footer a strong,
    .design-section-head p,
    .design-section-head h2,
    .design-process-grid span,
    .design-process-grid h3,
    .design-insight-grid h3,
    .design-artifact-list span,
    .design-contact p,
    .design-contact h2,
    .design-footer span,
    .design-footer a
) .sr-only {
    position: static;
    display: inline;
    width: auto;
    height: auto;
    max-width: none;
    overflow: visible;
    clip: auto;
    clip-path: none;
    color: inherit;
    white-space: normal;
    -webkit-text-fill-color: currentColor;
}
body.design-page .design-brand {
    color: #ffe8b7;
    font-family: var(--design-readable-font);
    font-size: clamp(1.22rem, 1.85vw, 1.58rem);
    font-weight: 800;
    letter-spacing: 0;
    text-transform: none;
}
body.design-page .design-nav {
    gap: clamp(1.1rem, 2.6vw, 2.35rem);
}
body.design-page .design-nav a,
body.design-page .design-connect,
body.design-page .design-language select {
    font-family: var(--design-readable-font);
    font-weight: 700;
    letter-spacing: 0;
    text-transform: none;
}
body.design-page .design-nav a {
    color: rgba(255,241,214,0.86);
    font-size: clamp(0.86rem, 0.95vw, 0.96rem);
    line-height: 1.2;
}
body.design-page .design-language select,
body.design-page .design-connect {
    font-size: 0.82rem;
    line-height: 1.15;
}
body.design-page .design-connect {
    min-width: 7rem;
}
body.design-page .design-kicker p,
body.design-page .design-primary,
body.design-page .design-primary span,
body.design-page .design-secondary {
    font-family: var(--design-readable-font);
    letter-spacing: 0.02em;
    text-transform: none;
}
body.design-page .design-primary,
body.design-page .design-secondary {
    font-size: 0.84rem;
}
body.design-page .design-hero h1 {
    font-family: var(--design-readable-font);
    font-size: clamp(2.75rem, 5.1vw, 5.35rem);
    line-height: 1.02;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: none;
}
body.design-page .design-hero h1 span {
    width: auto;
    max-width: min(10.5ch, 86vw);
    color: rgba(255,242,218,0.96);
    white-space: normal;
}
body.design-page .design-hero h1 span:first-child {
    color: #ffd98f;
}
body.design-page .design-hero-copy > p,
body.design-page .design-mini-service p,
body.design-page .design-process-grid p,
body.design-page .design-insight-grid p,
body.design-page .design-deliverables-copy p {
    color: rgba(239,229,211,0.78);
    font-family: var(--design-readable-font);
    font-size: clamp(0.96rem, 1.08vw, 1.06rem);
    line-height: 1.62;
    letter-spacing: 0;
}
body.design-page .design-scroll {
    display: none;
}
body.design-page .design-hero-footer p,
body.design-page .design-hero-footer a span,
body.design-page .design-hero-footer a strong,
body.design-page .design-section-head p,
body.design-page .design-process-grid span,
body.design-page .design-contact p,
body.design-page .design-footer span,
body.design-page .design-footer a {
    font-family: var(--design-readable-font);
    letter-spacing: 0.02em;
    text-transform: none;
}
body.design-page .design-hero-footer p {
    color: rgba(236,209,158,0.78);
    font-size: 0.9rem;
    line-height: 1.45;
}
body.design-page .design-hero-footer a span,
body.design-page .design-hero-footer a strong {
    font-size: 0.86rem;
    line-height: 1.35;
}
body.design-page .design-section-head p,
body.design-page .design-contact p {
    color: rgba(244,202,132,0.82);
    font-size: clamp(0.84rem, 0.95vw, 0.95rem);
    font-weight: 800;
}
body.design-page .design-section-head h2,
body.design-page .design-process-grid h3,
body.design-page .design-insight-grid h3,
body.design-page .design-contact h2 {
    color: rgba(255,244,224,0.96);
    font-family: var(--design-readable-font);
    font-weight: 800;
    letter-spacing: 0;
    text-transform: none;
}
body.design-page .design-section-head h2 {
    font-size: clamp(2rem, 4.4vw, 4.45rem);
    line-height: 1.02;
}
body.design-page .design-process-grid h3,
body.design-page .design-insight-grid h3 {
    font-size: clamp(1.08rem, 1.45vw, 1.34rem);
    line-height: 1.25;
}
body.design-page .design-process-grid span {
    color: rgba(244,202,132,0.82);
    font-size: 0.9rem;
    font-weight: 800;
}
body.design-page .design-artifact-list span {
    color: rgba(255,236,199,0.86);
    font-family: var(--design-readable-font);
    font-size: clamp(0.92rem, 1.05vw, 1.04rem);
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: 0;
    text-transform: none;
}
body.design-page .design-contact h2 {
    max-width: 18ch;
    font-size: clamp(2.15rem, 4.6vw, 4.85rem);
    line-height: 1.03;
}
body.design-page .design-footer {
    font-family: var(--design-readable-font);
    font-size: 0.88rem;
    letter-spacing: 0;
}
@media (max-width: 900px) {
    body.design-page .design-brand { font-size: 1.18rem; }
    body.design-page .design-nav a { font-size: 0.82rem; }
    body.design-page .design-language select,
    body.design-page .design-connect {
        font-size: 0.78rem;
    }
    body.design-page .design-hero h1 {
        max-width: 11ch;
        font-size: clamp(2.45rem, 10vw, 4rem);
        line-height: 1.04;
    }
    body.design-page .design-section-head h2 {
        font-size: clamp(2rem, 8vw, 3.25rem);
    }
}
@media (max-width: 620px) {
    body.design-page .design-nav {
        gap: 0.88rem;
    }
    body.design-page .design-nav a {
        font-size: 0.82rem;
    }
    body.design-page .design-hero h1 {
        max-width: 11ch;
        font-size: clamp(2.2rem, 12vw, 3.25rem);
    }
    body.design-page .design-primary,
    body.design-page .design-secondary {
        font-size: 0.82rem;
        letter-spacing: 0.02em;
    }
    body.design-page .design-contact h2 {
        max-width: 13ch;
        font-size: clamp(2.05rem, 11vw, 3.35rem);
    }
}
html body.design-page :is(
    .design-brand,
    .design-nav a,
    .design-connect,
    .design-kicker p,
    .design-hero h1 span,
    .design-primary span,
    .design-secondary,
    .design-hero-footer p,
    .design-hero-footer a span,
    .design-hero-footer a strong,
    .design-section-head p,
    .design-section-head h2,
    .design-process-grid span,
    .design-process-grid h3,
    .design-insight-grid h3,
    .design-artifact-list span,
    .design-contact p,
    .design-contact h2,
    .design-footer span,
    .design-footer a
) {
    color: rgba(255,244,224,0.94);
    -webkit-text-fill-color: currentColor;
}
html body.design-page :is(
    .design-brand,
    .design-nav a,
    .design-connect,
    .design-kicker p,
    .design-hero h1 span,
    .design-primary span,
    .design-secondary,
    .design-hero-footer p,
    .design-hero-footer a span,
    .design-hero-footer a strong,
    .design-section-head p,
    .design-section-head h2,
    .design-process-grid span,
    .design-process-grid h3,
    .design-insight-grid h3,
    .design-artifact-list span,
    .design-contact p,
    .design-contact h2,
    .design-footer span,
    .design-footer a
) .sr-only {
    color: inherit;
    -webkit-text-fill-color: currentColor;
}
html body.design-page .design-brand {
    color: #ffe8b7;
}
html body.design-page .design-nav a {
    color: rgba(255,241,214,0.88);
}
html body.design-page .design-connect,
html body.design-page .design-primary span,
html body.design-page .design-secondary {
    color: rgba(255,232,188,0.9);
}
html body.design-page .design-hero h1 span:first-child {
    color: #ffd98f;
}
html body.design-page .design-section-head p,
html body.design-page .design-process-grid span,
html body.design-page .design-contact p {
    color: rgba(244,202,132,0.84);
}
html body.design-page .design-process-grid p,
html body.design-page .design-insight-grid p,
html body.design-page .design-deliverables-copy p {
    color: rgba(239,229,211,0.78);
}
html body.design-page .design-artifact-list span {
    color: rgba(255,236,199,0.88);
}
html body.design-page .design-hero-footer p,
html body.design-page .design-hero-footer a span,
html body.design-page .design-hero-footer a strong,
html body.design-page .design-footer span,
html body.design-page .design-footer a {
    color: rgba(236,218,186,0.82);
}
