:root {
  --kobalt-ink: #070b10;
  --kobalt-surface: #0d141c;
  --kobalt-panel: #121c26;
  --kobalt-line: #263340;
  --kobalt-silver: #aab4be;
  --kobalt-mist: #dfe5ea;
  --kobalt-cobalt: #0b58ff;
  --kobalt-cobalt-light: #3b7cff;
}

html { scroll-behavior: smooth; }
body { overflow-x: hidden; }
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background:
    radial-gradient(circle at 78% 14%, rgba(11,88,255,.11), transparent 26rem),
    linear-gradient(145deg, #070b10, #0d151e 55%, #070b10);
}

.wp-site-blocks { padding: 0; }
.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  backdrop-filter: blur(18px);
  background: rgba(7,11,16,.84);
  border-bottom: 1px solid rgba(170,180,190,.18);
}
.admin-bar .site-header { top: 32px; }
.site-header .wp-block-navigation-item__content { text-decoration: none; }
.site-header .wp-block-navigation-item__content:hover { color: var(--kobalt-cobalt-light); }
body:not(.editor-styles-wrapper) .kobalt-nav-uk { display: none; }
html[lang^="uk"] body:not(.editor-styles-wrapper) .kobalt-nav-pl { display: none; }
html[lang^="uk"] body:not(.editor-styles-wrapper) .kobalt-nav-uk { display: flex; }
.kobalt-wordmark { letter-spacing: .32em; font-weight: 600; white-space: nowrap; }
.kobalt-eyebrow { color: var(--kobalt-cobalt-light); letter-spacing: .16em; text-transform: uppercase; font-size: .75rem; }
.kobalt-language-switcher { display: flex; align-items: center; gap: .35rem; font-size: .75rem; }
.kobalt-language-switcher a,
.kobalt-language-switcher span { padding: .35rem .5rem; color: var(--kobalt-silver); text-decoration: none; border: 1px solid transparent; }
.kobalt-language-switcher .is-current { color: white; border-color: var(--kobalt-line); background: var(--kobalt-panel); }

.kobalt-hero-cover { min-height: min(78vh, 760px); }
.kobalt-hero-cover .wp-block-cover__background {
  background: linear-gradient(90deg, rgba(7,11,16,.96) 0%, rgba(7,11,16,.82) 34%, rgba(7,11,16,.18) 76%, rgba(7,11,16,.08) 100%) !important;
  opacity: 1 !important;
}
.kobalt-hero-cover .wp-block-cover__image-background { object-position: center center; }
.kobalt-hero-copy { width: min(56%, 760px); margin-left: 0 !important; margin-right: auto !important; }
.kobalt-hero-copy .has-hero-font-size { font-size: clamp(3rem, 6vw, 6.5rem) !important; line-height: .94; }
.kobalt-section { padding-top: clamp(4rem,8vw,8rem); padding-bottom: clamp(4rem,8vw,8rem); }
.kobalt-panel {
  background: linear-gradient(135deg, rgba(255,255,255,.045), rgba(11,88,255,.055));
  border: 1px solid var(--kobalt-line);
  box-shadow: 0 22px 70px rgba(0,0,0,.24);
}
.kobalt-card { height: 100%; overflow: hidden; border: 1px solid var(--kobalt-line); background: var(--kobalt-surface); }
.kobalt-card:hover { border-color: rgba(59,124,255,.65); transform: translateY(-3px); transition: .25s ease; }
.kobalt-card .wp-block-image img { width: 100%; aspect-ratio: 16/9; object-fit: cover; }
.kobalt-card > .kobalt-card-image { margin-top: calc(var(--wp--preset--spacing--40) * -1); margin-right: calc(var(--wp--preset--spacing--30) * -1); margin-left: calc(var(--wp--preset--spacing--30) * -1); }
.kobalt-portfolio-image img { width: 100%; aspect-ratio: 16/9; object-fit: cover; border: 1px solid var(--kobalt-line); }
.kobalt-before-after-image img,
.kobalt-studio-image img { width: 100%; aspect-ratio: 16/9; object-fit: cover; border: 1px solid var(--kobalt-line); }
.kobalt-step-number { color: var(--kobalt-cobalt-light); font-size: 1.75rem; font-weight: 400; }
.kobalt-price { color: var(--kobalt-cobalt-light); font-size: clamp(2rem,4vw,3.5rem); letter-spacing: -.04em; }
.kobalt-checklist { list-style: none; padding-left: 0; }
.kobalt-checklist li { position: relative; padding-left: 1.6rem; margin-bottom: .45rem; }
.kobalt-checklist li::before { content: "✓"; position: absolute; left: 0; color: var(--kobalt-cobalt-light); }
.kobalt-photo-placeholder {
  min-height: 420px;
  background:
    linear-gradient(115deg, rgba(7,11,16,.88), rgba(7,11,16,.08)),
    radial-gradient(circle at 65% 52%, rgba(180,190,200,.48), transparent 16rem),
    linear-gradient(135deg, #1a232c, #090d12);
  border: 1px solid var(--kobalt-line);
}
.kobalt-photo-placeholder::after {
  content: "Dodaj zdjęcie / Додайте фото";
  display: grid;
  place-items: center;
  min-height: inherit;
  color: rgba(223,229,234,.5);
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: .75rem;
}
.kobalt-before-after { overflow: hidden; border: 1px solid var(--kobalt-line); }
.kobalt-before-after .wp-block-column { min-height: 360px; display: flex; align-items: flex-end; padding: 1rem; background: linear-gradient(135deg,#131a21,#3a424a); }
.kobalt-before-after .wp-block-column + .wp-block-column { background: linear-gradient(135deg,#29333c,#79848d); border-left: 2px solid white; }
.kobalt-footer { border-top: 1px solid var(--kobalt-line); background: #080d12; }
.kobalt-chat-fallback {
  position: fixed;
  z-index: 60;
  right: 1.25rem;
  bottom: 1.25rem;
  display: flex;
  align-items: center;
  gap: .65rem;
  padding: .9rem 1.1rem;
  border-radius: 999px;
  background: var(--kobalt-cobalt);
  color: white;
  text-decoration: none;
  box-shadow: 0 12px 40px rgba(11,88,255,.38);
}
.has-js .kobalt-reveal { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; }
.has-js .kobalt-reveal.is-visible { opacity: 1; transform: none; }

@media (max-width: 900px) {
  .admin-bar .site-header { top: 46px; }
  .site-header .wp-block-navigation__responsive-container.is-menu-open { background: var(--kobalt-ink); color: white; padding: 2rem; }
  .kobalt-section { padding-top: 4rem; padding-bottom: 4rem; }
  .kobalt-hero-cover { min-height: 640px !important; }
  .kobalt-hero-cover .wp-block-cover__background { background: linear-gradient(180deg, rgba(7,11,16,.5), rgba(7,11,16,.96) 72%) !important; }
  .kobalt-hero-cover .wp-block-cover__image-background { object-position: 62% center; }
  .kobalt-hero-copy { width: 100%; align-self: flex-end; }
  .kobalt-hero-copy .has-hero-font-size { font-size: clamp(2.7rem, 13vw, 4.6rem) !important; }
  .kobalt-photo-placeholder { min-height: 280px; }
  .kobalt-before-after .wp-block-column { min-height: 240px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .has-js .kobalt-reveal { opacity: 1; transform: none; transition: none; }
}
