/* Dukrana Grupe — Custom Styles */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700&family=Inter:wght@300;400;500&family=Epilogue:wght@300;400;500;600;700&display=swap');

/* Glyph fallback: Epilogue/Inter subsets lack the Arrows block (U+2190–21FF), so → shows as a blank box; map that range to local Arial/DejaVu/Segoe UI Symbol. */
@font-face {
  font-family: 'Epilogue';
  src: local('Arial'), local('DejaVu Sans'), local('Segoe UI Symbol'), local('Apple Symbols');
  unicode-range: U+2190-21FF, U+2794-27BF;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}
@font-face {
  font-family: 'Inter';
  src: local('Arial'), local('DejaVu Sans'), local('Segoe UI Symbol'), local('Apple Symbols');
  unicode-range: U+2190-21FF, U+2794-27BF;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

/* PAGE PADDING TOKENS — single source of truth for horizontal padding (--page-padding-x). Breakpoints: 64 (≥1201) → 40 (≤1200) → 24 (≤900) → 16 (≤480) */
:root {
  --page-padding-x: 64px;
}

@media (max-width: 1200px) {
  :root { --page-padding-x: 40px; }
}

@media (max-width: 900px) {
  :root { --page-padding-x: 24px; }
}

@media (max-width: 480px) {
  :root { --page-padding-x: 16px; }
}

/* Horizontal padding for full-width sections; only alignfull parents carry it, inner content inherits the edge. */
.wp-block-group.alignfull,
.wp-block-cover.alignfull:first-child {
  padding-left: var(--page-padding-x);
  padding-right: var(--page-padding-x);
}

/* Bleed-track helper: tracks extend to the viewport edge while the first card stays on the content left. */
.dukrana-industries-track,
.dukrana-news-carousel-track {
  margin-inline: calc(-1 * var(--page-padding-x));
  padding-inline: var(--page-padding-x);
}

/* ACF block wrappers must bleed to viewport — older post_content doesn't persist align:full, so force every ACF block full-width or the inner .alignfull is trapped. */
:where(.wp-site-blocks, main) [class*="wp-block-acf-"] {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/* Prevent horizontal scroll from 100vw elements */
html,
body {
  overflow-x: hidden !important;
}

/* HEADER / NAVIGATION */

/* Header floats over hero — remove all gaps */
.wp-site-blocks {
  position: relative;
  padding-top: 0 !important;
}

.wp-site-blocks>* {
  margin-block-start: 0 !important;
}

/* Remove default block gap between sections in main */
.wp-site-blocks main.wp-block-group {
  gap: 0 !important;
}

.wp-site-blocks main.wp-block-group>*,
.wp-site-blocks main.wp-block-group .wp-block-post-content,
.wp-site-blocks main.wp-block-group .wp-block-post-content>*,
.wp-site-blocks main.wp-block-group .entry-content,
.wp-site-blocks main.wp-block-group .entry-content>* {
  margin-block-start: 0 !important;
  margin-top: 0 !important;
}

.wp-site-blocks main.wp-block-group .wp-block-post-content,
.wp-site-blocks main.wp-block-group .entry-content {
  display: flex;
  flex-direction: column;
  gap: 0 !important;
}

.wp-site-blocks>header.wp-block-template-part {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
}

.wp-site-blocks>header.wp-block-template-part.is-sticky {
  position: fixed;
  top: 0;
  animation: slideDown 0.3s ease-out;
}

.wp-site-blocks>header.wp-block-template-part.is-sticky .dukrana-nav-glass {
  background: rgba(252, 252, 247, 0.35);
  box-shadow: 0 2px 16px rgba(19, 61, 55, 0.06);
}

@keyframes slideDown {
  from {
    transform: translateY(-100%);
  }

  to {
    transform: translateY(0);
  }
}

/* Remove WooCommerce account/cart blocks from header */
.dukrana-header-wrap .wp-block-woocommerce-customer-account,
.dukrana-nav-inner .wp-block-woocommerce-customer-account,
.dukrana-main-nav .wp-block-woocommerce-customer-account,
.dukrana-main-nav [data-block-name="woocommerce/customer-account"],
.dukrana-header-wrap .wp-block-woocommerce-mini-cart,
.dukrana-header-wrap .wc-block-mini-cart,
.dukrana-header-wrap [class*="mini-cart"],
.dukrana-header-wrap [class*="wc-block-cart"],
.dukrana-main-nav a[href*="/cart"],
.dukrana-main-nav a[href*="/krepselis"],
.dukrana-main-nav a[href$="?page_id=cart"],
.dukrana-header-wrap a[href*="/cart"],
.dukrana-header-wrap a[href*="/krepselis"] {
  display: none !important;
}

/* Hide default WP nav hamburger on desktop */
.dukrana-main-nav .wp-block-navigation__responsive-container-open {
  display: none !important;
}

/* MOBILE HEADER — hamburger, square CTA, drawer (desktop hides all mobile-only chrome) */

.dukrana-menu-toggle,
.dukrana-mobile-cta {
  display: none;
}

.dukrana-menu-toggle {
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  outline: none;
  background: transparent;
  color: var(--wp--preset--color--dark-green);
  cursor: pointer;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  transition: background 0.2s ease;
  flex-shrink: 0;
  -webkit-tap-highlight-color: transparent;
  -webkit-appearance: none;
  appearance: none;
}

.dukrana-menu-toggle:hover {
  background: rgba(31, 98, 89, 0.08);
}

.dukrana-menu-toggle:focus,
.dukrana-menu-toggle:focus-visible {
  background: transparent;
  outline: none;
}

.dukrana-menu-toggle:focus:hover,
.dukrana-menu-toggle:focus-visible:hover {
  background: rgba(31, 98, 89, 0.08);
}

.dukrana-menu-toggle-bars {
  width: 22px;
  height: 16px;
  position: relative;
  display: inline-block;
}

.dukrana-menu-toggle-bars span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background: currentColor;
  border-radius: 2px;
  transition: transform 0.25s ease, opacity 0.2s ease, top 0.25s ease;
}

.dukrana-menu-toggle-bars span:nth-child(1) {
  top: 2px;
}

.dukrana-menu-toggle-bars span:nth-child(2) {
  top: 7px;
}

.dukrana-menu-toggle-bars span:nth-child(3) {
  top: 12px;
}

.dukrana-menu-toggle[aria-expanded="true"] .dukrana-menu-toggle-bars span:nth-child(1) {
  top: 7px;
  transform: rotate(45deg);
}

.dukrana-menu-toggle[aria-expanded="true"] .dukrana-menu-toggle-bars span:nth-child(2) {
  opacity: 0;
}

.dukrana-menu-toggle[aria-expanded="true"] .dukrana-menu-toggle-bars span:nth-child(3) {
  top: 7px;
  transform: rotate(-45deg);
}

.dukrana-mobile-cta {
  position: relative;
  width: 44px;
  height: 44px;
  border-radius: 8px;
  background: var(--wp--preset--color--dark-green);
  color: var(--wp--preset--color--white);
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  text-decoration: none;
  transition: background 0.2s ease;
}

.dukrana-mobile-cta:hover {
  background: #1a544d;
}

.dukrana-mobile-cta-icon {
  width: 22px;
  height: 22px;
}

.dukrana-mobile-cta-count {
  position: absolute;
  top: -4px;
  right: -4px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  background: var(--wp--preset--color--accent, #f4a261);
  color: #0c2a26;
  font-family: 'Epilogue', sans-serif;
  font-size: 11px;
  font-weight: 700;
  line-height: 18px;
  text-align: center;
}

.dukrana-mobile-cta-count:empty,
.dukrana-mobile-cta-count[data-count="0"] {
  display: none;
}

/* Drawer */

.dukrana-drawer {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  visibility: hidden;
  pointer-events: none;
}

.dukrana-drawer.is-open {
  visibility: visible;
  pointer-events: auto;
}

.dukrana-drawer-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(12, 42, 38, 0.4);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.dukrana-drawer.is-open .dukrana-drawer-backdrop {
  opacity: 1;
}

.dukrana-drawer-panel {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  height: 100svh;
  max-height: 100svh;
  width: min(320px, 88vw);
  background: #f3f1ef;
  box-shadow: 2px 0 24px rgba(12, 42, 38, 0.16);
  transform: translateX(-100%);
  transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1);
  display: flex;
  flex-direction: column;
  padding: 20px 24px calc(56px + env(safe-area-inset-bottom, 0px));
  gap: 16px;
  overflow: hidden;
  overscroll-behavior: contain;
}

@supports not (height: 100svh) {
  .dukrana-drawer-panel {
    height: 100vh;
    max-height: 100vh;
  }
}

.dukrana-drawer.is-open .dukrana-drawer-panel {
  transform: translateX(0);
}

.dukrana-drawer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.dukrana-drawer-logo img {
  display: block;
  width: 123px;
  height: auto;
}

.dukrana-drawer-close {
  width: 40px;
  height: 40px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--wp--preset--color--dark-green);
  cursor: pointer;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s ease;
}

.dukrana-drawer-close:hover {
  background: rgba(31, 98, 89, 0.08);
}

.dukrana-drawer-close svg {
  width: 22px;
  height: 22px;
}

.dukrana-drawer-head {
  flex: 0 0 auto;
}

.dukrana-drawer-nav {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 0 0 auto;
}

.dukrana-drawer-link {
  display: block;
  padding: 14px 12px;
  font-family: 'Epilogue', sans-serif;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.012em;
  color: var(--wp--preset--color--dark-green);
  text-decoration: none;
  border-radius: 10px;
  transition: background 0.2s ease;
}

.dukrana-drawer-link:hover,
.dukrana-drawer-link:focus-visible {
  background: rgba(31, 98, 89, 0.08);
  outline: none;
}

/* Panel gets programmatic focus on open (keyboard users) — suppress its focus ring. */
.dukrana-drawer-panel:focus,
.dukrana-drawer-panel:focus-visible {
  outline: none;
}

.dukrana-drawer-group {
  display: flex;
  flex-direction: column;
}

.dukrana-drawer-link-toggle {
  appearance: none;
  -webkit-appearance: none;
  background: transparent;
  background-color: transparent;
  border: 0;
  box-shadow: none;
  outline: none;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 12px;
  font-family: 'Epilogue', sans-serif;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.012em;
  color: var(--wp--preset--color--dark-green);
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  border-radius: 10px;
  transition: background 0.2s ease;
}

.dukrana-drawer-link-toggle:hover {
  background: rgba(31, 98, 89, 0.08);
}

.dukrana-drawer-link-toggle:focus-visible {
  background: rgba(31, 98, 89, 0.08);
  outline: none;
}

.dukrana-drawer-link-chevron {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  transition: transform 0.2s ease;
  color: var(--wp--preset--color--dark-green);
}

.dukrana-drawer-link-toggle[aria-expanded="true"] .dukrana-drawer-link-chevron {
  transform: rotate(180deg);
}

.dukrana-drawer-submenu {
  display: none;
}

.dukrana-drawer-submenu.is-open {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin: 0 0 4px 14px;
  padding: 4px 0 6px 12px;
  border-left: 1px solid rgba(31, 98, 89, 0.18);
  animation: dukrana-drawer-sub-open 0.24s ease both;
}

@keyframes dukrana-drawer-sub-open {
  0%   { opacity: 0; transform: translateY(-4px); }
  100% { opacity: 1; transform: translateY(0); }
}

.dukrana-drawer-sublink {
  display: block;
  padding: 10px 12px;
  font-family: 'Epilogue', sans-serif;
  font-size: 14.5px;
  font-weight: 400;
  letter-spacing: -0.008em;
  color: var(--wp--preset--color--dark-green);
  text-decoration: none;
  border-radius: 8px;
  transition: background 0.2s ease;
}

.dukrana-drawer-submenu.is-open .dukrana-drawer-sublink {
  animation: dukrana-drawer-sublink-in 0.28s ease both;
}

@keyframes dukrana-drawer-sublink-in {
  0%   { opacity: 0; transform: translateY(-4px); }
  100% { opacity: 1; transform: translateY(0); }
}

.dukrana-drawer-submenu.is-open .dukrana-drawer-sublink:nth-child(1) { animation-delay: 0.04s; }
.dukrana-drawer-submenu.is-open .dukrana-drawer-sublink:nth-child(2) { animation-delay: 0.08s; }
.dukrana-drawer-submenu.is-open .dukrana-drawer-sublink:nth-child(3) { animation-delay: 0.12s; }
.dukrana-drawer-submenu.is-open .dukrana-drawer-sublink:nth-child(4) { animation-delay: 0.16s; }
.dukrana-drawer-submenu.is-open .dukrana-drawer-sublink:nth-child(5) { animation-delay: 0.20s; }
.dukrana-drawer-submenu.is-open .dukrana-drawer-sublink:nth-child(n+6) { animation-delay: 0.22s; }

.dukrana-drawer-sublink:hover,
.dukrana-drawer-sublink:focus-visible {
  background: rgba(31, 98, 89, 0.08);
  outline: none;
}

.dukrana-drawer-foot {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-top: 16px;
  margin-top: auto;
  margin-bottom: 72px;
  border-top: 1px solid rgba(31, 98, 89, 0.15);
}

.dukrana-drawer-lang {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px;
  background: rgba(31, 98, 89, 0.08);
  border-radius: 999px;
  align-self: flex-start;
}

.dukrana-drawer-lang-option {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  border: 0;
  background: transparent;
  padding: 4px 14px 0;
  min-width: 48px;
  height: 32px;
  font-family: 'Epilogue', sans-serif;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  color: var(--wp--preset--color--dark-green);
  border-radius: 999px;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
}

.dukrana-drawer-lang-option.is-active {
  background: var(--wp--preset--color--dark-green);
  color: var(--wp--preset--color--white);
}

/* Options render as <a> now (real WPML links) — keep the pill look. */
a.dukrana-drawer-lang-option {
  text-decoration: none;
}

.dukrana-drawer-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 14px 20px;
  background: var(--wp--preset--color--dark-green);
  color: var(--wp--preset--color--white);
  font-family: 'Epilogue', sans-serif;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: -0.012em;
  border-radius: 999px;
  text-decoration: none;
  transition: background 0.2s ease;
}

.dukrana-drawer-cta:hover {
  background: #1a544d;
}

/* Prevent body scroll when drawer is open */
body.dukrana-drawer-open {
  overflow: hidden;
}

.dukrana-header-wrap {
  position: relative;
  z-index: 100;
}

.dukrana-nav-glass {
  background: rgba(252, 252, 247, 0.28);
  backdrop-filter: blur(22px) saturate(140%);
  -webkit-backdrop-filter: blur(22px) saturate(140%);
  border-radius: 8px;
  padding: 8px;
}

.dukrana-nav-inner {
  background: #FFFFFF;
  border-radius: 4px;
}

.dukrana-main-nav .wp-block-navigation-item a,
.dukrana-btn-accent .wp-block-button__link,
.dukrana-btn-dark .wp-block-button__link,
.dukrana-btn-grey .wp-block-button__link {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Logo */
.dukrana-logo-link {
  display: flex;
  align-items: center;
  text-decoration: none;
  flex-shrink: 0;
}

.dukrana-logo {
  display: block;
  width: 123px;
  height: auto;
}

/* Nav links — plain text, pill on hover */
.dukrana-main-nav .wp-block-navigation-item a {
  padding: 8px 16px;
  border-radius: 4px;
  transition: background 0.2s, color 0.2s;
  color: var(--wp--preset--color--dark-green) !important;
  text-decoration: none !important;
  background: transparent;
}

.dukrana-main-nav .wp-block-navigation-item a:hover {
  background: var(--wp--preset--color--grey);
}

/* Override WP nav defaults */
.dukrana-main-nav.wp-block-navigation {
  gap: 0;
}

/* Static (wp:html) nav — mirror the flex layout wp:navigation used */
nav.dukrana-main-nav {
  display: flex;
  align-items: center;
  justify-content: center;
}

.dukrana-main-nav .wp-block-navigation__container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}

.dukrana-main-nav .wp-block-navigation-item {
  list-style: none;
  margin: 0;
  padding: 0;
  display: block;
}

.dukrana-main-nav .wp-block-navigation-item::before,
.dukrana-main-nav .wp-block-navigation-item::marker {
  content: none;
}

.dukrana-main-nav .wp-block-navigation-item__content {
  font-family: 'Epilogue', sans-serif;
  font-size: 13.5px;
  font-style: normal;
  font-weight: 500;
  letter-spacing: -0.012em;
  line-height: 1.2;
  display: inline-block;
}

/* EN hidden until translations are finished — hide the language switcher
   everywhere (header + mobile drawer + WPML footer). Remove this block to re-enable. */
.dukrana-lang-switcher,
.dukrana-drawer-lang,
.wpml-ls,
.wpml-ls-statics-footer {
  display: none !important;
}

/* Language switcher (WPML-ready) */
.dukrana-lang-switcher {
  position: relative;
  z-index: 100;
}

.dukrana-lang-toggle {
  display: flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
  user-select: none;
}

.dukrana-lang-globe-img {
  width: 20px;
  height: 20px;
  display: block;
}

.dukrana-lang-chevron {
  width: 10px;
  height: 6px;
  color: var(--wp--preset--color--dark-green);
  transition: transform 0.2s ease;
}

.dukrana-lang-switcher.is-open .dukrana-lang-chevron {
  transform: rotate(180deg);
}

.dukrana-lang-dropdown {
  position: absolute;
  top: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%);
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 4px 16px rgba(19, 61, 55, 0.12);
  padding: 4px;
  min-width: 56px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.dukrana-lang-switcher.is-open .dukrana-lang-dropdown {
  opacity: 1;
  visibility: visible;
}

.dukrana-lang-option {
  display: block;
  padding: 8px 12px;
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 13.5px;
  font-weight: 500;
  color: var(--wp--preset--color--dark-green);
  text-decoration: none;
  text-align: center;
  border-radius: 4px;
  transition: background 0.15s ease;
}

.dukrana-lang-option:hover {
  background: var(--wp--preset--color--grey);
}

/* Legacy fallback classes */
.dukrana-lang-globe {
  width: 20px;
  height: 20px;
  display: block;
}

.dukrana-lang-globe.wp-block-image {
  margin: 0 !important;
}

.dukrana-lang-globe.wp-block-image img {
  display: block;
}

.dukrana-lang-text {
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 13.5px;
  font-weight: 500;
  color: var(--wp--preset--color--dark-green);
  line-height: 1.025;
}

/* Mobile menu button — hidden on desktop, shown on mobile via responsive section */

/* GLOBAL — Reset WP figure margins inside custom components */

.dukrana-trust-icon .wp-block-image,
.dukrana-icon-circle .wp-block-image,
.dukrana-product-icon .wp-block-image,
.dukrana-product-arrow .wp-block-image,
.dukrana-hero-feature-icon.wp-block-image,
.dukrana-industry-arrow-circle .wp-block-image,
.dukrana-logo-link .wp-block-image {
  margin: 0 !important;
}

/* GLOBAL BODY TEXT — light weight per Figma */

.wp-block-group p:not([style*="font-weight"]),
.wp-block-cover p:not([style*="font-weight"]),
.wp-block-post-content p:not([style*="font-weight"]),
.entry-content p:not([style*="font-weight"]),
.dukrana-problems-item-desc,
.dukrana-problems-intro,
.dukrana-about-intro-text,
.dukrana-about-services-text,
.dukrana-news-intro,
.dukrana-catalog-card-specs,
.dukrana-catalog-empty-text,
.dukrana-trust-content p,
.dukrana-industry-pg-subtitle,
.dukrana-service-row-text,
.dukrana-contact-text,
.dukrana-case-cta-panel p,
p.has-text-color:not([style*="font-weight"]),
main li:not([style*="font-weight"]),
main p:not([style*="font-weight"]) {
  font-weight: 300;
}

/* Synthesize a lighter weight when the font file lacks it (Inter 400/500, Jakarta 400+) instead of snapping back to 400. Only affects text with no explicit weight. */
body {
  font-synthesis-weight: auto;
}

/* SECTION BADGE PILL */

.dukrana-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--wp--preset--color--accent);
  color: var(--wp--preset--color--green);
  padding: 8px 16px;
  border-radius: 100px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.025;
}

.dukrana-badge::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  /* flex-shrink:0 so a long badge label never squashes the dot into an oval. */
  flex-shrink: 0;
  background: var(--wp--preset--color--green);
  border-radius: 50%;
  /* Dot centred on the label: align-items:center + margin-top:0 lands it on Epilogue's optical centre (measured in-browser; -2px sat ~1px high). */
  margin-top: 0;
  animation: badgePulse 2s ease-in-out infinite;
}

@keyframes badgePulse {

  0%,
  100% {
    opacity: 1;
    transform: scale(1);
  }

  50% {
    opacity: 0.4;
    transform: scale(0.75);
  }
}

/* HERO */

/* Hero category links */
.dukrana-hero-categories {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  height: 20px;
}

.dukrana-hero-cat {
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
  color: var(--wp--preset--color--accent);
}

.dukrana-hero-cat-dot {
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.43;
  color: var(--wp--preset--color--accent);
  width: 4px;
  text-align: center;
}

/* Hero dashed decorative circle */
.wp-block-cover.alignfull:first-child {
  position: relative;
  overflow: hidden;
}

.wp-block-cover.alignfull:first-child::before {
  content: "";
  position: absolute;
  width: 1369.55px;
  height: 1369.55px;
  border: 1px dashed rgba(255, 255, 255, 0.6);
  border-radius: 50%;
  top: -650.78px;
  left: -548.78px;
  pointer-events: none;
  z-index: 1;
}

/* Hero description */
.dukrana-hero-desc {
  max-width: 590px;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center;
}

/* Hero feature badges */
.dukrana-hero-features {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  margin: 20px 0;
}

.dukrana-hero-feature {
  display: flex;
  align-items: center;
  gap: 12px;
}

.dukrana-hero-feature-icon {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  display: block;
  backdrop-filter: blur(37.5px);
  -webkit-backdrop-filter: blur(37.5px);
  border-radius: 32px;
}

.dukrana-hero-feature span {
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 14px;
  color: var(--wp--preset--color--white);
  white-space: nowrap;
}

.dukrana-hero-scroll-next {
  position: absolute;
  left: 50%;
  bottom: 62px;
  opacity: 1;
  transform: translateX(-50%);
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #FAFAFA;
  text-decoration: none;
  z-index: 2;
  transition: transform 150ms ease, background 150ms ease;
}

.dukrana-hero-scroll-next:hover {
  transform: translate(-50%, 2px);
  background: rgba(255, 255, 255, 0.25);
  color: #FAFAFA;
}

.dukrana-hero-scroll-next-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.dukrana-hero-scroll-next-icon svg {
  width: 10px;
  height: 10px;
  transform: rotate(90deg);
}

@media (max-width: 1024px) {
  .dukrana-hero-scroll-next {
    bottom: 20px;
  }
  /* Reserve space below CTA stack so scroll button never crowds them */
  .wp-block-cover.alignfull:first-child .wp-block-cover__inner-container {
    padding-bottom: 96px;
  }
}

.dukrana-hero-overlay {
  position: relative;
}

.dukrana-hero-overlay::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
  pointer-events: none;
}

.dukrana-hero-overlay>* {
  position: relative;
  z-index: 1;
}

/* Mobile: inline min-height:100vh uses the large viewport (taller than visible); override with svh/dvh. !important beats the inline style. */
@media (max-width: 1024px) {
  .dukrana-hero {
    min-height: 100svh !important;
    min-height: 100dvh !important;
  }
}

/* DASHED BORDERS */

.dukrana-dashed-border {
  border: 1px dashed rgba(31, 98, 89, 0.6);
  border-radius: 16px;
  background: var(--wp--preset--color--grey) !important;
  overflow: visible;
  gap: 0 !important;
}

.dukrana-dashed-border-light {
  border: 1px dashed rgba(255, 255, 255, 0.6);
  border-radius: 16px;
}

/* TRUST GRID (custom HTML) */

.dukrana-trust-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0 !important;
  border: 1px dashed rgba(31, 98, 89, 0.6);
  border-radius: 16px;
  background: var(--wp--preset--color--grey);
  position: relative;
  overflow: hidden;
  margin-bottom: 0;
  overflow: hidden;
}

.dukrana-trust-col,
.wp-block-column.dukrana-trust-col {
  padding: 40px 40px 64px;
  display: flex !important;
  flex-direction: column;
  gap: 64px;
  align-self: stretch;
  height: 100%;
  margin: 0 !important;
  flex-basis: auto !important;
}

.dukrana-trust-col+.dukrana-trust-col {
  border-left: 1px dashed rgba(31, 98, 89, 0.6);
}

.dukrana-trust-icon {
  width: 40px;
  height: 40px;
  min-width: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.dukrana-trust-icon img {
  width: 40px;
  height: 40px;
  display: block;
}

.dukrana-trust-content {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.dukrana-trust-content h4 {
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 24px;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: -0.021em;
  color: var(--wp--preset--color--dark-green);
  margin: 0;
}

.dukrana-trust-content p {
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.429;
  color: var(--wp--preset--color--dark-green);
  margin: 0;
}

.dukrana-trust-badge {
  display: flex;
  justify-content: center;
  padding: 0 40px;
  position: relative;
  z-index: 2;
  margin-top: -24px !important;
  /* Pull badge up so it overlaps the grid bottom border */
  margin-block-start: -24px !important;
}

.dukrana-trust-badge p,
.dukrana-trust-badge span {
  display: inline-flex;
  align-items: center;
  background: var(--wp--preset--color--dark-green);
  color: var(--wp--preset--color--white) !important;
  font-family: var(--wp--preset--font-family--inter);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.3;
  padding: 16px 24px;
  border-radius: 8px;
  margin: 0;
  /* Soft white glow separates the badge from a hovered dark-green card behind it, without a hard ring. */
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.35), 0 0 16px 4px rgba(255, 255, 255, 0.25);
}

/* INDUSTRY CARDS */

.dukrana-industries-track {
  gap: 24px;
  padding-block: 8px;
  margin-block: -8px;
  margin-top: 32px;
}

.dukrana-industries-head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
  max-width: 921px;
  margin-left: 0 !important;
}

.dukrana-industries-head .dukrana-industries-heading {
  align-self: stretch;
}

.dukrana-industries-heading {
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 38px;
  line-height: 1.33;
  letter-spacing: -0.02em;
  margin: 0;
  font-weight: 400;
}

.dukrana-industries-nav {
  display: flex;
  gap: 10.86px;
  justify-content: flex-end;
  margin-top: 32px;
}

.dukrana-industry-card {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  width: 390px;
  min-width: 390px;
  height: 500px;
  flex-shrink: 0;
  cursor: pointer;
  padding: 32px;
  box-sizing: border-box;
  background-size: cover;
  background-position: center center;
  text-decoration: none;
  color: inherit;
  /* Let Gutenberg flex handle layout; enforce space-between */
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
}

.dukrana-industry-card:hover,
.dukrana-industry-card:focus,
.dukrana-industry-card:focus-visible {
  text-decoration: none;
  color: inherit;
}

.dukrana-industry-card:focus-visible {
  outline: 2px solid var(--wp--preset--color--accent, #f4a261);
  outline-offset: 4px;
}

/* Image layer — inherits background from element, can scale on hover */
.dukrana-industry-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: inherit;
  border-radius: 8px;
  transition: transform 0.5s ease-out;
  z-index: 0;
}

.dukrana-industry-card:hover::before {
  transform: scale(1.05);
}

/* Dark overlay — matches Figma rgba(0,0,0,0.25) */
.dukrana-industry-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.25);
  border-radius: 8px;
  pointer-events: none;
  transition: background 0.4s ease;
  z-index: 1;
}

.dukrana-industry-card:hover::after {
  background: rgba(0, 0, 0, 0.45);
}

/* Lift card content above the overlays */
.dukrana-industry-card>* {
  position: relative;
  z-index: 2;
}

.dukrana-industry-inner {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 500px;
  padding: 40px;
  box-sizing: border-box;
}

.dukrana-industry-top {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.dukrana-industry-top h4 {
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 24px;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: -0.021em;
  color: #fff;
  margin: 0;
}

.dukrana-industry-top p {
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.43;
  color: rgba(255, 255, 255, 0.85);
  margin: 0;
}

.dukrana-industry-bottom,
.wp-block-group.dukrana-industry-bottom,
.dukrana-industry-card>.dukrana-industry-bottom,
.dukrana-industry-card>.wp-block-group.dukrana-industry-bottom {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 10px !important;
  width: fit-content !important;
  max-width: fit-content !important;
  align-self: flex-start !important;
  justify-content: flex-start !important;
}

.dukrana-industry-bottom span,
.dukrana-industry-bottom p {
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  color: var(--wp--preset--color--white);
  margin: 0;
}

.dukrana-industry-arrow-circle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  min-width: 32px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  transition: background 0.25s cubic-bezier(0.25, 0.1, 0.25, 1), transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.dukrana-industry-arrow-circle img {
  width: 12px;
  height: 12px;
  display: block;
}

.dukrana-industry-arrow-circle .wp-block-image,
.dukrana-industry-arrow-circle figure {
  display: contents !important;
}

.dukrana-industry-bottom {
  cursor: pointer;
}

.dukrana-industry-bottom:hover .dukrana-industry-arrow-circle,
.dukrana-industry-card:hover .dukrana-industry-arrow-circle {
  background: rgba(255, 255, 255, 0.35);
  transform: translateX(6px);
}

.dukrana-industry-bottom p {
  transition: text-decoration 0.2s ease;
}

/* ICON CIRCLES */

.dukrana-icon-circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  min-width: 40px;
  flex-shrink: 0;
}

.dukrana-icon-circle img {
  width: 40px;
  height: 40px;
}

.dukrana-icon-circle-dark,
.dukrana-icon-circle-light {
  /* SVGs already contain their own background circles */
}

/* TECHNICAL LIBRARY CARDS */

.dukrana-tech-card {
  position: relative;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.dukrana-tech-card-link {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: block;
  border-radius: inherit;
  text-indent: -9999px;
  overflow: hidden;
}

.dukrana-tech-card-link:focus-visible {
  outline: 2px solid #f4a261;
  outline-offset: 2px;
}

.dukrana-tech-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12);
}

/* Tech library carousel — desktop hides the nav; mobile becomes a horizontal scroll-snap carousel. */
.dukrana-tech-nav {
  display: none;
}

@media (max-width: 768px) {
  .has-white-background-color>.wp-block-columns.dukrana-stagger.dukrana-tech-track,
  .wp-block-columns.dukrana-stagger.dukrana-tech-track {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    scroll-behavior: smooth !important;
    gap: 16px !important;
    padding: 8px 24px !important;
    margin: 32px -24px 0 !important;
    width: auto !important;
    max-width: none !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .wp-block-columns.dukrana-stagger.dukrana-tech-track::-webkit-scrollbar {
    display: none;
  }

  .has-white-background-color>.wp-block-columns.dukrana-stagger.dukrana-tech-track>.wp-block-column.dukrana-tech-card,
  .wp-block-columns.dukrana-stagger.dukrana-tech-track>.wp-block-column.dukrana-tech-card {
    flex: 0 0 calc(100vw - 80px) !important;
    width: calc(100vw - 80px) !important;
    max-width: calc(100vw - 80px) !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    scroll-snap-align: center;
  }

  .dukrana-tech-nav {
    display: flex !important;
    justify-content: center;
    gap: 12px;
    margin-top: 24px;
  }
}

/* Button arrow — injected via JS, styled here */
.dukrana-btn-accent .wp-block-button__link,
.dukrana-btn-accent.wp-block-button__link,
.dukrana-btn-dark .wp-block-button__link,
.dukrana-btn-dark.wp-block-button__link,
.dukrana-btn-dark-green .wp-block-button__link,
.dukrana-btn-dark-green.wp-block-button__link,
.dukrana-btn-grey .wp-block-button__link,
.dukrana-btn-grey.wp-block-button__link {
  display: inline-flex !important;
  align-items: center;
  gap: 0;
  transition: gap 0.5s ease;
}

.dukrana-btn-arrow {
  display: inline-flex;
  align-items: center;
  opacity: 0;
  width: 0;
  overflow: hidden;
  transition: opacity 0.5s ease, width 0.5s ease;
  flex-shrink: 0;
  line-height: 0;
}

.dukrana-btn-arrow svg {
  display: block;
  flex-shrink: 0;
}

.wp-block-button__link:hover {
  gap: 8px;
}

.wp-block-button__link:hover .dukrana-btn-arrow {
  opacity: 1;
  width: 7px;
}

.dukrana-btn-accent .wp-block-button__link,
.dukrana-btn-accent.wp-block-button__link {
  background: var(--wp--preset--color--accent) !important;
  color: var(--wp--preset--color--green) !important;
  border-radius: 4px !important;
  padding: 17px 24px 16px !important;
  font-weight: 500 !important;
  font-size: 13.5px !important;
  font-family: var(--wp--preset--font-family--epilogue) !important;
  letter-spacing: -0.003em;
  text-decoration: none !important;
  border: none !important;
  line-height: 1.025;
}

.dukrana-btn-dark .wp-block-button__link,
.dukrana-btn-dark.wp-block-button__link,
.dukrana-btn-dark-green .wp-block-button__link,
.dukrana-btn-dark-green.wp-block-button__link {
  background: var(--wp--preset--color--dark-green) !important;
  color: var(--wp--preset--color--white) !important;
  border-radius: 4px !important;
  padding: 17px 24px 16px !important;
  font-weight: 500 !important;
  font-size: 13.5px !important;
  font-family: var(--wp--preset--font-family--epilogue) !important;
  letter-spacing: -0.003em;
  text-decoration: none !important;
  border: none !important;
  line-height: 1.025;
}

.dukrana-btn-grey .wp-block-button__link,
.dukrana-btn-grey.wp-block-button__link {
  background: var(--wp--preset--color--grey) !important;
  color: var(--wp--preset--color--dark-green) !important;
  border-radius: 4px !important;
  padding: 17px 24px 16px !important;
  font-weight: 500 !important;
  font-size: 13.5px !important;
  font-family: var(--wp--preset--font-family--epilogue) !important;
  letter-spacing: -0.003em;
  text-decoration: none !important;
  border: none !important;
  transition: opacity 0.2s ease;
  line-height: 1.025;
}

.dukrana-btn-grey .wp-block-button__link:hover {
  opacity: 0.9;
}

/* ENGINEERING COMPETENCE */

.dukrana-eng-left {
  display: flex;
  flex-direction: column;
}

.dukrana-eng-left .wp-block-cover {
  flex: 1;
}

.dukrana-eng-cover .wp-block-cover__inner-container {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
}

/* Engineering bullet list */
.dukrana-eng-bullets {
  list-style: disc;
  padding-left: 20px;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.dukrana-eng-bullets li {
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 16px;
  font-weight: 400;
  line-height: 2;
  letter-spacing: -0.01em;
  color: var(--wp--preset--color--grey);
}

/* Dashed decorative circle on engineering green card */
.dukrana-eng-card {
  position: relative;
  overflow: hidden;
}

.dukrana-eng-card::before {
  content: "";
  position: absolute;
  width: 349.74px;
  height: 349.74px;
  border: 1px dashed rgba(255, 255, 255, 0.6);
  border-radius: 50%;
  top: -128px;
  right: -40px;
  pointer-events: none;
  z-index: 0;
}

/* PRODUCT GROUP CARDS */

/* Industry page only: heading + subtitle stacked inside the header flex row */
.dukrana-industry-pg-title {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.dukrana-industry-pg-title h2 {
  margin: 0 !important;
}

.dukrana-industry-pg-subtitle {
  margin: 0;
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 16px;
  font-weight: 400;
  line-height: 22px;
  letter-spacing: -0.16px;
  color: var(--wp--preset--color--green);
  opacity: 0.8;
}

.dukrana-product-groups-bg {
  background: rgba(24, 69, 20, 0.1);
  /* No backdrop-filter: on this scroller it triggered a Chrome repaint bug (card left-padding appeared only after hover). */
  border-radius: 8px;
  padding: 8px;
  gap: 8px;
}

/* Two-class selector outranks the later .dukrana-scroll-x rule to keep 8px padding, and bleeds only the right edge so the rounded left edge stays on content. */
.dukrana-product-groups-bg.dukrana-scroll-x {
  padding: 8px;
  /* No CSS scroll-snap: it only re-snaps on hover, not after programmatic scrollTo. Arrow JS + padding-left:8px hold cards at rest. */
  margin-right: calc(-1 * var(--page-padding-x));
  /* Soft-fade the right edge; .is-at-end (dukrana.js) drops the fade when the last card is fully visible. */
  -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 300px), rgba(0,0,0,0.7) calc(100% - 180px), rgba(0,0,0,0.32) calc(100% - 90px), rgba(0,0,0,0.08) calc(100% - 30px), transparent);
  mask-image: linear-gradient(to right, #000 calc(100% - 300px), rgba(0,0,0,0.7) calc(100% - 180px), rgba(0,0,0,0.32) calc(100% - 90px), rgba(0,0,0,0.08) calc(100% - 30px), transparent);
}

@media (max-width: 1024px) {
  .dukrana-product-groups-bg.dukrana-scroll-x {
    -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 110px), transparent);
    mask-image: linear-gradient(to right, #000 calc(100% - 110px), transparent);
  }
}

.dukrana-product-groups-bg.dukrana-scroll-x.is-at-end {
  -webkit-mask-image: none;
  mask-image: none;
}

.dukrana-product-card {
  position: relative;
  background: var(--wp--preset--color--pure-white);
  border-radius: 4px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 24px;
  min-width: 280px;
  flex: 0 0 280px;
  min-height: 192px;
  cursor: pointer;
  /* No will-change/transform: compositing cards rendered the masked scroller's left padding from a stale tile until hover. Only box-shadow animates. */
  transition: box-shadow 0.22s ease;
  overflow: hidden;
}

/* GPU-composited overlay — no background repaint on hover */
.dukrana-product-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--wp--preset--color--dark-green);
  border-radius: 4px;
  opacity: 0;
  transition: opacity 0.22s ease;
  pointer-events: none;
  z-index: 0;
}

.dukrana-product-card:hover::before {
  opacity: 1;
}

/* All content sits above the overlay */
.dukrana-product-card>* {
  position: relative;
  z-index: 1;
}

/* Product card rendered as a link (home product groups) */
a.dukrana-product-card,
a.dukrana-product-card-link {
  text-decoration: none;
  color: inherit;
  padding: 32px;
}

a.dukrana-product-card .dukrana-product-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

a.dukrana-product-card .dukrana-product-title,
a.dukrana-product-card .dukrana-product-desc {
  display: block;
}

/* Product card text */
.dukrana-product-text {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.dukrana-product-title {
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 18px;
  font-weight: 500;
  letter-spacing: -0.009em;
  line-height: 1.33;
  color: var(--wp--preset--color--dark-green);
  margin: 0;
  transition: color 0.22s ease;
}

.dukrana-product-desc {
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.43;
  color: var(--wp--preset--color--green);
  opacity: 0.8;
  margin: 0;
  transition: color 0.22s ease, opacity 0.22s ease;
}

/* Arrow — top-right, hidden by default */
.dukrana-product-arrow {
  position: absolute;
  top: 18px;
  right: 11px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 11px;
  height: 11px;
  opacity: 0;
  transition: opacity 0.22s ease;
  z-index: 1;
}

.dukrana-product-arrow img {
  width: 11px;
  height: 11px;
  filter: brightness(0) saturate(100%) invert(95%) sepia(5%) saturate(200%) hue-rotate(15deg);
}

.dukrana-product-icon {
  width: 40px;
  height: 40px;
  min-width: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  opacity: 0.8;
  transition: opacity 0.22s ease;
}

.dukrana-product-icon img {
  width: 40px;
  height: 40px;
  display: block;
}

.dukrana-product-card:hover .dukrana-product-icon {
  opacity: 0.8;
}

/* CAROUSEL */

.dukrana-scroll-x {
  display: flex;
  overflow-x: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
  scroll-behavior: smooth;
  padding-top: 4px;
  padding-bottom: 4px;
  -webkit-overflow-scrolling: touch;
}

.dukrana-scroll-x::-webkit-scrollbar {
  display: none;
}

.dukrana-carousel-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 43.45px;
  height: 43.45px;
  min-width: 43.45px;
  border-radius: 50%;
  border: none;
  outline: none;
  padding: 0;
  cursor: pointer;
  transition: opacity 0.2s ease, transform 0.15s ease;
  user-select: none;
  -webkit-appearance: none;
  appearance: none;
}

.dukrana-carousel-arrow img {
  width: 16px;
  height: 16px;
  display: block;
}

/* Left arrow: green icon on grey bg */
.dukrana-carousel-arrow-grey img {
  filter: none;
}

/* Right arrow: white icon on dark green bg */
.dukrana-carousel-arrow-green img {
  filter: brightness(0) invert(1);
}

.dukrana-carousel-arrow:hover {
  opacity: 0.85;
  transform: scale(1.05);
}

.dukrana-carousel-arrow:active {
  transform: scale(0.95);
}

.dukrana-carousel-arrow-grey {
  background: var(--wp--preset--color--grey);
  backdrop-filter: blur(16.29px);
  -webkit-backdrop-filter: blur(16.29px);
}

.dukrana-carousel-arrow-green {
  background: var(--wp--preset--color--dark-green);
  backdrop-filter: blur(16.29px);
  -webkit-backdrop-filter: blur(16.29px);
}

/* White-based arrows for dark backgrounds (case studies) */
.dukrana-carousel-arrow-dim {
  background: rgba(255, 255, 255, 0.15);
}

.dukrana-carousel-arrow-bright {
  background: rgba(255, 255, 255, 0.35);
}

.dukrana-carousel-arrow-dim img,
.dukrana-carousel-arrow-bright img {
  filter: brightness(0) invert(1);
}

/* CASE STUDY CARDS */

/* Case carousel — full viewport width */
.dukrana-case-carousel {
  max-width: 100vw !important;
  width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.dukrana-case-card {
  background: rgba(252, 252, 247, 0.1);
  backdrop-filter: blur(37.5px);
  -webkit-backdrop-filter: blur(37.5px);
  border-radius: 8px;
  padding: 8px;
  display: flex;
  flex-direction: row;
  gap: 8px;
  flex-shrink: 0;
  width: 856px;
  min-width: 856px;
  box-sizing: border-box;
}

.dukrana-case-image-panel {
  background-size: cover;
  background-position: center;
  border-radius: 4px;
  min-width: 323px;
  flex: 0 0 323px;
}

/* Stretch the three inner panels (content/image/cta) to equal height and zero Gutenberg's auto flow-layout margin-block-start:8px that pushed image/CTA down. */
.dukrana-case-card {
  align-items: stretch !important;
}
.dukrana-case-card > *,
.dukrana-case-card > * + * {
  align-self: stretch !important;
  height: auto;
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}

.dukrana-case-cta-panel {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  position: relative;
}

.dukrana-case-cta-panel>p,
.dukrana-case-cta-panel>.wp-block-buttons {
  position: relative;
  z-index: 2;
}

/* Dark gradient overlay at bottom of CTA image */
.dukrana-case-cta-panel::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 4px;
  background: linear-gradient(to top, rgba(19, 61, 55, 0.75) 0%, rgba(19, 61, 55, 0.2) 50%, transparent 100%);
  pointer-events: none;
  z-index: 1;
}

/* Make the CTA button full-width */
.dukrana-case-cta-panel .wp-block-buttons {
  width: 100% !important;
}

.dukrana-case-cta-panel .wp-block-button,
.dukrana-case-cta-panel .wp-block-button__link {
  width: 100% !important;
  text-align: center !important;
  justify-content: center !important;
}

.dukrana-case-cta-panel>p {
  text-align: center !important;
  width: 100%;
}

.dukrana-dashed-separator {
  border: none !important;
  border-top: 1px dashed rgba(21, 25, 13, 0.6) !important;
  margin: 0 !important;
  opacity: 1 !important;
}

/* TRUST GRID */

.dukrana-dashed-border>.wp-block-column {
  padding: 40px;
  background: transparent !important;
}

.dukrana-dashed-border>.wp-block-column:nth-child(2) {
  border-left: 1px dashed rgba(31, 98, 89, 0.6);
  border-right: 1px dashed rgba(31, 98, 89, 0.6);
}

/* TEAM CARDS */

.dukrana-team-card {
  background: var(--wp--preset--color--grey);
  border-radius: 8px;
  padding: 8px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.dukrana-team-card-photo {
  border-radius: 4px;
  overflow: hidden;
  height: 286px;
  position: relative;
}

.dukrana-team-card-info {
  background: var(--wp--preset--color--pure-white);
  border-radius: 4px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* STAT NUMBERS */

.dukrana-stat-number {
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 50px;
  font-weight: 500;
  line-height: 1.44;
  letter-spacing: -0.03em;
  color: var(--wp--preset--color--dark-green);
}

/* FOOTER */

.dukrana-footer-border {
  border-top: 1px dashed rgba(234, 236, 228, 0.5);
  padding-top: 30px;
  position: relative;
}

.dukrana-footer-logo {
  display: flex;
  justify-content: center;
  text-decoration: none;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.dukrana-footer-logo img {
  width: 162px;
  height: auto;
}

.dukrana-footer-pill {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  width: fit-content;
  gap: 8px;
  padding: 8px 14px;
  border-radius: 4px;
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 13.5px;
  font-weight: 500;
  letter-spacing: -0.012em;
  color: var(--wp--preset--color--white);
  text-decoration: none;
}

/* Mobile: tighten the footer's 64px side padding and the CTA's 120px bottom gap. !important beats the block inline styles. */
@media (max-width: 768px) {
  .dukrana-footer {
    padding-top: 48px !important;
    padding-bottom: 40px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .dukrana-footer-cta {
    padding-bottom: 48px !important;
  }
}

/* ===== Minimal checkout footer (quote + contacts pages) ===== */
.dukrana-checkout-footer {
  background: #1F6259;
  border-top: 1px dashed rgba(234, 236, 228, 0.2);
  padding: 40px 64px;
  color: #FAFAFA;
}

.dukrana-checkout-footer-inner {
  max-width: 1440px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
}

.dukrana-checkout-footer-heading {
  margin: 0;
  font-family: "Epilogue", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.33;
  letter-spacing: -0.0089em;
  color: #F3F1EF;
}

.dukrana-checkout-footer-links {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.dukrana-checkout-footer-link {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  width: fit-content;
  align-self: flex-start;
  padding: 8px 14px;
  border-radius: 4px;
  font-family: "Epilogue", sans-serif;
  font-weight: 500;
  font-size: 13.5px;
  letter-spacing: -0.012em;
  color: #FAFAFA;
  text-align: left;
  text-decoration: none;
  transition: background 0.2s ease;
}

.dukrana-checkout-footer-link:hover,
.dukrana-checkout-footer-link:focus-visible {
  background: rgba(250, 250, 250, 0.1);
  color: #FAFAFA;
  outline: none;
}

@media (max-width: 768px) {
  .dukrana-checkout-footer {
    padding: 32px 24px;
  }
  .dukrana-checkout-footer-inner {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* Footer social icons */
.dukrana-footer-social {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-left: 8px;
}

.dukrana-footer-social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: transparent;
  border: 1px solid rgba(250, 250, 250, 0.35);
  color: #FAFAFA;
  text-decoration: none;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.dukrana-footer-social-link:hover,
.dukrana-footer-social-link:focus-visible {
  background: #FAFAFA;
  border-color: #FAFAFA;
  color: #133D37;
  outline: none;
}

.dukrana-footer-social-link svg,
.dukrana-footer-social-icon {
  display: block;
  flex-shrink: 0;
  pointer-events: none;
}

.dukrana-footer-social-link[aria-label="LinkedIn"] .dukrana-footer-social-icon {
  width: 14px;
  height: 14px;
}

.dukrana-footer-social-link[aria-label="Facebook"] .dukrana-footer-social-icon {
  width: 18px;
  height: 18px;
}

/* Legacy <img> fallback if old markup lingers */
.dukrana-footer-social-link img {
  width: 16px;
  height: 16px;
  display: block;
  filter: brightness(0) invert(1);
}

/* Override WP social-links default brand colors */
.dukrana-footer-social .wp-social-link {
  background: rgba(255, 255, 255, 0.1) !important;
  color: #fff !important;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  transition: background 0.2s ease;
}

.dukrana-footer-social .wp-social-link:hover {
  background: rgba(255, 255, 255, 0.2) !important;
}

.dukrana-footer-social .wp-social-link svg {
  width: 16px;
  height: 16px;
  fill: #fff !important;
}

/* SERVICE ROWS */

.dukrana-service-row {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 32px 0;
  border-top: 1px dashed rgba(255, 255, 255, 0.6);
}

.dukrana-service-row:last-child {
  border-bottom: 1px dashed rgba(255, 255, 255, 0.6);
}

/* HOVER & INTERACTION ANIMATIONS */

/* --- NAV LINKS --- */
.dukrana-main-nav .wp-block-navigation-item a {
  transition: background 0.2s ease, color 0.2s ease !important;
}

.dukrana-main-nav .wp-block-navigation-item a:hover {
  background: var(--wp--preset--color--grey) !important;
}

/* --- ENGINEERING COVER --- */
.dukrana-eng-cover .wp-block-cover__image-background {
  transition: transform 0.5s ease-out;
}

.dukrana-eng-cover:hover .wp-block-cover__image-background {
  transform: scale(1.04);
}

/* --- PRODUCT GROUP CARDS --- */
.dukrana-product-card:hover {
  box-shadow: 0 6px 24px rgba(19, 61, 55, 0.15);
}

.dukrana-product-card:hover .dukrana-product-title,
.dukrana-product-card:hover p.has-dark-green-color {
  color: #fff !important;
}

.dukrana-product-card:hover .dukrana-product-desc,
.dukrana-product-card:hover p.has-green-color {
  color: var(--wp--preset--color--grey) !important;
  opacity: 1;
}

.dukrana-product-card:hover .dukrana-product-arrow {
  opacity: 1;
}

.dukrana-product-card:hover .dukrana-product-icon img {
  filter: brightness(1.5);
}

/* --- TECHNICAL LIBRARY CARDS --- */
.dukrana-stagger .wp-block-column[class*="background-color"] {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  min-height: 362px;
}

.dukrana-stagger .wp-block-column[class*="background-color"]:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 28px rgba(19, 61, 55, 0.12);
}

/* Tech library card hover — arrow shifts */
.dukrana-stagger .wp-block-column[class*="background-color"]:hover .dukrana-learn-more-arrow {
  transform: translateX(3px);
}

/* Tech library icons — SVGs are self-contained 40x40 */

/* --- CASE STUDY CARDS --- */
.dukrana-case-card {
  transition: transform 0.3s ease;
}

.dukrana-case-card:not(.has-opacity-60):hover {
  transform: translateY(-3px);
}

/* Hovered dimmed card becomes fully bright */
.dukrana-case-card.has-opacity-60 {
  transition: opacity 0.3s ease;
}
.dukrana-case-card.has-opacity-60:hover {
  opacity: 1;
}

/* --- TRUST GRID --- */
.dukrana-trust-icon {
  opacity: 0.8;
  transition: opacity 0.22s ease;
}

.dukrana-trust-col:hover .dukrana-trust-icon {
  opacity: 0.8;
}

.dukrana-trust-col,
.wp-block-column.dukrana-trust-col {
  position: relative;
  overflow: hidden;
}

.dukrana-trust-col::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--wp--preset--color--dark-green);
  opacity: 0;
  transition: opacity 0.22s ease;
  pointer-events: none;
  z-index: 0;
}

.dukrana-trust-col:hover::before {
  opacity: 1;
}

.dukrana-trust-col > * {
  position: relative;
  z-index: 1;
}

.dukrana-trust-col:hover .dukrana-trust-content h4,
.dukrana-trust-col:hover .dukrana-trust-content p {
  color: #fff !important;
}

.dukrana-trust-col:hover .dukrana-trust-icon img {
  filter: brightness(1.5);
}

/* --- FOOTER PILLS (contact info) --- */
.dukrana-footer-pill {
  transition: background 0.2s ease;
  cursor: default;
}

.dukrana-footer-pill:has(a) {
  cursor: pointer;
}

.dukrana-footer-border a.dukrana-footer-pill:hover,
.dukrana-footer-border .dukrana-footer-pill:has(a):hover {
  background: rgba(250, 250, 250, 0.1);
}

/* --- FOOTER LOGO --- */
.dukrana-footer-logo {
  transition: opacity 0.2s ease;
}

.dukrana-footer-logo:hover {
  opacity: 0.8;
}

/* --- LANGUAGE TOGGLE --- */
.dukrana-lang-toggle {
  transition: opacity 0.2s ease;
}

.dukrana-lang-toggle:hover {
  opacity: 0.7;
}

/* --- BADGE --- */
.dukrana-badge {
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.dukrana-badge:hover {
  transform: translateY(-1px);
  box-shadow: 0 3px 10px rgba(244, 162, 97, 0.3);
}

/* UTILITY CLASSES */

.has-opacity-80 {
  opacity: 0.8;
}

.has-opacity-60 {
  opacity: 0.6;
}

.dukrana-dashed-circle {
  position: absolute;
  border: 1px dashed rgba(255, 255, 255, 0.6);
  border-radius: 50%;
  pointer-events: none;
}

/* LEARN MORE LINK (Tech Library, etc.) */

.dukrana-learn-more,
.wp-block-group.dukrana-learn-more {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 10px !important;
  cursor: pointer;
  margin-top: 8px;
  width: fit-content !important;
  align-self: flex-start !important;
  flex-wrap: nowrap !important;
}

.dukrana-learn-more span,
.dukrana-learn-more p {
  font-family: var(--wp--preset--font-family--epilogue);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.43;
  margin: 0;
}

.dukrana-learn-more-light span,
.dukrana-learn-more-light p {
  color: var(--wp--preset--color--white);
}

.dukrana-learn-more-dark span,
.dukrana-learn-more-dark p {
  color: var(--wp--preset--color--dark-green);
}

/* Make WP figure element transparent to layout inside arrow circles */
.dukrana-learn-more-arrow .wp-block-image,
.dukrana-learn-more-arrow figure,
.dukrana-learn-more-arrow>* {
  display: contents !important;
}

.dukrana-learn-more-arrow,
.wp-block-group.dukrana-learn-more-arrow {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  max-width: 32px !important;
  min-height: 32px !important;
  max-height: 32px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  transition: background 0.2s ease, transform 0.2s ease;
  padding: 0 !important;
  margin: 0 !important;
  flex-shrink: 0 !important;
  flex-grow: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  gap: 0 !important;
}

.dukrana-learn-more-arrow-dark,
.wp-block-group.dukrana-learn-more-arrow-dark {
  background: rgba(31, 98, 89, 0.15) !important;
}

.dukrana-learn-more-arrow img {
  width: 12px !important;
  height: 12px !important;
  display: block !important;
  margin: 0 !important;
}

.dukrana-learn-more:hover .dukrana-learn-more-arrow,
.wp-block-group.dukrana-learn-more:hover .wp-block-group.dukrana-learn-more-arrow {
  background: rgba(255, 255, 255, 0.3) !important;
  transform: translateX(4px) !important;
}

.dukrana-learn-more:hover .dukrana-learn-more-arrow-dark,
.wp-block-group.dukrana-learn-more:hover .wp-block-group.dukrana-learn-more-arrow-dark {
  background: rgba(31, 98, 89, 0.25) !important;
  transform: translateX(4px) !important;
}

/* ANIMATIONS */

/* Fade-in on scroll */
.dukrana-fade-in {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.dukrana-fade-in.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Staggered children animation */
.dukrana-stagger>* {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}

.dukrana-stagger.is-visible>*:nth-child(1) {
  transition-delay: 0s;
}

.dukrana-stagger.is-visible>*:nth-child(2) {
  transition-delay: 0.1s;
}

.dukrana-stagger.is-visible>*:nth-child(3) {
  transition-delay: 0.2s;
}

.dukrana-stagger.is-visible>*:nth-child(4) {
  transition-delay: 0.3s;
}

.dukrana-stagger.is-visible>*:nth-child(5) {
  transition-delay: 0.4s;
}

.dukrana-stagger.is-visible>* {
  opacity: 1;
  transform: translateY(0);
}

/* HOME PAGE RESPONSIVE — breakpoints: ≤1200 tablet-lg, ≤1024 tablet, ≤900 tablet/mobile, ≤768 mobile, ≤480 small mobile */

/* ---------- TABLET LARGE (≤1200px) ---------- */
@media (max-width: 1200px) {
  /* Hero headline a touch smaller */
  .wp-block-cover.alignfull:first-child h1.wp-block-heading {
    font-size: 44px !important;
  }

  /* Section headings */
  .dukrana-industries-heading,
  .wp-block-group.alignfull h2.wp-block-heading {
    font-size: 34px !important;
  }

  /* Industry cards scroll narrower */
  .dukrana-industry-card {
    width: 340px;
    min-width: 340px;
    height: 460px;
  }

  .dukrana-industry-inner {
    height: 460px;
    padding: 32px;
  }

  /* Engineering column split */
  .dukrana-eng-left {
    flex-basis: 45% !important;
  }

  .dukrana-eng-left+.wp-block-column {
    flex-basis: 55% !important;
  }

  /* Case-study card width */
  .dukrana-case-card {
    width: 760px;
    min-width: 760px;
  }

  .dukrana-case-image-panel {
    min-width: 280px;
    flex: 0 0 280px;
  }

  /* Case section vertical padding */
  .wp-block-group.has-dark-green-background-color[style*="padding-top:124px"],
  .wp-block-group.has-dark-green-background-color[style*="padding-bottom:124px"] {
    padding-top: 96px !important;
    padding-bottom: 96px !important;
  }
}

/* ---------- TABLET (≤1024px) ---------- */
@media (max-width: 1024px) {
  .dukrana-header-wrap {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  /* HERO */
  .wp-block-cover.alignfull:first-child {
    padding-top: 140px !important;
    padding-bottom: 80px !important;
    min-height: 0 !important;
  }

  .wp-block-cover.alignfull:first-child .wp-block-cover__inner-container {
    width: 100%;
  }

  .wp-block-cover.alignfull:first-child h1.wp-block-heading {
    font-size: 40px !important;
    line-height: 1.15 !important;
    max-width: 720px;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .dukrana-hero-desc {
    font-size: 17px !important;
    max-width: 640px;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .dukrana-hero-categories {
    flex-wrap: wrap;
    gap: 6px 8px !important;
    justify-content: center;
  }

  .dukrana-hero-features {
    gap: 20px 28px !important;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 8px;
  }

  .dukrana-hero-feature span,
  .dukrana-hero-feature p {
    font-size: 13px !important;
  }

  .dukrana-hero-feature .dukrana-hero-feature-icon,
  .dukrana-hero-feature .dukrana-hero-feature-icon img {
    width: 32px !important;
    height: 32px !important;
  }

  /* Hero CTAs stay on one row at tablet with a tight gap */
  .wp-block-cover.alignfull:first-child .wp-block-buttons {
    justify-content: center !important;
    gap: 12px !important;
    flex-wrap: wrap;
  }

  .wp-block-cover.alignfull:first-child .wp-block-button .wp-block-button__link {
    white-space: nowrap;
  }

  /* INDUSTRIES */
  .dukrana-industries-head {
    max-width: 720px;
  }


  .dukrana-industry-card {
    width: 310px;
    min-width: 310px;
    height: 440px;
  }

  .dukrana-industry-inner {
    height: 440px;
    padding: 28px;
  }

  /* ENGINEERING — keep 2 cols but reduce inner padding */
  .dukrana-eng-cover,
  .dukrana-eng-card {
    padding: 32px !important;
    min-height: 420px !important;
  }

  .dukrana-eng-cover h2.wp-block-heading,
  .dukrana-eng-card h2.wp-block-heading {
    font-size: 30px !important;
  }

  .dukrana-eng-card h3.wp-block-heading {
    font-size: 26px !important;
  }

  /* PRODUCT GROUPS */
  a.dukrana-product-card,
  a.dukrana-product-card-link {
    padding: 24px;
    min-width: 260px;
    flex: 0 0 260px;
  }

  /* APPROACH */
  .has-grey-background-color h3.wp-block-heading[style*="font-size:32px"] {
    font-size: 26px !important;
  }

  /* TRUST GRID — keep 3 cols but tighten */
  .dukrana-trust-col,
  .wp-block-column.dukrana-trust-col {
    padding: 32px 24px 48px !important;
    gap: 40px !important;
  }

  .dukrana-trust-content h4 {
    font-size: 21px;
  }

  /* CASE STUDIES */
  .dukrana-case-card {
    width: 680px;
    min-width: 680px;
  }

  .dukrana-case-image-panel {
    min-width: 240px;
    flex: 0 0 240px;
  }

  .dukrana-case-carousel+.wp-block-group,
  .has-dark-green-background-color h2.wp-block-heading[style*="font-size:50px"] {
    font-size: 40px !important;
  }

  /* TECHNICAL LIBRARY */
  .has-white-background-color .wp-block-columns.dukrana-stagger {
    gap: 16px !important;
  }

  .has-white-background-color .wp-block-columns.dukrana-stagger .wp-block-column {
    padding: 32px !important;
  }

  /* Reduce big section vertical padding */
  .wp-block-group.alignfull[style*="padding-top:96px"] {
    padding-top: 72px !important;
  }

  .wp-block-group.alignfull[style*="padding-bottom:96px"] {
    padding-bottom: 72px !important;
  }

  /* NAVIGATION — mobile/tablet header: hamburger + centered logo + square CTA, nav in drawer */
  .dukrana-main-nav {
    display: none !important;
  }

  .dukrana-nav-inner {
    position: relative;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .dukrana-menu-toggle {
    display: inline-flex !important;
  }

  /* Logo centered — position-absolute so side items don't tug it */
  .dukrana-logo-link {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    margin: 0 !important;
    pointer-events: auto;
  }

  /* Right group: hide lang + text CTA, show compact square CTA */
  .dukrana-nav-inner .dukrana-lang-toggle {
    display: none !important;
  }

  .dukrana-nav-inner .wp-block-buttons {
    display: none !important;
  }

  .dukrana-mobile-cta {
    display: inline-flex !important;
  }
}

/* ---------- NAV SWITCH AT WIDER TABLET/LAPTOP (≤1400px) — avoid menu item wrap ---------- */
@media (max-width: 1400px) and (min-width: 1025px) {
  .dukrana-main-nav {
    display: none !important;
  }

  .dukrana-nav-inner {
    position: relative;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .dukrana-menu-toggle {
    display: inline-flex !important;
  }

  .dukrana-logo-link {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    margin: 0 !important;
    pointer-events: auto;
  }

  .dukrana-nav-inner .dukrana-lang-toggle {
    display: none !important;
  }

  .dukrana-nav-inner .wp-block-buttons {
    display: none !important;
  }

  .dukrana-mobile-cta {
    display: inline-flex !important;
  }
}

/* ---------- MID (≤900px) — columns start collapsing ---------- */
@media (max-width: 900px) {

  /* HERO — smaller */
  .wp-block-cover.alignfull:first-child h1.wp-block-heading {
    font-size: 36px !important;
  }

  .dukrana-hero-features {
    gap: 16px;
  }

  .dukrana-hero-feature span {
    font-size: 13px;
  }

  /* INDUSTRIES heading */
  .dukrana-industries-heading {
    font-size: 30px !important;
  }

  /* ENGINEERING — stack columns vertically */
  .wp-block-columns:has(> .dukrana-eng-left) {
    flex-wrap: wrap !important;
  }

  .dukrana-eng-left,
  .dukrana-eng-left~.wp-block-column {
    flex-basis: 100% !important;
    width: 100% !important;
  }

  .dukrana-eng-cover,
  .dukrana-eng-card {
    min-height: 360px !important;
  }

  /* APPROACH — stack badge above heading */
  .has-grey-background-color>.wp-block-group.dukrana-fade-in:has(> .dukrana-badge) {
    flex-direction: column !important;
    justify-content: flex-start !important;
    gap: 16px !important;
    align-items: flex-start !important;
    min-height: 0 !important;
  }

  /* Reset the 833px flex-basis WP applies to the heading — becomes height when stacked */
  .has-grey-background-color>.wp-block-group.dukrana-fade-in:has(> .dukrana-badge)>h3 {
    flex-basis: auto !important;
    flex: 0 0 auto !important;
    width: 100% !important;
  }

  /* TRUST GRID — stack 1-by-1 from tablet down */
  .dukrana-trust-grid.wp-block-columns {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto !important;
    gap: 0 !important;
  }

  .wp-block-columns.dukrana-trust-grid>.wp-block-column.dukrana-trust-col {
    width: auto !important;
    max-width: none !important;
    flex-basis: auto !important;
    margin: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    align-self: stretch !important;
    overflow: hidden;
  }

  .wp-block-columns.dukrana-trust-grid>.wp-block-column.dukrana-trust-col:nth-child(1),
  .wp-block-columns.dukrana-trust-grid>.wp-block-column.dukrana-trust-col:nth-child(2),
  .wp-block-columns.dukrana-trust-grid>.wp-block-column.dukrana-trust-col:nth-child(3) {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
    border-left: none !important;
    border-top: 1px dashed rgba(31, 98, 89, 0.6) !important;
  }

  .wp-block-columns.dukrana-trust-grid>.wp-block-column.dukrana-trust-col:nth-child(1) {
    border-top: none !important;
  }

  /* TECH LIBRARY — stack to 2 cols */
  .has-white-background-color>.wp-block-columns.dukrana-stagger {
    flex-wrap: wrap !important;
  }

  .has-white-background-color>.wp-block-columns.dukrana-stagger>.wp-block-column {
    flex-basis: calc(50% - 8px) !important;
    min-width: calc(50% - 8px);
  }

  /* CASE STUDIES — card narrower */
  .dukrana-case-card {
    width: 560px;
    min-width: 560px;
  }

  .dukrana-case-image-panel {
    min-width: 200px;
    flex: 0 0 200px;
  }
}

/* ---------- MOBILE (≤768px) ---------- */
@media (max-width: 768px) {
  .dukrana-header-wrap {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .dukrana-nav-inner {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  /* Global heading sizes */
  h1.wp-block-heading {
    font-size: 30px !important;
    line-height: 1.2 !important;
  }

  h2.wp-block-heading {
    font-size: 26px !important;
    line-height: 1.25 !important;
  }

  h3.wp-block-heading {
    font-size: 22px !important;
    line-height: 1.3 !important;
  }

  h4.wp-block-heading {
    font-size: 19px !important;
  }

  /* HERO — mobile: no scroll arrow, content vertically centered in the zone
     visible below the floating header (top−bottom padding ≈ header height). */
  .wp-block-cover.alignfull:first-child {
    padding-top: 120px !important;
    padding-bottom: 32px !important;
  }

  .dukrana-hero-scroll-next {
    display: none !important;
  }

  /* Undo the ≤1024 space reservation for the (now hidden) scroll arrow. */
  .wp-block-cover.alignfull:first-child .wp-block-cover__inner-container {
    padding-bottom: 0;
  }

  /* The eyebrow renders as one paragraph on saved pages — center its wrapped
     lines instead of the default left alignment. */
  .dukrana-hero-categories,
  .dukrana-hero-categories p {
    text-align: center;
  }

  .wp-block-cover.alignfull:first-child h1.wp-block-heading {
    font-size: 30px !important;
    line-height: 1.2 !important;
  }

  .dukrana-hero-desc {
    font-size: 15px !important;
    padding: 0 8px;
  }

  .dukrana-hero-categories {
    flex-wrap: wrap;
    justify-content: center;
    height: auto;
    gap: 8px;
  }

  .dukrana-hero-features {
    display: flex !important;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start;
    gap: 8px;
    margin: 20px auto;
    max-width: 340px;
  }

  .dukrana-hero-feature {
    flex: 1 1 0;
    min-width: 0;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center;
    gap: 8px !important;
  }

  .dukrana-hero-feature-icon {
    width: 32px !important;
    height: 32px !important;
  }

  .dukrana-hero-feature-icon img {
    width: 32px;
    height: 32px;
  }

  .dukrana-hero-feature span,
  .dukrana-hero-feature p {
    font-size: 12px !important;
    line-height: 1.3;
    white-space: normal;
  }

  .wp-block-cover.alignfull:first-child .wp-block-buttons {
    flex-direction: column;
    align-items: stretch;
    gap: 10px !important;
    width: 100%;
    max-width: 320px;
    margin: 0 auto;
  }

  .wp-block-cover.alignfull:first-child .wp-block-button {
    width: 100%;
  }

  .wp-block-cover.alignfull:first-child .wp-block-button__link {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }

  /* Remove decorative oversized circle that breaks layout */
  .wp-block-cover.alignfull:first-child::before {
    width: 800px;
    height: 800px;
    top: -380px;
    left: -320px;
  }

  /* INDUSTRIES */
  .dukrana-industries-head {
    gap: 16px;
    max-width: 100%;
  }

  .dukrana-industries-heading {
    font-size: 26px !important;
  }

  .dukrana-industries-nav {
    margin-top: 20px;
  }

  .dukrana-industry-card {
    width: 280px;
    min-width: 280px;
    height: 400px;
    padding: 24px;
  }

  .dukrana-industry-inner {
    height: 400px;
    padding: 20px;
  }

  .dukrana-industry-top h4 {
    font-size: 20px;
  }

  /* ENGINEERING */
  .dukrana-eng-cover,
  .dukrana-eng-card {
    padding: 28px !important;
    min-height: 320px !important;
    border-radius: 8px !important;
  }

  .dukrana-eng-card {
    min-height: 0 !important;
    justify-content: flex-start !important;
  }

  .dukrana-eng-cover h2.wp-block-heading {
    font-size: 26px !important;
  }

  .dukrana-eng-card>.wp-block-group {
    flex-direction: column !important;
    gap: 20px !important;
    align-items: stretch !important;
    position: relative;
    z-index: 1;
  }

  .dukrana-eng-card>.wp-block-group>.wp-block-group {
    width: 100% !important;
    align-items: stretch !important;
    flex-basis: auto !important;
    flex-grow: 0 !important;
    flex-shrink: 1 !important;
    height: auto !important;
    min-height: 0 !important;
  }

  .dukrana-eng-card h3.wp-block-heading {
    font-size: 22px !important;
  }

  .dukrana-eng-card p.has-accent-color,
  .dukrana-eng-card p.has-grey-color {
    font-size: 13px !important;
    line-height: 1.45 !important;
  }

  .dukrana-eng-card .wp-block-buttons {
    width: 100% !important;
    display: flex !important;
  }

  .dukrana-eng-card .wp-block-buttons>.wp-block-button {
    width: 100% !important;
    flex: 1 1 100% !important;
  }

  .dukrana-eng-card .wp-block-button>.wp-block-button__link {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
  }

  .dukrana-eng-card p.has-grey-color:last-child {
    text-align: center !important;
  }

  .dukrana-eng-bullets li {
    font-size: 14px;
    line-height: 1.6;
  }

  /* PRODUCT GROUPS */
  a.dukrana-product-card,
  a.dukrana-product-card-link {
    padding: 20px;
    min-width: 240px;
    flex: 0 0 240px;
    gap: 16px;
    min-height: 170px;
  }

  .dukrana-product-title {
    font-size: 16px;
  }

  .dukrana-product-desc {
    font-size: 13px;
  }

  /* APPROACH */
  .has-grey-background-color h3.wp-block-heading[style*="font-size:32px"] {
    font-size: 22px !important;
    line-height: 1.35 !important;
  }

  /* TRUST GRID — 1 col */
  .dukrana-trust-grid.wp-block-columns {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto !important;
  }

  .dukrana-trust-col,
  .wp-block-column.dukrana-trust-col {
    padding: 28px 24px !important;
    gap: 24px !important;
  }

  .wp-block-columns.dukrana-trust-grid>.wp-block-column.dukrana-trust-col:nth-child(1),
  .wp-block-columns.dukrana-trust-grid>.wp-block-column.dukrana-trust-col:nth-child(2),
  .wp-block-columns.dukrana-trust-grid>.wp-block-column.dukrana-trust-col:nth-child(3) {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
    border-left: none !important;
    border-top: 1px dashed rgba(31, 98, 89, 0.6) !important;
  }

  .wp-block-columns.dukrana-trust-grid>.wp-block-column.dukrana-trust-col:nth-child(1) {
    border-top: none !important;
  }

  .dukrana-trust-badge {
    padding: 0 24px;
  }

  .dukrana-trust-badge p,
  .dukrana-trust-badge span {
    font-size: 14px;
    padding: 12px 18px;
    text-align: center;
  }

  /* CASE STUDIES */
  .dukrana-case-carousel {
    padding-left: 24px !important;
    padding-right: 24px !important;
    gap: 12px !important;
  }

  .dukrana-case-carousel .dukrana-case-card {
    flex-direction: column !important;
    width: calc(100vw - 48px) !important;
    min-width: calc(100vw - 48px) !important;
    flex: 0 0 calc(100vw - 48px) !important;
    padding: 6px !important;
  }

  .dukrana-case-card>.wp-block-group.has-white-background-color,
  .dukrana-case-card>.wp-block-group[style*="background-color"] {
    padding: 20px !important;
  }

  .dukrana-case-card p[style*="font-size:16px"] {
    font-size: 15px !important;
    line-height: 1.4 !important;
  }

  .dukrana-case-card p[style*="font-size:14px"] {
    font-size: 12px !important;
  }

  .dukrana-case-card .has-grey-background-color[style*="padding"] {
    padding: 12px 16px !important;
  }

  .dukrana-case-image-panel {
    min-width: 100% !important;
    flex: 0 0 180px !important;
    min-height: 180px !important;
    padding: 20px !important;
  }

  .dukrana-case-cta-panel {
    min-height: 200px !important;
    padding: 20px !important;
  }

  .has-dark-green-background-color h2.wp-block-heading[style*="font-size:50px"] {
    font-size: 28px !important;
    line-height: 1.25 !important;
  }

  .has-dark-green-background-color>.wp-block-group.dukrana-fade-in[style*="padding-right:64px"] {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  /* Reduce case section vertical padding */
  .wp-block-group.has-dark-green-background-color[style*="padding-top:124px"],
  .wp-block-group.has-dark-green-background-color[style*="padding-bottom:124px"] {
    padding-top: 64px !important;
    padding-bottom: 64px !important;
  }

  /* TECHNICAL LIBRARY — stack to 1 col + center heading/CTA */
  .has-white-background-color>.wp-block-columns.dukrana-stagger {
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    gap: 14px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .has-white-background-color>.wp-block-columns.dukrana-stagger>.wp-block-column {
    flex-basis: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: auto !important;
    padding: 24px !important;
    margin-left: 0 !important;
    box-sizing: border-box;
  }

  .has-white-background-color>.wp-block-columns.dukrana-stagger>.wp-block-column h4.wp-block-heading {
    font-size: 20px !important;
    line-height: 1.3 !important;
  }

  .has-white-background-color>.wp-block-columns.dukrana-stagger>.wp-block-column p {
    font-size: 13.5px !important;
    line-height: 1.45 !important;
  }

  .has-white-background-color>.wp-block-group.is-layout-flex:has(> .wp-block-buttons) {
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 20px !important;
    text-align: left;
  }

  .has-white-background-color>.wp-block-group.is-layout-flex:has(> .wp-block-buttons)>.wp-block-group {
    text-align: left;
    width: 100%;
  }

  .has-white-background-color>.wp-block-group.is-layout-flex:has(> .wp-block-buttons) h2.wp-block-heading,
  .has-white-background-color>.wp-block-group.is-layout-flex:has(> .wp-block-buttons) p {
    text-align: left !important;
  }

  .has-white-background-color>.wp-block-group.is-layout-flex:has(> .wp-block-buttons)>.wp-block-buttons {
    justify-content: flex-start !important;
    width: auto !important;
  }

  .dukrana-carousel-nav,
  .dukrana-industries-nav,
  .dukrana-news-nav {
    justify-content: center !important;
  }

  .has-white-background-color>.wp-block-group.is-layout-flex:has(> .wp-block-buttons) .wp-block-button__link {
    white-space: nowrap;
  }

  /* Reduce section vertical padding */
  .wp-block-group.alignfull[style*="padding-top:96px"] {
    padding-top: 56px !important;
  }

  .wp-block-group.alignfull[style*="padding-bottom:96px"] {
    padding-bottom: 56px !important;
  }

  .wp-block-group.alignfull[style*="padding-top:80px"] {
    padding-top: 48px !important;
  }

  .wp-block-group.alignfull[style*="padding-bottom:80px"] {
    padding-bottom: 48px !important;
  }

  /* Footer — stack everything centered */
  .has-green-background-color[style*="padding-top:96px"] {
    padding-top: 56px !important;
    padding-bottom: 40px !important;
  }

  .has-green-background-color[style*="padding-bottom:120px"] {
    padding-bottom: 56px !important;
  }

  .has-green-background-color h1.wp-block-heading[style*="font-size:50px"] {
    font-size: 30px !important;
    line-height: 1.2 !important;
  }

  .dukrana-footer-border {
    flex-direction: column !important;
    gap: 28px !important;
    align-items: center !important;
    text-align: center !important;
  }

  .dukrana-footer-border>.wp-block-group {
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100%;
    gap: 10px !important;
  }

  .dukrana-footer-border .dukrana-footer-pill {
    text-align: center !important;
  }

  /* Logo first on mobile — override absolute positioning */
  .dukrana-footer-logo {
    order: -1;
    position: static !important;
    left: auto !important;
    transform: none !important;
    width: 100%;
    justify-content: center;
  }

  /* Privacy + socials row stays horizontal, centered */
  .dukrana-footer-border>.wp-block-group:last-child {
    flex-direction: row !important;
    flex-wrap: wrap;
    gap: 16px !important;
  }

  .dukrana-stat-number {
    font-size: 34px;
  }
}

/* ---------- SMALL MOBILE (≤480px) ---------- */
@media (max-width: 480px) {
  h1.wp-block-heading {
    font-size: 26px !important;
  }

  h2.wp-block-heading {
    font-size: 22px !important;
  }

  h3.wp-block-heading {
    font-size: 20px !important;
  }

  /* HERO */
  .wp-block-cover.alignfull:first-child {
    padding-top: 104px !important;
    padding-bottom: 16px !important;
  }

  .wp-block-cover.alignfull:first-child h1.wp-block-heading {
    font-size: 26px !important;
  }

  .dukrana-hero-cat {
    font-size: 13px;
  }

  .dukrana-hero-desc {
    font-size: 14px !important;
  }

  /* INDUSTRIES */
  .dukrana-industry-card {
    width: 260px;
    min-width: 260px;
    height: 360px;
    padding: 20px;
  }

  .dukrana-industry-inner {
    height: 360px;
    padding: 16px;
  }

  .dukrana-industry-top h4 {
    font-size: 18px;
  }

  /* ENGINEERING inner padding tight */
  .dukrana-eng-cover,
  .dukrana-eng-card {
    padding: 20px !important;
  }

  /* PRODUCT GROUPS */
  a.dukrana-product-card,
  a.dukrana-product-card-link {
    padding: 16px;
    min-width: 220px;
    flex: 0 0 220px;
  }

  /* APPROACH */
  .has-grey-background-color h3.wp-block-heading[style*="font-size:32px"] {
    font-size: 20px !important;
  }

  /* TRUST content */
  .dukrana-trust-content h4 {
    font-size: 19px;
  }

  .dukrana-trust-content p {
    font-size: 13px;
  }

  /* CASE STUDIES */
  .dukrana-case-card {
    width: 260px;
    min-width: 260px;
  }

  .dukrana-case-card .wp-block-group[style*="padding-top:32px"] {
    padding: 20px !important;
  }

  .dukrana-case-card p[style*="font-size:32px"] {
    font-size: 26px !important;
  }

  /* TECH LIBRARY cards */
  .has-white-background-color>.wp-block-columns.dukrana-stagger>.wp-block-column {
    padding: 20px !important;
  }

  .has-white-background-color>.wp-block-columns.dukrana-stagger h4.wp-block-heading {
    font-size: 20px !important;
  }

  /* Vertical section padding */
  .wp-block-group.alignfull[style*="padding-top:96px"] {
    padding-top: 40px !important;
  }

  .wp-block-group.alignfull[style*="padding-bottom:96px"] {
    padding-bottom: 40px !important;
  }
}

/* INDUSTRY INNER — HERO */

.dukrana-industry-hero-wrapper {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  min-height: 100vh;
  background: #F3F1EF;
  overflow: hidden;
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
}

.dukrana-industry-hero {
  display: contents;
}

.dukrana-industry-hero-media {
  position: relative;
  overflow: hidden;
  background: #0E2B27;
}

.dukrana-industry-hero-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.dukrana-industry-hero-media-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.25);
  pointer-events: none;
}

.dukrana-industry-hero-scroll {
  position: absolute;
  left: 40px;
  bottom: 64px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #FAFAFA;
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  text-decoration: none;
  transition: transform 150ms ease;
  z-index: 2;
}

.dukrana-industry-hero-scroll:hover {
  transform: translateY(-1px);
  color: #FAFAFA;
}

.dukrana-industry-hero-scroll-icon {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: rgba(250, 250, 250, 0.15);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #FAFAFA;
  flex-shrink: 0;
}

.dukrana-industry-hero-scroll-icon svg {
  width: 10px;
  height: 10px;
  transform: rotate(90deg);
}

.dukrana-industry-hero-content {
  background: #F3F1EF;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 64px 64px 64px 64px;
  box-sizing: border-box;
  min-height: 100vh;
}

.dukrana-industry-hero-text-block {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 32px;
}

.dukrana-industry-hero-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
  max-width: 513px;
}

.dukrana-industry-hero-copy .dukrana-badge {
  align-self: flex-start;
}

.dukrana-industry-hero-heading {
  font-family: 'Epilogue', sans-serif;
  font-size: 50px;
  line-height: 1.2;
  letter-spacing: -0.72px;
  color: var(--wp--preset--color--dark-green);
  margin: 0;
}

.dukrana-industry-hero-intro {
  font-size: 16px;
  line-height: 1.375;
  letter-spacing: -0.16px;
  color: var(--wp--preset--color--green);
  opacity: 0.8;
  margin: 0;
}

.dukrana-industry-hero-cta {
  background: var(--wp--preset--color--dark-green);
  color: var(--wp--preset--color--white);
  border-radius: 4px;
  padding: 17px 24px 16px;
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 13.5px;
  line-height: 1.025;
  letter-spacing: -0.003em;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  text-decoration: none;
  transition: background 150ms ease, gap 0.5s ease;
  align-self: flex-start;
}

.dukrana-industry-hero-cta:hover {
  background: var(--wp--preset--color--green);
  color: var(--wp--preset--color--white);
  gap: 8px;
}

.dukrana-industry-hero-cta .dukrana-btn-arrow {
  opacity: 0;
  width: 0;
  overflow: hidden;
  transition: opacity 0.5s ease, width 0.5s ease;
  display: inline-flex;
  align-items: center;
}

.dukrana-industry-hero-cta:hover .dukrana-btn-arrow {
  opacity: 1;
  width: 7px;
}

/* Stats row — 3 icons at the very bottom (pure HTML, no WP wrappers) */
.dukrana-industry-hero-stats {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 34px;
  align-items: center;
  justify-content: flex-start;
  align-self: flex-start;
  flex-shrink: 0;
  padding-top: 24px;
}

.dukrana-industry-stat {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  font-family: 'Epilogue', sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 20px;
  color: #133D37;
}

.dukrana-industry-stat-icon {
  width: 30px;
  height: 30px;
  min-width: 30px;
  min-height: 30px;
  border-radius: 50%;
  background: #1F6259;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.dukrana-industry-stat-icon img {
  width: 17px;
  height: 17px;
  display: block;
  filter: brightness(0) invert(1);
}

/* INDUSTRY INNER — OVERVIEW (interactive circle). Figma: H4 24px/400, Body 14px/400, circle r198, nodes r27 */

/* Figma: section content 1312 × 398.77 (hug) */
.dukrana-overview-interactive {
  display: grid;
  grid-template-columns: 368px 448px 368px;
  gap: 64px;
  align-items: center;
  justify-content: space-between;
  max-width: 1312px;
  margin: 0 auto;
  overflow: visible;
  min-height: 398.77px;
}

/* ── Left column ── */

.dukrana-ov-left {
  align-self: center;
  padding-right: 24px;
}

/* Figma: H2 — Epilogue 400 32px, lh 42px, ls -0.84 */
.dukrana-ov-heading {
  font-family: 'Epilogue', sans-serif;
  font-size: 32px;
  font-weight: 400;
  line-height: 42px;
  letter-spacing: -0.84px;
  color: #1F6259;
  margin: 24px 0 0;
}

/* ── Center column — SVG circle (Figma viewBox 1025×853) ── */

.dukrana-ov-circle-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
}

/* Figma SVG: viewBox 0 0 448.06 398.77 (matches Figma node 285:5590) */
.dukrana-ov-svg {
  width: 100%;
  max-width: 448px;
  height: auto;
  overflow: visible;
}

/* Ring — slow dash drift */
@keyframes dukrana-ov-ring-drift {
  to {
    stroke-dashoffset: -42;
  }
}

.dukrana-ov-ring {
  animation: dukrana-ov-ring-drift 14s linear infinite;
}

/* Arrow pulse (4 green triangles on ring) */
@keyframes dukrana-ov-arrow-pulse {

  0%,
  100% {
    opacity: 1;
    transform: scale(1);
  }

  50% {
    opacity: 0.55;
    transform: scale(0.92);
  }
}

.dukrana-ov-arrows path {
  transform-box: fill-box;
  transform-origin: center;
  animation: dukrana-ov-arrow-pulse 2.4s ease-in-out infinite;
}

.dukrana-ov-arrows path:nth-child(2) {
  animation-delay: 0.6s;
}

.dukrana-ov-arrows path:nth-child(3) {
  animation-delay: 1.2s;
}

.dukrana-ov-arrows path:nth-child(4) {
  animation-delay: 1.8s;
}

/* Pill node — Figma: rect 109.9×109.9 rx 27.46, stroke 0.8 dashed */
.dukrana-ov-node {
  cursor: pointer;
}

.dukrana-pill-rect {
  fill: #FAFAFA;
  stroke: #1F6259;
  stroke-width: 0.79586;
  stroke-dasharray: 3.18 3.18;
  transition: fill 0.3s ease, stroke 0.3s ease;
}

.dukrana-ov-node.is-active .dukrana-pill-rect {
  fill: #1F6259;
  stroke: transparent;
}

.dukrana-ov-node:hover .dukrana-pill-rect {
  stroke-dashoffset: -6;
}

.dukrana-pill-person * {
  stroke: #1F6259;
  transition: stroke 0.3s ease;
}

.dukrana-ov-node.is-active .dukrana-pill-person * {
  stroke: #FAFAFA;
}

/* Figma: center label Epilogue 36px 400 */
#dukrana-circle-label {
  transition: opacity 0.25s ease;
}

/* ── Right column — dashed card ── */

/* Figma: stroke #1F6259 0.9px dashed, radius 8px, padding 40 */
.dukrana-ov-right {
  position: relative;
  border: none;
  border-radius: 8px;
  padding: 40px;
  align-self: center;
  background-color: #FAFAFA;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25' fill='none'><rect x='0.45' y='0.45' width='calc(100%25 - 0.9px)' height='calc(100%25 - 0.9px)' rx='7.55' ry='7.55' stroke='%231F6259' stroke-width='0.9' stroke-dasharray='3 4'/></svg>");
  background-repeat: no-repeat;
}

/* Connector from ring to card — horizontal on desktop, vertical on mobile */
.dukrana-ov-connector-down {
  display: none;
}

.dukrana-ov-panel {
  display: none;
  flex-direction: column;
  animation: dukrana-fade-panel 0.3s ease;
}

.dukrana-ov-panel.is-active {
  display: flex;
}

@keyframes dukrana-fade-panel {
  from {
    opacity: 0;
    transform: translateY(6px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Figma: panel description — Epilogue 500 18px, lh 24px, ls -0.16 */
.dukrana-ov-panel-desc {
  font-family: 'Epilogue', sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: -0.16px;
  color: #1F6259;
  margin: 0 0 24px;
}

/* Dashed divider — matches card border style (3 4 pattern) */
.dukrana-ov-panel-desc::after {
  content: '';
  display: block;
  margin-top: 24px;
  height: 0.9px;
  background: repeating-linear-gradient(to right, #1F6259 0 3px, transparent 3px 7px);
}

.dukrana-ov-panel-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

/* Figma: Body Small — Epilogue 400 14px, lh 1.429em */
.dukrana-ov-panel-list li {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: 'Epilogue', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.429em;
  color: #1F6259;
}

/* Check icon — accent orange #F4A261 per Figma reference (24×24) */
.dukrana-check-icon {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}

.dukrana-overview-stats.wp-block-columns {
  padding-top: 96px;
}

.dukrana-overview-stats .wp-block-group {
  gap: 16px !important;
}

.dukrana-overview-stats .wp-block-group>p {
  margin: 0 !important;
}

.dukrana-overview-stats .wp-block-group>p:first-child {
  line-height: 1 !important;
}

/* INDUSTRY INNER — PROBLEMS */

.dukrana-problems-section {
  background: #133D37;
  padding: 96px var(--page-padding-x);
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

.dukrana-problems-inner {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 100px;
  min-height: 1010.94px;
}

.dukrana-problems-left {
  width: 584px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.dukrana-problems-header {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.dukrana-problems-divider {
  height: 1px;
  opacity: 0.6;
  background: repeating-linear-gradient(to right, #F3F1EF 0 3px, transparent 3px 7px);
}

.dukrana-problems-heading {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 50px;
  line-height: 60px;
  letter-spacing: -0.72px;
  color: #FAFAFA;
  margin: 0;
}

.dukrana-problems-intro {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 22px;
  letter-spacing: -0.16px;
  color: #F3F1EF;
  margin: 0;
  padding-top: 8px;
}

.dukrana-problems-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}

.dukrana-problems-item {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 32px 0;
  border-top: 1px dashed rgba(255, 255, 255, 0.6);
}

.dukrana-problems-item:last-child {
  border-bottom: 1px dashed rgba(255, 255, 255, 0.6);
}

.dukrana-problems-item-row {
  display: flex;
  align-items: center;
  gap: 24px;
}

.dukrana-problems-icon {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}

.dukrana-problems-item-title {
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 22px;
  letter-spacing: -0.16px;
  color: #FFFFFF;
}

.dukrana-problems-item-desc {
  margin: 0;
  padding-left: 48px;
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: -0.14px;
  color: rgba(255, 255, 255, 0.6);
}

.dukrana-problems-right {
  flex: 1;
  min-width: 0;
  border-radius: 8px;
  overflow: hidden;
  position: relative;
  background: linear-gradient(to right, #AEDCB9, rgba(174, 220, 185, 0.16));
}

.dukrana-problems-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 72% center;
  display: block;
}

.dukrana-problems-circle {
  position: absolute;
  right: -315px;
  bottom: -16px;
  width: 502px;
  height: 502px;
  border: 1px dashed rgba(255, 255, 255, 0.6);
  border-radius: 50%;
  pointer-events: none;
  z-index: 2;
}


/* INDUSTRY INNER — PROCESS (image cards) */

/* Carousel wrapper — track + controls */
.dukrana-process-carousel {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

/* Card row — horizontal scroll carousel (Figma: 4 cards visible at 1440w, gap 24px) */
.dukrana-process-cards {
  display: flex;
  gap: 24px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  scroll-behavior: smooth;
  scroll-padding-left: 0;
}

.dukrana-process-cards::-webkit-scrollbar {
  display: none;
}

/* Carousel nav — prev/next circles, bottom-right */
.dukrana-process-controls {
  display: flex;
  justify-content: flex-end;
  gap: 11px;
}

.dukrana-process-btn {
  width: 43px;
  height: 43px;
  border-radius: 50%;
  border: 0;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
  backdrop-filter: blur(16.29px);
  -webkit-backdrop-filter: blur(16.29px);
}

.dukrana-process-btn-prev {
  background: #F3F1EF;
  color: #1F6259;
}

.dukrana-process-btn-next {
  background: #1F6259;
  color: #ffffff;
}

.dukrana-process-btn img {
  width: 16px;
  height: 16px;
  display: block;
  transition: filter 0.2s ease;
}

.dukrana-process-btn-next img {
  filter: brightness(0) invert(1);
}

/* Edge-state animation — same as product-groups carousel */
.dukrana-process-btn.is-active {
  background: #1F6259 !important;
  color: #FAFAFA !important;
}

.dukrana-process-btn.is-inactive {
  background: #F3F1EF !important;
  color: #1F6259 !important;
  opacity: 1;
}

.dukrana-process-btn.is-active img {
  filter: brightness(0) invert(1);
}

.dukrana-process-btn.is-inactive img {
  filter: none;
}

.dukrana-process-btn:disabled {
  cursor: default;
}

.dukrana-process-btn:hover:not(:disabled) {
  transform: translateY(-1px);
}

.dukrana-process-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

/* Card — fixed 390x500 (Figma), full-bleed image + dark overlay + content on top */
.dukrana-process-card {
  flex: 0 0 390px;
  width: 390px;
  aspect-ratio: 390 / 500;
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  padding: 40px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: #ffffff;
  isolation: isolate;
  scroll-snap-align: start;
}

.dukrana-process-card-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
  display: block;
}

.dukrana-process-card::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.25);
  z-index: 1;
  pointer-events: none;
}

/* Step number badge — frosted light circle, top-left. Figma: 43px circle, blur 16.29, Plus Jakarta SemiBold 18/27.9/-0.45 */
.dukrana-process-card-num {
  position: relative;
  z-index: 2;
  width: 43px;
  height: 43px;
  border-radius: 50%;
  background: rgba(243, 241, 239, 0.5);
  backdrop-filter: blur(16.29px);
  -webkit-backdrop-filter: blur(16.29px);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Plus Jakarta Sans', 'Epilogue', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 27.9px;
  letter-spacing: -0.45px;
  color: #ffffff;
  text-align: center;
  align-self: flex-start;
  flex-shrink: 0;
  padding: 0;
  box-sizing: border-box;
}

/* Title + description overlay, bottom of card */
.dukrana-process-card-body {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.dukrana-process-card-title {
  font-family: 'Epilogue', sans-serif;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: -0.02em;
  color: #ffffff;
  margin: 0;
}

.dukrana-process-card-desc {
  font-family: 'Epilogue', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.45;
  color: #ffffff;
  opacity: 0.85;
  margin: 0;
}

/* Legacy (keep for backwards compat) */
.dukrana-process-step-number {
  width: 40px;
  height: 40px;
  border-radius: 32px;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(12px);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 14px;
  color: #FAFAFA;
}

/* INDUSTRY INNER — RESPONSIVE */

/* Industry hero — stack at the same breakpoint as About hero (900px) */
@media (max-width: 900px) {

  /* HERO — stack media above content, give heading room */
  .dukrana-industry-hero-wrapper {
    grid-template-columns: minmax(0, 1fr) !important;
    min-height: auto !important;
  }

  .dukrana-industry-hero-media {
    min-height: 420px;
  }

  .dukrana-industry-hero-scroll {
    left: 24px;
    bottom: 24px;
  }

  .dukrana-industry-hero-content {
    min-height: auto !important;
    padding: 32px 24px;
    gap: 32px;
  }

  .dukrana-industry-hero-heading {
    font-size: 34px !important;
    line-height: 42px !important;
  }

  .dukrana-industry-hero-copy {
    max-width: 720px;
    gap: 32px;
  }
}

/* Tablet landscape (1025–1200) — stack inner sections like mobile */
@media (max-width: 1200px) {

  /* OVERVIEW — stack to single column */
  #industry-overview.wp-block-group.alignfull {
    padding-top: 96px !important;
    padding-bottom: 80px !important;
  }

  .dukrana-overview-interactive {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
    max-width: 100%;
  }

  .dukrana-ov-svg {
    max-width: 400px;
    margin-bottom: 24px;
  }

  .dukrana-ov-connector-right {
    display: none;
  }

  .dukrana-ov-connector-down {
    display: block;
  }

  .dukrana-ov-circle-wrap {
    justify-content: center;
  }

  .dukrana-ov-right {
    max-width: 640px;
    margin: 0 auto;
    padding: 40px !important;
  }

  .dukrana-ov-right::before {
    display: none;
  }

  .dukrana-ov-heading {
    font-size: 28px !important;
    line-height: 1.25 !important;
  }

  /* PROBLEMS — stack content above image, relax fixed dimensions */
  .dukrana-problems.wp-block-columns {
    flex-direction: column !important;
  }

  .dukrana-problems-inner {
    flex-direction: column !important;
    min-height: auto !important;
    gap: 0 !important;
  }

  .dukrana-problems-left {
    width: 100% !important;
    flex-basis: 100% !important;
    padding: 64px 48px !important;
    box-sizing: border-box;
  }

  .dukrana-problems-heading {
    font-size: 36px !important;
    line-height: 1.2 !important;
  }

  .dukrana-problems-list {
    margin-top: 24px;
  }

  .dukrana-problems-right {
    width: 100% !important;
    flex-basis: 100% !important;
    min-height: 360px;
  }

  /* PROCESS — keep cards reasonable */
  .dukrana-process-card {
    flex: 0 0 340px;
    width: 340px;
  }

  .dukrana-process-header.wp-block-group {
    flex-direction: column;
    align-items: flex-start !important;
    gap: 24px !important;
  }

  /* CTA — stack + tighter padding */
  .dukrana-ind-cta.wp-block-group {
    flex-direction: column !important;
    text-align: center;
    padding: 56px 48px !important;
    gap: 24px !important;
  }

  /* Overview stats — allow wrap so 3 columns don't crush */
  .dukrana-overview-stats.wp-block-columns {
    flex-wrap: wrap !important;
  }
}

@media (max-width: 1024px) {

  .dukrana-industry-hero-heading {
    font-size: 36px !important;
    line-height: 44px !important;
  }

  .dukrana-industry-hero-stats {
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    gap: 16px !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    width: 100%;
  }

  .dukrana-industry-hero-stats .dukrana-industry-stat {
    flex-direction: row !important;
    align-items: center !important;
    text-align: left !important;
    gap: 12px !important;
    font-size: 14px !important;
  }

  .dukrana-overview-interactive {
    grid-template-columns: 1fr;
    gap: 40px;
    max-width: 100%;
  }

  .dukrana-ov-svg {
    max-width: 340px;
    margin-bottom: 24px;
  }

  .dukrana-ov-connector-right {
    display: none;
  }

  .dukrana-ov-connector-down {
    display: block;
  }

  .dukrana-ov-right {
    max-width: 420px;
    margin: 0 auto;
  }

  .dukrana-ov-right::before {
    display: none;
  }

  .dukrana-problems-section {
    padding: 64px var(--page-padding-x);
  }

  .dukrana-problems-inner {
    flex-direction: column;
    gap: 40px;
    min-height: auto;
  }

  .dukrana-problems.wp-block-columns {
    flex-direction: column !important;
  }

  .dukrana-problems-left {
    width: 100% !important;
    flex-basis: 100% !important;
    padding: 48px 32px !important;
    box-sizing: border-box;
  }

  .dukrana-problems-heading {
    font-size: 32px !important;
    line-height: 1.2 !important;
  }

  .dukrana-problems-right {
    width: 100% !important;
    flex-basis: 100% !important;
    min-height: 320px;
  }

  .dukrana-ind-cta.wp-block-group {
    flex-direction: column;
    text-align: center;
  }

  .dukrana-overview-stats.wp-block-columns {
    flex-wrap: wrap;
  }

  /* PROCESS — narrower cards on tablet */
  .dukrana-process-card {
    flex: 0 0 320px;
    width: 320px;
  }

  .dukrana-process-header.wp-block-group {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }

  .dukrana-process-header>.wp-block-group {
    width: 100%;
  }
}

/* ---------- INDUSTRY PAGE — MID (≤900px) ---------- */
@media (max-width: 900px) {
  .dukrana-industry-hero-content {
    padding: 48px 32px 40px !important;
  }

  .dukrana-industry-hero-heading {
    font-size: 32px !important;
    line-height: 1.15 !important;
  }

  /* Overview stats — 1 column stack on narrow tablet/mobile */
  .dukrana-overview-stats.wp-block-columns .wp-block-column {
    flex-basis: 100% !important;
    width: 100% !important;
  }

  .dukrana-overview-stats.wp-block-columns {
    gap: 64px !important;
    row-gap: 64px !important;
  }

  .dukrana-overview-stats .wp-block-group>p:first-child {
    font-size: 48px !important;
  }
}

/* ---------- INDUSTRY PAGE — MOBILE (≤768px) ---------- */
@media (max-width: 768px) {

  /* HERO — tighter padding, centered content, stats stack nicely */
  .dukrana-industry-hero-media {
    min-height: 280px !important;
  }

  .dukrana-industry-hero-content {
    padding: 32px 24px !important;
  }

  .dukrana-industry-hero-content h1.wp-block-heading,
  .dukrana-industry-hero-heading {
    font-size: 28px !important;
    line-height: 1.2 !important;
  }

  .dukrana-industry-hero-text-block {
    gap: 24px !important;
  }

  .dukrana-industry-hero-stats {
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    gap: 14px !important;
    padding-top: 16px !important;
    margin-top: 0 !important;
    border-top: none !important;
    width: 100%;
    align-items: flex-start !important;
    justify-content: flex-start !important;
  }

  .dukrana-industry-stat {
    flex: 0 0 auto !important;
    min-width: 0 !important;
    flex-direction: row !important;
    align-items: center !important;
    text-align: left !important;
    font-size: 13px !important;
    gap: 12px !important;
    line-height: 1.3 !important;
  }

  .dukrana-industry-stat .dukrana-industry-stat-icon {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
  }

  .dukrana-industry-stat .dukrana-industry-stat-icon img {
    width: 17px !important;
    height: 17px !important;
  }

  /* OVERVIEW — tighten section padding, shrink circle, simplify */
  #industry-overview.wp-block-group.alignfull {
    padding-top: 64px !important;
    padding-bottom: 56px !important;
  }

  .dukrana-ov-heading {
    font-size: 24px !important;
    line-height: 1.25 !important;
  }

  .dukrana-ov-svg {
    max-width: 340px !important;
    margin-bottom: 24px;
  }

  .dukrana-ov-connector-right {
    display: none;
  }

  .dukrana-ov-connector-down {
    display: block;
  }

  .dukrana-ov-right {
    max-width: 100% !important;
  }

  .dukrana-overview-stats .wp-block-group>p:first-child {
    font-size: 42px !important;
  }

  /* PROBLEMS — smaller text, reduced padding */
  .dukrana-problems-left {
    padding: 32px 24px 48px !important;
  }

  .dukrana-problems-left h2.wp-block-heading,
  .dukrana-problems-heading {
    font-size: 26px !important;
    line-height: 1.25 !important;
  }

  .dukrana-problems-list {
    margin-top: 16px;
  }

  .dukrana-problems-right {
    min-height: 240px !important;
  }

  .dukrana-problems-item summary {
    font-size: 15px !important;
  }

  /* PROCESS — 1-up cards, tighter padding */
  .dukrana-process-card {
    flex: 0 0 calc(100vw - 72px);
    width: calc(100vw - 72px);
    max-width: 340px;
    padding: 28px;
  }

  .dukrana-process-card-title {
    font-size: 18px !important;
  }

  .dukrana-process-controls {
    justify-content: center;
  }

  /* CTA banner — stack + center */
  .dukrana-ind-cta.wp-block-group {
    gap: 20px !important;
  }

  .dukrana-ind-cta h2.wp-block-heading {
    font-size: 24px !important;
    line-height: 1.2 !important;
  }
}

.dukrana-process-header.wp-block-group {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}

.dukrana-process-header>.wp-block-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.dukrana-process-header>.wp-block-group>* {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.dukrana-process-header .wp-block-buttons {
  margin-left: auto;
}

.dukrana-process-header+.dukrana-process-carousel,
.dukrana-process-carousel {
  margin-top: 32px;
}

.dukrana-process-header {
  margin-bottom: 0 !important;
}

@media (max-width: 768px) {
  .dukrana-process-header.wp-block-group {
    flex-direction: column;
    align-items: flex-start;
  }

  .dukrana-process-header .wp-block-buttons {
    margin-left: 0;
  }

  .dukrana-process-card {
    flex: 0 0 85%;
    min-width: 260px;
  }
}

/* CATALOG PAGE */

/* --- Top bar: tabs + search ---------------------------------------------- */
.dukrana-catalog-topbar {
  display: flex;
  gap: 16px;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: nowrap;
}

.dukrana-catalog-tabs {
  display: flex;
  gap: 6px;
  align-items: stretch;
  flex: 1 1 auto;
  min-width: 0;
  background-color: #F3F1EF;
  padding: 6px;
  border-radius: 8px;
  flex-wrap: wrap;
}

.dukrana-catalog-tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 6px 12px;
  border-radius: 4px;
  text-decoration: none;
  color: #1F6259;
  font-family: "Epilogue", sans-serif;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: -0.14px;
  line-height: 1;
  background-color: #FAFAFA;
  flex: 1 1 auto;
  min-width: 0;
  white-space: nowrap;
  transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.dukrana-catalog-tab:hover:not(.is-active) {
  background-color: #FFFFFF;
  box-shadow: 0 1px 3px rgba(31, 98, 89, 0.12);
}

.dukrana-catalog-tab.is-active {
  background-color: #1F6259;
  color: #FAFAFA;
}

.dukrana-catalog-tab-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  flex-shrink: 0;
}

.dukrana-catalog-tab-icon svg {
  width: 100%;
  height: 100%;
  display: block;
}

/* Inactive: dark green circle bg, light strokes */
.dukrana-catalog-tab .dukrana-catalog-tab-icon svg rect:first-of-type {
  fill: #1F6259;
}

.dukrana-catalog-tab .dukrana-catalog-tab-icon svg [stroke] {
  stroke: #F3F1EF;
}

/* Active: white circle bg, dark green strokes */
.dukrana-catalog-tab.is-active .dukrana-catalog-tab-icon svg rect:first-of-type {
  fill: #FAFAFA;
}

.dukrana-catalog-tab.is-active .dukrana-catalog-tab-icon svg [stroke] {
  stroke: #1F6259;
}

.dukrana-catalog-tab-label {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Subcategories nested under the active category in the "Produktų grupė" filter. */
.dukrana-filter-option--sub {
  padding-left: 26px;
  position: relative;
}
.dukrana-filter-option--sub::before {
  content: "";
  position: absolute;
  left: 11px;
  top: 50%;
  width: 8px;
  height: 1px;
  background: rgba(31, 98, 89, 0.28);
}
.dukrana-filter-option--sub .dukrana-filter-option-label {
  font-size: 13px;
}

.dukrana-catalog-search {
  display: flex;
  gap: 8px;
  align-items: stretch;
  background-color: #F3F1EF;
  border-radius: 8px;
  padding: 8px;
  flex: 0 0 400px;
}

.dukrana-catalog-search-field {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  align-items: center;
  background-color: #FAFAFA;
  border: 1px solid #FAFAFA;
  border-radius: 4px;
  padding: 5px 5px 5px 17px;
}

.dukrana-catalog-search-field input {
  width: 100%;
  border: 0;
  background: transparent;
  outline: none;
  font-family: "Epilogue", sans-serif;
  font-size: 14.5px;
  color: #1F6259;
  letter-spacing: -0.16px;
}

.dukrana-catalog-search-field input::placeholder {
  color: #1F6259;
  opacity: 1;
}

.dukrana-catalog-search-btn {
  background-color: #1F6259;
  color: #FAFAFA;
  border: 0;
  border-radius: 4px;
  padding: 17px 24px 16px;
  font-family: "Epilogue", sans-serif;
  font-weight: 500;
  font-size: 13.5px;
  letter-spacing: -0.04px;
  cursor: pointer;
  transition: background-color 0.2s;
}

.dukrana-catalog-search-btn:hover {
  background-color: #133D37;
}

/* --- Breadcrumb + title + meta ------------------------------------------- */
.dukrana-catalog-breadcrumb {
  display: flex;
  gap: 6px;
  align-items: center;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  line-height: 20px;
  color: #1F6259;
  margin-bottom: 24px;
}

.dukrana-catalog-breadcrumb a {
  color: #1F6259;
  text-decoration: none;
}

.dukrana-catalog-breadcrumb a:hover {
  color: #F4A261;
}

.dukrana-breadcrumb-sep {
  color: #1F6259;
  opacity: 0.6;
}

.dukrana-breadcrumb-current {
  color: #133D37;
  font-weight: 500;
}

@media (max-width: 768px) {
  .dukrana-catalog-breadcrumb {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    gap: 8px;
    padding-bottom: 4px;
    margin-bottom: 16px;
    scrollbar-width: none;
    -ms-overflow-style: none;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 24px), transparent 100%);
    -webkit-mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 24px), transparent 100%);
  }

  .dukrana-catalog-breadcrumb::-webkit-scrollbar {
    display: none;
  }

  .dukrana-catalog-breadcrumb>* {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  .dukrana-catalog-breadcrumb .dukrana-breadcrumb-current {
    padding-right: 24px;
  }
}

.dukrana-catalog-title-row {
  display: flex;
  gap: 48px;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 12px;
}

/* Align the description's first line to the title's cap height so it never rises above the title. */
.dukrana-catalog-title-row .dukrana-catalog-desc-wrap {
  margin-top: 0;
}

.dukrana-catalog-title-row .dukrana-catalog-description {
  margin-top: 0;
}

/* Toggle button in meta row — same size/style language as sort dropdown */
.dukrana-catalog-search-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 40px;
  padding: 0 16px;
  margin: 0 auto 0 16px;
  background: #FAFAFA;
  border: 1px solid rgba(31, 98, 89, 0.2);
  border-radius: 4px;
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  color: #1F6259;
  cursor: pointer;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}
.dukrana-catalog-search-toggle:hover {
  border-color: rgba(31, 98, 89, 0.45);
}
.dukrana-catalog-search-toggle.is-active,
.dukrana-catalog-search-toggle[aria-expanded="true"] {
  background: #1F6259;
  color: #FAFAFA;
  border-color: #1F6259;
}
.dukrana-catalog-search-toggle.is-active img,
.dukrana-catalog-search-toggle[aria-expanded="true"] img {
  filter: brightness(0) invert(1);
}

/* Mobile-only "Filtrai" trigger that lives in the meta row (desktop uses the always-on sidebar). */
.dukrana-catalog-meta-filters {
  display: none;
}

/* Slide-down panel below the meta row */
.dukrana-catalog-search-panel {
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  transition: grid-template-rows 0.25s ease, margin-top 0.25s ease;
  margin-top: 0;
}
.dukrana-catalog-search-panel.is-open {
  grid-template-rows: 1fr;
  margin-top: 12px;
}
.dukrana-catalog-search-panel[hidden] {
  display: none;
}
.dukrana-catalog-search-panel > form {
  min-height: 0;
}

/* Compact-styled search inside the panel */
.dukrana-catalog-search--panel {
  display: flex;
  gap: 8px;
  width: 100%;
  max-width: 420px;
  margin: 0 auto 0 0;
  background: none;
  border: 0;
  padding: 0;
}

.dukrana-catalog-search--panel .dukrana-catalog-search-icon {
  position: static;
  width: 18px;
  height: 18px;
}

@media (max-width: 768px) {
  .dukrana-catalog-search--panel {
    max-width: 100%;
  }
}
.dukrana-catalog-search--panel .dukrana-catalog-search-field {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 14px;
  height: 44px;
  background: #FAFAFA;
  border: 1px solid rgba(31, 98, 89, 0.2);
  border-radius: 4px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.dukrana-catalog-search--panel .dukrana-catalog-search-field:focus-within {
  border-color: #1F6259;
  box-shadow: 0 0 0 3px rgba(31, 98, 89, 0.12);
}
.dukrana-catalog-search--panel .dukrana-catalog-search-icon {
  opacity: 0.6;
  flex: 0 0 auto;
}
.dukrana-catalog-search--panel input[type="search"] {
  flex: 1 1 auto;
  min-width: 0;
  height: 100%;
  padding: 0;
  background: transparent;
  border: 0;
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  color: #1F6259;
  outline: none;
}
.dukrana-catalog-search--panel input::placeholder {
  color: rgba(31, 98, 89, 0.5);
}
.dukrana-catalog-search--panel .dukrana-catalog-search-submit {
  flex: 0 0 auto;
  height: 44px;
  padding: 0 22px;
  background: #1F6259;
  color: #FAFAFA;
  border: 0;
  border-radius: 4px;
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.dukrana-catalog-search--panel .dukrana-catalog-search-submit:hover {
  background: #174940;
}

@media (max-width: 768px) {
  .dukrana-catalog-search-toggle {
    margin-left: auto;
  }
}

/* Meta row search: matches the sort dropdown so the toolbar reads as one (count | search | sort). */
.dukrana-catalog-search--meta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: 1 1 280px;
  max-width: 360px;
  margin: 0 auto 0 16px;
  padding: 0;
  background: none;
  border: 0;
  box-shadow: none;
}

.dukrana-catalog-search--meta .dukrana-catalog-search-field {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  height: 40px;
  background: #FAFAFA;
  border: 1px solid rgba(31, 98, 89, 0.2);
  border-radius: 4px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.dukrana-catalog-search--meta .dukrana-catalog-search-field:focus-within {
  border-color: #1F6259;
  box-shadow: 0 0 0 3px rgba(31, 98, 89, 0.12);
}

.dukrana-catalog-search--meta .dukrana-catalog-search-field:hover {
  border-color: rgba(31, 98, 89, 0.45);
}

.dukrana-catalog-search--meta .dukrana-catalog-search-icon {
  position: static;
  width: 18px;
  height: 18px;
  opacity: 0.6;
  flex: 0 0 auto;
}

.dukrana-catalog-search--meta .dukrana-catalog-search-field input[type="search"] {
  flex: 1 1 auto;
  min-width: 0;
  height: 100%;
  padding: 0;
  background: transparent;
  border: 0;
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  color: #1F6259;
  outline: none;
}

.dukrana-catalog-search--meta .dukrana-catalog-search-field input::placeholder {
  color: rgba(31, 98, 89, 0.5);
}

.dukrana-catalog-search--meta .dukrana-catalog-search-submit {
  flex: 0 0 auto;
  height: 40px;
  padding: 0 16px;
  background: #1F6259;
  color: #FAFAFA;
  border: 0;
  border-radius: 4px;
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.dukrana-catalog-search--meta .dukrana-catalog-search-submit:hover {
  background: #174940;
}

@media (max-width: 768px) {
  .dukrana-catalog-meta {
    flex-wrap: wrap;
  }
  .dukrana-catalog-search--meta {
    flex: 1 1 100%;
    max-width: 100%;
    margin: 8px 0;
    order: 2;
  }
}

/* Account for sticky header when pagination scrolls catalog grid into view */
#dukrana-archive {
  scroll-margin-top: 100px;
}

.dukrana-catalog-title {
  font-family: "Epilogue", sans-serif;
  font-weight: 400;
  font-size: 50px;
  line-height: 60px;
  letter-spacing: -0.72px;
  color: #1F6259;
  margin: 0;
  flex: 0 0 auto;
}

.dukrana-catalog-desc-wrap {
  max-width: 558px;
}

.dukrana-catalog-description {
  font-family: "Inter", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 22px;
  color: #1F6259;
  opacity: 0.85;
  max-width: 558px;
  margin: 8px 0 0;
}

/* Inline links inside a category description (e.g. "Pateikite užklausą") */
.dukrana-catalog-description a {
  color: #1F6259;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* Collapsed state: show a 3-line preview; JS removes this on "Daugiau". */
.dukrana-catalog-description.is-clamped {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

.dukrana-catalog-desc-toggle {
  display: inline-block;
  margin-top: 6px;
  padding: 0;
  background: none;
  border: 0;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  color: #1F6259;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.dukrana-catalog-desc-toggle:hover {
  opacity: 0.75;
}

/* The class rule sets display, which would beat the UA [hidden] rule — keep the button hidden when JS sets hidden (text fits, not expandable). */
.dukrana-catalog-desc-toggle[hidden] {
  display: none;
}

.dukrana-catalog-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.dukrana-catalog-count {
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  color: #1F6259;
  margin: 0;
}

.dukrana-catalog-count strong {
  font-weight: 600;
  color: #133D37;
}

.dukrana-catalog-sort {
  display: flex;
  align-items: center;
  gap: 8px;
}

.dukrana-catalog-sort-label {
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  color: #1F6259;
}

.dukrana-catalog-sort-button {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 176px;
  padding: 8px 13px;
  background-color: #FAFAFA;
  border: 1px solid #F3F1EF;
  border-radius: 4px;
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  color: #133D37;
  cursor: pointer;
  transition: border-color 0.2s;
}

.dukrana-catalog-sort-button:hover {
  border-color: #1F6259;
}

/* --- Two-column layout --------------------------------------------------- */
.dukrana-catalog-layout {
  display: grid;
  grid-template-columns: 304px 1fr;
  gap: 25px;
  align-items: flex-start;
}

/* --- Sidebar filters ----------------------------------------------------- */
.dukrana-catalog-sidebar {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.dukrana-filter-card {
  background-color: #FAFAFA;
  border: 1px solid #F3F1EF;
  border-radius: 8px;
  padding: 21px;
}

.dukrana-filter-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 16px;
  border-bottom: 1px solid #F3F4F6;
}

.dukrana-filter-card-title {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: "Epilogue", sans-serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 1;
  color: #133D37;
}

/* Optically centre the funnel icon to the text: "Filtrai" ink centre sits ~2px above the font-box centre, so lift the icon 2px (measured in-browser). */
.dukrana-filter-card-title img {
  margin-top: -2px;
}

.dukrana-filter-clear {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: transparent;
  border: 0;
  padding: 0;
  font-family: "Inter", sans-serif;
  font-weight: 500;
  font-size: 12px;
  color: #1F6259;
  cursor: pointer;
}

.dukrana-filter-clear:hover {
  color: #F4A261;
}

.dukrana-filter-clear:hover svg path {
  stroke: #F4A261;
}

.dukrana-filter-toggle-more {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: 6px;
  background: transparent;
  border: 0;
  padding: 0;
  font-family: "Inter", sans-serif;
  font-weight: 500;
  font-size: 12px;
  color: #1F6259;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.dukrana-filter-toggle-more:hover {
  color: #F4A261;
}

.dukrana-filter-active {
  padding: 16px 0 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.dukrana-filter-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 8px 3px 5px;
  background: transparent;
  border: 1px solid #1F6259;
  border-radius: 12px;
  font-family: "Epilogue", sans-serif;
  font-size: 13px;
  color: #1F6259;
  cursor: pointer;
}

.dukrana-filter-chip:hover {
  background-color: rgba(31, 98, 89, 0.08);
}

.dukrana-filter-groups {
  padding-top: 16px;
  display: flex;
  flex-direction: column;
}

.dukrana-filter-group {
  border-top: 1px solid #F3F4F6;
  padding: 16px 0;
}

.dukrana-filter-group:first-child {
  border-top: 0;
  padding-top: 0;
}

.dukrana-filter-group>summary {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  padding: 8px 0;
}

.dukrana-filter-group>summary::-webkit-details-marker {
  display: none;
}

.dukrana-filter-group-title {
  font-family: "Epilogue", sans-serif;
  font-weight: 500;
  font-size: 14px;
  color: #133D37;
}

.dukrana-filter-group-chevron {
  transition: transform 0.2s ease;
  flex-shrink: 0;
}

.dukrana-filter-group[open] .dukrana-filter-group-chevron {
  transform: rotate(180deg);
}

.dukrana-filter-options {
  list-style: none;
  padding: 12px 0 0 4px;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.dukrana-filter-option label,
.dukrana-filter-option-link {
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  padding: 4px 0;
}

.dukrana-filter-option-link {
  text-decoration: none;
}

.dukrana-filter-option-label {
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  line-height: 20px;
  color: #133D37;
}

.dukrana-checkbox {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border: 1px solid #1F6259;
  border-radius: 3px;
  background-color: #FAFAFA;
  flex-shrink: 0;
  transition: background-color 0.15s, border-color 0.15s;
}

.dukrana-checkbox.is-checked {
  background-color: #1F6259;
  border-color: #1F6259;
}

.dukrana-checkbox input {
  position: absolute;
  inset: 0;
  opacity: 0;
  margin: 0;
  cursor: pointer;
}

/* --- Sidebar help card --------------------------------------------------- */
.dukrana-filter-help {
  background-color: #133D37;
  color: #FAFAFA;
  border-radius: 8px;
  padding: 30px 20px 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.dukrana-filter-help-title {
  font-family: "Epilogue", sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 1;
  letter-spacing: -0.5px;
  color: #FAFAFA;
  margin: 0 0 10px;
}

.dukrana-filter-help-text {
  font-family: "Epilogue", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: #FAFAFA;
  margin: 0;
}

.dukrana-filter-help-cta {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 17px 24px 16px;
  background-color: #F4A261;
  color: #133D37;
  border: 0;
  border-radius: 4px;
  text-decoration: none;
  font-family: "Epilogue", sans-serif;
  font-weight: 500;
  font-size: 13.5px;
  letter-spacing: -0.04px;
  cursor: pointer;
  transition: background-color 0.2s;
}

.dukrana-filter-help-cta:hover {
  background-color: #e89250;
}

/* --- Product grid -------------------------------------------------------- */
.dukrana-catalog-results {
  display: flex;
  flex-direction: column;
  gap: 20px;
  transition: opacity 0.2s ease;
}

.dukrana-catalog-results.is-loading {
  opacity: 0.5;
  pointer-events: none;
}

.dukrana-catalog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 21px;
}

.dukrana-catalog-card {
  background-color: #F3F1EF;
  border-radius: 8px;
  padding: 8px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  position: relative;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.dukrana-catalog-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(19, 61, 55, 0.08);
}

.dukrana-catalog-card-title a::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: inherit;
}

.dukrana-catalog-card-actions {
  position: relative;
  z-index: 2;
}

.dukrana-catalog-card-media {
  position: relative;
  width: 100%;
  height: 240px;
  min-height: 240px;
  max-height: 240px;
  flex: 0 0 240px;
  border-radius: 4px;
  background-color: #FAFAFA;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.dukrana-catalog-card-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.dukrana-catalog-card-img.is-placeholder[src*="reduktoriai"] {
  object-fit: contain;
  background: #ffffff;
}
.dukrana-catalog-card-img.is-placeholder[src*="reduktoriai"] + *,
.dukrana-catalog-card-media:has(.is-placeholder[src*="reduktoriai"]) {
  background: #ffffff;
}

.dukrana-catalog-card-img-hover {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 0.4s ease;
  pointer-events: none;
}

.dukrana-catalog-card.has-hover-image:hover .dukrana-catalog-card-img-hover {
  opacity: 1;
}

.dukrana-catalog-card.has-hover-image:hover .dukrana-catalog-card-img-main {
  opacity: 0;
  transition: opacity 0.4s ease;
}

.dukrana-catalog-card-img-main {
  transition: opacity 0.4s ease;
}

.dukrana-catalog-card-body {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 16px;
}

.dukrana-catalog-card-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.dukrana-catalog-card-badge {
  font-family: "Epilogue", sans-serif;
  font-weight: 700;
  font-size: 10px;
  line-height: 15px;
  letter-spacing: 0.6172px;
  text-transform: uppercase;
  color: #133D37;
  padding: 4px 0;
}

.dukrana-catalog-card-brand {
  font-family: "Epilogue", sans-serif;
  font-size: 12px;
  line-height: 16px;
  color: #1F6259;
}

.dukrana-catalog-card-brand strong {
  font-weight: 500;
  color: #133D37;
}

.dukrana-catalog-card-title {
  font-family: "Epilogue", sans-serif;
  font-weight: 600;
  font-size: 18px;
  line-height: 22.5px;
  color: #1F6259;
  margin: 0;
}

.dukrana-catalog-card-specs {
  font-family: "Inter", sans-serif;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: -0.15px;
  color: #133D37;
  margin: 0;
}

.dukrana-catalog-card-actions {
  display: flex;
  align-items: stretch;
  gap: 16px;
}

.dukrana-catalog-card-view {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 47px;
  flex-shrink: 0;
  padding: 0 12px;
  background: transparent;
  border: 1.5px solid #1F6259;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.2s;
}

.dukrana-catalog-card-view:hover {
  background-color: rgba(31, 98, 89, 0.08);
}

.dukrana-catalog-card-cta {
  flex: 1 1 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 17px 24px 16px;
  background-color: #1F6259;
  color: #FAFAFA;
  border: 0;
  border-radius: 4px;
  font-family: "Epilogue", sans-serif;
  font-weight: 500;
  font-size: 13.5px;
  letter-spacing: -0.04px;
  cursor: pointer;
  transition: background-color 0.2s;
}

.dukrana-catalog-card-cta:hover {
  background-color: #133D37;
}

.dukrana-catalog-card-cta .dukrana-cta-text-added {
  display: none;
  align-items: center;
  gap: 8px;
}

.dukrana-catalog-card-cta.is-added .dukrana-cta-text-add {
  display: none;
}

.dukrana-catalog-card-cta.is-added .dukrana-cta-text-added {
  display: inline-flex;
}

.dukrana-catalog-card-cta.is-added {
  background-color: #1F6259;
}

.dukrana-catalog-card-title a {
  color: inherit;
  text-decoration: none;
}

.dukrana-catalog-card-title a:hover {
  color: #1F6259;
}

a.dukrana-catalog-card-view {
  text-decoration: none;
}

.dukrana-catalog-empty {
  background-color: #F3F1EF;
  border: 1px solid rgba(31, 98, 89, 0.12);
  border-radius: 12px;
  padding: 72px 32px;
  text-align: center;
  font-family: "Epilogue", sans-serif;
  color: #133D37;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.dukrana-catalog-empty-icon {
  color: #1F6259;
  opacity: 0.75;
  margin-bottom: 8px;
}

.dukrana-catalog-empty-title {
  margin: 0;
  font-size: 22px;
  font-weight: 500;
  letter-spacing: -0.01em;
  color: #133D37;
}

.dukrana-catalog-empty-text {
  margin: 0;
  max-width: 460px;
  font-size: 15px;
  line-height: 1.5;
  color: rgba(19, 61, 55, 0.8);
}

.dukrana-catalog-empty-text strong {
  color: #133D37;
  font-weight: 600;
}

.dukrana-catalog-empty-actions {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-top: 8px;
}

.dukrana-catalog-empty-btn {
  appearance: none;
  border: 1px solid rgba(31, 98, 89, 0.25);
  background: #FAFAFA;
  color: #1F6259;
  padding: 10px 18px;
  border-radius: 4px;
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  cursor: pointer;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.dukrana-catalog-empty-btn:hover {
  border-color: rgba(31, 98, 89, 0.45);
}

.dukrana-catalog-empty a {
  color: #1F6259;
}

.dukrana-catalog-empty a.dukrana-catalog-empty-btn-primary,
.dukrana-catalog-empty .dukrana-catalog-empty-btn-primary {
  background: #1F6259;
  border-color: #1F6259;
  color: #FAFAFA;
}

.dukrana-catalog-empty a.dukrana-catalog-empty-btn-primary:hover,
.dukrana-catalog-empty .dukrana-catalog-empty-btn-primary:hover {
  background: #133D37;
  border-color: #133D37;
  color: #FAFAFA;
}

a.dukrana-filter-clear,
a.dukrana-filter-chip {
  text-decoration: none;
  color: #1F6259;
}

.dukrana-filter-submit {
  display: none;
  margin-top: 12px;
  padding: 12px 18px;
  background: #1F6259;
  color: #FAFAFA;
  border: 0;
  border-radius: 4px;
  font-family: "Epilogue", sans-serif;
  font-weight: 500;
  cursor: pointer;
}

.no-js .dukrana-filter-submit {
  display: block;
}

.dukrana-catalog-sort {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.dukrana-catalog-sort-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.dukrana-catalog-sort-select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 10px 36px 10px 14px;
  background: #FAFAFA;
  border: 1px solid rgba(31, 98, 89, 0.2);
  border-radius: 4px;
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  color: #1F6259;
  cursor: pointer;
  /* Force light-mode native dropdown panel on macOS/Windows dark mode */
  color-scheme: light;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.dukrana-catalog-sort-select:hover {
  border-color: rgba(31, 98, 89, 0.45);
}

.dukrana-catalog-sort-select:focus {
  outline: none;
  border-color: #1F6259;
  box-shadow: 0 0 0 3px rgba(31, 98, 89, 0.12);
}

/* Limited: only Chromium/Firefox honour these on the open panel; Safari ignores them (native OS list). */
.dukrana-catalog-sort-select option {
  background: #FAFAFA;
  color: #1F6259;
  font-family: "Epilogue", sans-serif;
  padding: 8px 12px;
}

.dukrana-catalog-sort-select option:checked {
  background: #1F6259;
  color: #FAFAFA;
}

.dukrana-catalog-sort-wrap .dukrana-catalog-sort-chevron {
  position: absolute;
  right: 12px;
  pointer-events: none;
}

/* ===== Custom themed sort dropdown (JS-enhanced) ===== */

/* When JS builds the custom UI, hide the native select but keep it in DOM for form submit + no-JS fallback. */
.dukrana-catalog-sort-select--hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0 !important;
  margin: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
  pointer-events: none;
  opacity: 0;
}

/* If JS is disabled or hasn't run yet, hide the custom widget */
.dukrana-catalog-sort-wrap:not(.is-open) .dukrana-catalog-sort-list {
  /* hidden by [hidden] attribute too; this is belt-and-suspenders */
}

.dukrana-catalog-sort-button {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 10px 14px;
  background: #FAFAFA;
  border: 1px solid rgba(31, 98, 89, 0.2);
  border-radius: 4px;
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  color: #1F6259;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 240px;
  line-height: 1.2;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.dukrana-catalog-sort-button:hover {
  border-color: rgba(31, 98, 89, 0.45);
}

.dukrana-catalog-sort-button:focus-visible,
.dukrana-catalog-sort-wrap.is-open .dukrana-catalog-sort-button {
  outline: none;
  border-color: #1F6259;
  box-shadow: 0 0 0 3px rgba(31, 98, 89, 0.12);
}

.dukrana-catalog-sort-button-chevron {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #1F6259;
  transition: transform 0.2s ease;
}

.dukrana-catalog-sort-wrap.is-open .dukrana-catalog-sort-button-chevron {
  transform: rotate(180deg);
}

/* Hide the decorative SVG chevron when the JS button is active */
.dukrana-catalog-sort-wrap:has(.dukrana-catalog-sort-button) > .dukrana-catalog-sort-chevron {
  display: none;
}

.dukrana-catalog-sort-list {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  width: auto;
  list-style: none;
  margin: 0;
  padding: 6px;
  background: #FAFAFA;
  border: 1px solid rgba(31, 98, 89, 0.18);
  border-radius: 6px;
  box-shadow: 0 12px 28px rgba(19, 61, 55, 0.12), 0 2px 6px rgba(19, 61, 55, 0.06);
  z-index: 50;
  max-height: 360px;
  overflow-y: auto;
  box-sizing: border-box;
}

.dukrana-catalog-sort-option {
  padding: 10px 14px;
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  color: #1F6259;
  border-radius: 4px;
  cursor: pointer;
  white-space: nowrap;
  line-height: 1.3;
  transition: background 0.15s ease, color 0.15s ease;
}

.dukrana-catalog-sort-option:hover,
.dukrana-catalog-sort-option:focus-visible {
  background: rgba(31, 98, 89, 0.08);
  outline: none;
}

.dukrana-catalog-sort-option.is-selected {
  background: #1F6259;
  color: #FAFAFA;
  font-weight: 500;
}

.dukrana-catalog-sort-option.is-selected:hover,
.dukrana-catalog-sort-option.is-selected:focus-visible {
  background: #133D37;
  color: #FAFAFA;
}

.dukrana-catalog-search {
  display: inline-flex;
  align-items: stretch;
  gap: 8px;
  flex: 0 0 auto;
}

.dukrana-catalog-search-field {
  position: relative;
  display: inline-flex;
  align-items: center;
  background: #FAFAFA;
  border: 1px solid rgba(31, 98, 89, 0.2);
  border-radius: 4px;
  padding: 0 14px 0 40px;
  min-width: 280px;
}

.dukrana-catalog-search-icon {
  position: absolute;
  left: 14px;
  pointer-events: none;
}

.dukrana-catalog-search-field input[type="search"] {
  border: 0;
  outline: none;
  background: transparent;
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  color: #133D37;
  padding: 12px 0;
  width: 100%;
}

.dukrana-catalog-search-submit {
  padding: 12px 22px;
  background: #1F6259;
  color: #FAFAFA;
  border: 0;
  border-radius: 4px;
  font-family: "Epilogue", sans-serif;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.2s;
}

.dukrana-catalog-search-submit:hover {
  background: #133D37;
}

/* --- Pagination ---------------------------------------------------------- */
.dukrana-catalog-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  padding-top: 16px;
}

.dukrana-page-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 4px;
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  color: #1F6259;
  text-decoration: none;
  transition: background-color 0.2s, color 0.2s;
}

.dukrana-page-link:hover {
  background-color: #F3F1EF;
}

.dukrana-page-link.is-active {
  background-color: #1F6259;
  color: #FAFAFA;
}

.dukrana-page-next:hover svg path {
  stroke: #F4A261;
}

/* --- Catalog FAQ --------------------------------------------------------- */
.dukrana-catalog-faq {
  background-color: #F3F1EF;
  border-radius: 8px;
  padding: 60px;
}

.dukrana-catalog-faq-item {
  border-bottom: 1px dashed rgba(31, 98, 89, 0.2);
  padding: 30px 0;
}

.dukrana-catalog-faq-item:first-child {
  padding-top: 0;
}

.dukrana-catalog-faq-item:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.dukrana-catalog-faq-item>summary {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  cursor: pointer;
}

.dukrana-catalog-faq-item>summary::-webkit-details-marker {
  display: none;
}

.dukrana-catalog-faq-q {
  font-family: "Epilogue", sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 1.2;
  letter-spacing: -0.5px;
  color: #133D37;
}

.dukrana-catalog-faq-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 15px;
  height: 15px;
  flex-shrink: 0;
}

.dukrana-catalog-faq-toggle .dukrana-catalog-faq-minus {
  display: none;
}

.dukrana-catalog-faq-item[open] .dukrana-catalog-faq-toggle .dukrana-catalog-faq-plus {
  display: none;
}

.dukrana-catalog-faq-item[open] .dukrana-catalog-faq-toggle .dukrana-catalog-faq-minus {
  display: block;
}

.dukrana-catalog-faq-answer {
  padding-top: 16px;
  max-width: 1100px;
}

.dukrana-catalog-faq-answer p {
  font-family: "Epilogue", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: #133D37;
  margin: 0;
}

/* --- Catalog responsive -------------------------------------------------- */
@media (max-width: 1100px) {
  .dukrana-catalog-layout {
    grid-template-columns: 260px 1fr;
  }

  .dukrana-catalog-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 900px) {
  .dukrana-catalog-topbar {
    flex-direction: column;
  }

  .dukrana-catalog-search {
    display: flex;
    width: 100%;
    flex: 1 1 auto;
    min-width: 0;
    box-sizing: border-box;
  }

  .dukrana-catalog-search-field {
    flex: 1 1 auto;
    min-width: 0;
  }

  .dukrana-catalog-search-submit {
    flex: 0 0 auto;
    padding: 12px 18px;
  }

  .dukrana-catalog-title-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }

  .dukrana-catalog-title {
    font-size: 38px;
    line-height: 1.2;
  }
}

/* --- Mobile filters trigger / drawer ------------------------------------- */
.dukrana-mobile-filters-bar {
  display: none;
}

.dukrana-mobile-filters-trigger {
  display: none;
}

.dukrana-mobile-filters-close {
  display: none;
}

.dukrana-mobile-filters-backdrop {
  display: none;
}

.dukrana-mobile-filters-footer {
  display: none;
}

@media (max-width: 768px) {
  .dukrana-catalog-layout {
    grid-template-columns: 1fr;
    position: relative;
  }

  .dukrana-catalog-grid {
    grid-template-columns: 1fr;
  }

  .dukrana-catalog-faq {
    padding: 24px;
  }

  .dukrana-catalog-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    scroll-snap-type: x proximity;
    scroll-padding-left: 6px;
    -webkit-mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 32px), transparent 100%);
    mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 32px), transparent 100%);
  }

  .dukrana-catalog-tabs::-webkit-scrollbar {
    display: none;
  }

  .dukrana-catalog-tab {
    flex-shrink: 0;
    scroll-snap-align: start;
  }

  /* Filtrai moved up into the meta row on mobile; the separate bar is hidden. */
  .dukrana-mobile-filters-bar {
    display: none;
  }

  /* Meta row on mobile: count + sort each full-width, then Filtrai + Ieškoti share a row; search panel opens below. */
  .dukrana-catalog-meta {
    flex-wrap: wrap;
    gap: 12px;
  }
  .dukrana-catalog-count {
    order: 1;
    flex: 1 1 100%;
  }
  .dukrana-catalog-meta .dukrana-catalog-sort {
    order: 2;
    flex: 1 1 100%;
  }
  .dukrana-catalog-meta-filters {
    order: 3;
    flex: 1 1 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 18px;
    background: #1F6259;
    color: #FAFAFA;
    border: 0;
    border-radius: 6px;
    font-family: "Epilogue", sans-serif;
    font-weight: 500;
    font-size: 14px;
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
  }
  .dukrana-catalog-meta-filters:hover {
    background: #133D37;
  }
  .dukrana-catalog-meta-filters-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    background: #F4A261;
    color: #1F6259;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
  }
  .dukrana-catalog-meta .dukrana-catalog-search-toggle {
    order: 4;
    flex: 1 1 0;
    justify-content: center;
    margin: 0;
  }

  .dukrana-mobile-filters-trigger {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    align-self: flex-start;
    padding: 10px 18px;
    background: #1F6259;
    color: #FAFAFA;
    border: 0;
    border-radius: 6px;
    font-family: "Epilogue", sans-serif;
    font-weight: 500;
    font-size: 14px;
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
  }

  .dukrana-mobile-filters-trigger:hover {
    background: #133D37;
    box-shadow: 0 4px 12px rgba(19, 61, 55, 0.25);
    transform: translateY(-1px);
  }

  .dukrana-mobile-filters-trigger:active {
    transform: translateY(0);
    box-shadow: 0 2px 6px rgba(19, 61, 55, 0.2);
  }

  .dukrana-mobile-filters-clear {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 10px 14px;
    color: #1F6259;
    background: transparent;
    border: 1px solid rgba(31, 98, 89, 0.4);
    border-radius: 6px;
    font-family: "Epilogue", sans-serif;
    font-weight: 500;
    font-size: 14px;
    text-decoration: none;
    transition: background 0.15s ease, border-color 0.15s ease;
  }

  .dukrana-mobile-filters-clear:hover,
  .dukrana-mobile-filters-clear:active {
    background: rgba(31, 98, 89, 0.06);
    border-color: #1F6259;
  }

  .dukrana-mobile-filters-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    background: #F4A261;
    color: #1F6259;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
  }

  .dukrana-catalog-sidebar {
    position: fixed;
    inset: auto 0 0 0;
    z-index: 1001;
    max-height: 85vh;
    overflow-y: auto;
    background: #FAFAFA;
    border-radius: 16px 16px 0 0;
    box-shadow: 0 -8px 24px rgba(19, 61, 55, 0.18);
    padding: 18px 18px 0;
    transform: translateY(100%);
    transition: transform 0.25s ease;
    scrollbar-width: none;
  }

  .dukrana-catalog-sidebar::-webkit-scrollbar {
    display: none;
  }

  .dukrana-catalog-sidebar.is-open {
    transform: translateY(0);
  }

  .dukrana-catalog-sidebar .dukrana-filter-card {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }

  .dukrana-mobile-filters-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: flex-end;
    box-sizing: border-box;
    width: 44px;
    height: 44px;
    padding: 0;
    flex: 0 0 44px;
    background: transparent;
    color: var(--wp--preset--color--dark-green);
    border: 0;
    border-radius: 8px;
    cursor: pointer;
    transition: background 0.2s ease;
  }

  .dukrana-mobile-filters-close:hover {
    background: rgba(31, 98, 89, 0.08);
  }

  .dukrana-mobile-filters-close svg {
    width: 24px;
    height: 24px;
  }

  /* Stack the filter card header on mobile: title on its own line, the larger clear button below. */
  .dukrana-filter-card-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .dukrana-filter-clear {
    font-size: 14px;
    gap: 6px;
  }

  .dukrana-filter-clear svg {
    width: 14px;
    height: 14px;
  }

  .dukrana-mobile-filters-backdrop {
    display: block;
    position: fixed;
    inset: 0;
    z-index: 1000;
    background: rgba(19, 61, 55, 0.45);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
  }

  .dukrana-mobile-filters-backdrop.is-open {
    opacity: 1;
    pointer-events: auto;
  }

  .dukrana-mobile-filters-footer {
    display: flex;
    position: sticky;
    bottom: 0;
    /* Sheet bottom padding is 0, so bottom:0 pins the bar flush to the drawer's bottom edge. */
    margin: 16px -18px 0;
    padding: 14px 18px calc(14px + env(safe-area-inset-bottom, 0px));
    /* Opaque bg matches the drawer so it masks the list scrolling behind, with no border/shadow so only the button shows. */
    background: #FAFAFA;
    z-index: 3;
    /* Center the button in the bar instead of stretching it edge-to-edge. */
    justify-content: center;
  }

  .dukrana-mobile-filters-apply {
    flex: 0 1 auto;
    min-width: 240px;
    padding: 14px 40px;
    background: #1F6259;
    color: #FAFAFA;
    border: 0;
    border-radius: 6px;
    font-family: "Epilogue", sans-serif;
    font-weight: 500;
    font-size: 15px;
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
  }

  .dukrana-mobile-filters-apply:hover {
    background: #F4A261;
    color: #133D37;
    box-shadow: 0 6px 16px rgba(244, 162, 97, 0.35);
    transform: translateY(-1px);
  }

  .dukrana-mobile-filters-apply:active {
    background: #e89250;
    transform: translateY(0);
    box-shadow: 0 3px 8px rgba(244, 162, 97, 0.3);
  }

  body.dukrana-filters-open {
    overflow: hidden;
  }
}

/* PRODUCT DETAIL PAGE */

.dukrana-product-detail {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 50px;
  align-items: start;
}

/* --- Gallery ------------------------------------------------------------- */
.dukrana-product-gallery {
  position: relative;
}

.dukrana-product-gallery-stage {
  position: relative;
  width: 100%;
  height: 576px;
  border-radius: 4px;
  background-color: #FAFAFA;
  overflow: hidden;
}

.dukrana-product-gallery-slide {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.4s ease;
  pointer-events: none;
}

.dukrana-product-gallery-slide.is-active {
  opacity: 1;
  pointer-events: auto;
}

.dukrana-product-gallery-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.dukrana-product-gallery-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 43px;
  height: 43px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  cursor: pointer;
  z-index: 2;
  transition: opacity 0.2s, transform 0.2s;
}

.dukrana-product-gallery-prev {
  left: 18px;
  background-color: #FAFAFA;
  box-shadow: 0 2px 8px rgba(19, 61, 55, 0.12);
}

.dukrana-product-gallery-next {
  right: 18px;
  background-color: #1F6259;
}

.dukrana-product-gallery-nav:hover {
  transform: translateY(-50%) scale(1.04);
}

.dukrana-product-gallery-nav:disabled,
.dukrana-product-gallery-nav[disabled] {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}

.dukrana-product-gallery-nav:disabled:hover,
.dukrana-product-gallery-nav[disabled]:hover {
  transform: translateY(-50%);
}

.dukrana-product-gallery-dots {
  position: absolute;
  left: 50%;
  bottom: 20px;
  transform: translateX(-50%);
  display: inline-flex;
  align-items: center;
  gap: 8px;
  z-index: 2;
}

.dukrana-product-gallery-dot {
  width: 8px;
  height: 8px;
  border-radius: 4px;
  background-color: #1F6259;
  opacity: 0.2;
  border: 0;
  padding: 0;
  cursor: pointer;
  transition: opacity 0.2s;
}

.dukrana-product-gallery-dot.is-active {
  opacity: 1;
}

/* --- Info column --------------------------------------------------------- */
.dukrana-product-info {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding-top: 40px;
}

.dukrana-product-info-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.dukrana-product-info-badge {
  font-family: "Epilogue", sans-serif;
  font-weight: 700;
  font-size: 14px;
  line-height: 15px;
  letter-spacing: 0.6172px;
  text-transform: uppercase;
  color: #133D37;
}

.dukrana-product-info-brand {
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  line-height: 20px;
  color: #1F6259;
}

.dukrana-product-info-brand strong {
  font-weight: 600;
  color: #133D37;
}

.dukrana-product-info-heading {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.dukrana-product-info-title {
  font-family: "Epilogue", sans-serif;
  font-weight: 400;
  font-size: 50px;
  line-height: 60px;
  letter-spacing: -0.72px;
  color: #1F6259;
  margin: 0;
}

.dukrana-product-info-code {
  font-family: "Inter", sans-serif;
  font-size: 12px;
  line-height: 16px;
  color: #1F6259;
  margin: 0;
}

.dukrana-product-info-desc {
  font-family: "Epilogue", sans-serif;
  font-size: 16px;
  line-height: 22px;
  letter-spacing: -0.16px;
  color: #133D37;
  opacity: 0.8;
  max-width: 558px;
}

.dukrana-product-info-desc p {
  margin: 0 0 12px;
}

.dukrana-product-info-desc p:last-child {
  margin-bottom: 0;
}

.dukrana-product-info-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.dukrana-product-info-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 28px;
  padding: 0 16px;
  background-color: #1F6259;
  color: #FAFAFA;
  border-radius: 1188px;
  font-family: "Epilogue", sans-serif;
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease;
}

a.dukrana-product-info-chip:hover,
a.dukrana-product-info-chip:focus-visible {
  background-color: #133D37;
  color: #FAFAFA;
  outline: none;
}

/* --- Spec table ---------------------------------------------------------- */
.dukrana-product-specs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px 16px;
  background-color: #F3F1EF;
  border-radius: 14px;
  padding: 24px;
  margin: 0;
}

.dukrana-product-specs-cell {
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.dukrana-product-specs-cell dt {
  font-family: "Epilogue", sans-serif;
  font-weight: 700;
  font-size: 10px;
  line-height: 15px;
  letter-spacing: 0.6172px;
  text-transform: uppercase;
  color: #1F6259;
  opacity: 0.8;
  margin: 0;
}

.dukrana-product-specs-cell dd {
  font-family: "Epilogue", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: -0.16px;
  color: #133D37;
  margin: 0;
}

/* --- Buy row (qty + add to quote + secondary CTA) ------------------------ */
.dukrana-product-buy {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.dukrana-product-buy-row {
  display: flex;
  gap: 16px;
  align-items: stretch;
}

.dukrana-product-qty {
  display: inline-flex;
  align-items: center;
  border: 1px solid #1F6259;
  border-radius: 4px;
  padding: 4px 8px;
  width: 127px;
  flex-shrink: 0;
  background: #FAFAFA;
}

.dukrana-product-qty-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  background: transparent;
  border: 0;
  font-size: 18px;
  color: #1F6259;
  cursor: pointer;
  font-family: "Epilogue", sans-serif;
  line-height: 1;
}

.dukrana-product-qty-input {
  flex: 1;
  border: 0;
  outline: none;
  background: transparent;
  text-align: center;
  font-family: "Epilogue", sans-serif;
  font-size: 16px;
  line-height: 22px;
  color: #1F6259;
  -moz-appearance: textfield;
  appearance: textfield;
}

.dukrana-product-qty-input::-webkit-outer-spin-button,
.dukrana-product-qty-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.dukrana-product-add {
  flex: 1 1 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 17px 24px 16px;
  background-color: #F4A261;
  color: #133D37;
  border: 0;
  border-radius: 4px;
  font-family: "Epilogue", sans-serif;
  font-weight: 500;
  font-size: 13.5px;
  letter-spacing: -0.04px;
  cursor: pointer;
  transition: background-color 0.2s;
}

.dukrana-product-add:hover {
  background-color: #e89250;
}

.dukrana-product-add {
  position: relative;
  overflow: hidden;
}

.dukrana-product-add .dukrana-cta-text-add,
.dukrana-product-add .dukrana-cta-text-added,
.dukrana-product-add .dukrana-cta-text-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: opacity 0.28s ease, transform 0.28s ease;
  will-change: opacity, transform;
}

.dukrana-product-add .dukrana-cta-text-added,
.dukrana-product-add .dukrana-cta-text-remove {
  position: absolute;
  inset: 0;
  padding: inherit;
  opacity: 0;
  transform: translateY(6px);
  pointer-events: none;
}

.dukrana-product-add.is-added .dukrana-cta-text-add {
  opacity: 0;
  transform: translateY(-6px);
}

.dukrana-product-add.is-added .dukrana-cta-text-added {
  opacity: 1;
  transform: translateY(0);
}

.dukrana-product-add.is-added.is-settled .dukrana-cta-text-added {
  opacity: 0;
  transform: translateY(-6px);
}

.dukrana-product-add.is-added.is-settled .dukrana-cta-text-remove {
  opacity: 1;
  transform: translateY(0);
}

.dukrana-product-quote {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  padding: 17px 24px 16px;
  border: 1px solid #1F6259;
  background: #FAFAFA;
  color: #1F6259;
  border-radius: 4px;
  font-family: "Epilogue", sans-serif;
  font-weight: 500;
  font-size: 13.5px;
  letter-spacing: -0.04px;
  text-decoration: none;
  transition: background-color 0.2s, color 0.2s;
}

.dukrana-product-quote:hover {
  background: #1F6259;
  color: #FAFAFA;
}

/* --- Footnote row -------------------------------------------------------- */
.dukrana-product-info-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.dukrana-product-info-promise {
  font-family: "Epilogue", sans-serif;
  font-size: 12px;
  line-height: 16px;
  color: #1F6259;
}

.dukrana-product-info-phone {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-family: "Epilogue", sans-serif;
  font-weight: 500;
  font-size: 14px;
  line-height: 16px;
  color: #1F6259;
  text-decoration: none;
}

.dukrana-product-info-phone:hover {
  color: #133D37;
}

/* PRODUCT TABS SECTION */

.dukrana-product-tabs {
  display: grid;
  grid-template-columns: 300px 1fr;
  grid-template-areas:
    "side content"
    "help content";
  grid-template-rows: auto 1fr;
  gap: 25px;
  align-items: start;
}

.dukrana-product-tabs-side {
  grid-area: side;
}

.dukrana-product-tabs-content {
  grid-area: content;
}

.dukrana-filter-help.dukrana-product-help {
  grid-area: help;
}

.dukrana-product-tabs-side {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.dukrana-product-tabs-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 8px;
  background-color: #F3F1EF;
  border-radius: 8px;
  backdrop-filter: blur(18.75px);
  -webkit-backdrop-filter: blur(18.75px);
}

.dukrana-product-tab {
  width: 100%;
  padding: 18px 24px;
  background-color: #FAFAFA;
  border: 0;
  border-radius: 4px;
  font-family: "Epilogue", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.16px;
  color: #1F6259;
  cursor: pointer;
  text-align: center;
  transition: background-color 0.2s, color 0.2s;
}

.dukrana-product-tab:hover {
  background-color: #ECE7E2;
}

.dukrana-product-tab.is-active {
  background-color: #1F6259;
  color: #FAFAFA;
}

.dukrana-product-tabs-content {
  background-color: #F3F1EF;
  border-radius: 8px;
  padding: 40px;
}

.dukrana-product-tab-panel[hidden] {
  display: none;
}

.dukrana-product-prose p {
  font-family: "Epilogue", sans-serif;
  font-size: 16px;
  line-height: 26px;
  color: rgba(14, 42, 37, 0.8);
  margin: 0 0 16px;
}

.dukrana-product-prose p:last-child {
  margin-bottom: 0;
}

.dukrana-product-prose ul,
.dukrana-product-prose ol {
  font-family: "Epilogue", sans-serif;
  font-size: 16px;
  line-height: 26px;
  color: rgba(14, 42, 37, 0.8);
  margin: 0 0 16px;
  padding-left: 24px;
}

.dukrana-product-prose ul li,
.dukrana-product-prose ol li {
  font-family: "Epilogue", sans-serif;
  font-size: 16px;
  line-height: 26px;
  color: rgba(14, 42, 37, 0.8);
  margin: 0 0 6px;
}

.dukrana-product-prose ul li:last-child,
.dukrana-product-prose ol li:last-child {
  margin-bottom: 0;
}

.dukrana-product-prose h2,
.dukrana-product-prose h3,
.dukrana-product-prose h4 {
  font-family: "Epilogue", sans-serif;
  color: #133D37;
  margin: 24px 0 12px;
  font-weight: 600;
  letter-spacing: -0.01em;
}

.dukrana-product-prose h2 { font-size: 22px; line-height: 1.3; }
.dukrana-product-prose h3 { font-size: 18px; line-height: 1.35; }
.dukrana-product-prose h4 { font-size: 16px; line-height: 1.4; }

.dukrana-product-prose h2:first-child,
.dukrana-product-prose h3:first-child,
.dukrana-product-prose h4:first-child {
  margin-top: 0;
}

.dukrana-product-prose strong {
  font-weight: 600;
  color: #133D37;
}

.dukrana-product-prose a {
  color: #1F6259;
  text-decoration: underline;
}

.dukrana-product-prose-empty {
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  line-height: 20px;
  color: rgba(14, 42, 37, 0.6);
  margin: 0;
}

.dukrana-product-features {
  list-style: none;
  margin: 24px 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.dukrana-product-feature {
  display: flex;
  align-items: flex-start;
  gap: 8px;
}

.dukrana-product-feature-icon {
  flex-shrink: 0;
  display: inline-flex;
  width: 24px;
  height: 24px;
  align-items: center;
  justify-content: center;
}

.dukrana-product-feature p {
  margin: 0;
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  line-height: 20px;
  color: #1F6259;
}

.dukrana-product-feature p strong {
  font-weight: 600;
}

/* Spec table — dashed rounded frame + dashed row dividers (Figma 318-6150). border-collapse:separate keeps the rounded border; cell border-bottoms form dividers, overflow:hidden clips them. */
.dukrana-product-specs-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px dashed rgba(31, 98, 89, 0.3);
  border-radius: 6px;
  overflow: hidden;
}

.dukrana-product-specs-table th,
.dukrana-product-specs-table td {
  padding: 16px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px dashed rgba(31, 98, 89, 0.3);
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

.dukrana-product-specs-table th {
  color: #1F6259;
  width: 36%;
}

.dukrana-product-specs-table td {
  color: #133D37;
}

.dukrana-product-specs-table tr:last-child th,
.dukrana-product-specs-table tr:last-child td {
  border-bottom: 0;
}

@media (max-width: 768px) {
  .dukrana-product-specs-table th,
  .dukrana-product-specs-table td {
    padding: 14px;
    font-size: 13px;
  }
}

/* Documentation tab — 2-col grid of file cards (Figma 318-6460): white card, file icon, title + subtitle, download icon. */
.dukrana-product-docs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.dukrana-product-doc-card {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #FFFFFF;
  border-radius: 10px;
  padding: 14px 16px;
  text-decoration: none;
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.dukrana-product-doc-card:hover {
  box-shadow: 0 6px 20px rgba(19, 61, 55, 0.08);
  transform: translateY(-1px);
}

.dukrana-product-doc-icon {
  flex-shrink: 0;
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #F3F1EF;
  border-radius: 8px;
}

.dukrana-product-doc-icon svg {
  width: 20px;
  height: 20px;
}

.dukrana-product-doc-text {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
}

.dukrana-product-doc-title {
  font-family: "Epilogue", sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  color: #133D37;
}

.dukrana-product-doc-sub {
  font-family: "Epilogue", sans-serif;
  font-size: 12.5px;
  font-weight: 400;
  line-height: 1.4;
  color: rgba(31, 98, 89, 0.65);
}

.dukrana-product-doc-dl {
  flex-shrink: 0;
  margin-left: auto;
  display: flex;
  align-items: center;
}

.dukrana-product-doc-dl svg {
  width: 18px;
  height: 18px;
}

.dukrana-product-doc-card.is-missing {
  opacity: 0.6;
  pointer-events: none;
}

@media (max-width: 768px) {
  .dukrana-product-docs {
    grid-template-columns: 1fr;
  }
}

/* --- Responsive ---------------------------------------------------------- */
@media (max-width: 1100px) {
  .dukrana-product-detail {
    grid-template-columns: 1fr;
  }

  .dukrana-product-info {
    padding-top: 0;
  }

  .dukrana-product-tabs {
    grid-template-columns: 1fr;
    grid-template-areas:
      "side"
      "content"
      "help";
    grid-template-rows: auto auto auto;
  }
}

@media (max-width: 768px) {
  .dukrana-product-info-title {
    font-size: 38px;
    line-height: 1.2;
  }

  .dukrana-product-gallery-stage {
    height: 360px;
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -ms-overflow-style: none;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    touch-action: pan-x pan-y;
  }

  .dukrana-product-gallery-stage::-webkit-scrollbar {
    display: none;
  }

  .dukrana-product-gallery-slide {
    position: relative;
    inset: auto;
    flex: 0 0 100%;
    width: 100%;
    scroll-snap-align: center;
    scroll-snap-stop: always;
    opacity: 1;
    pointer-events: auto;
    transition: none;
  }

  .dukrana-product-buy-row {
    flex-direction: row;
    align-items: stretch;
    gap: 8px;
  }

  .dukrana-product-qty {
    flex: 0 0 20%;
    width: auto;
    min-width: 0;
    padding: 4px;
    box-sizing: border-box;
  }

  .dukrana-product-qty-btn {
    width: 28px;
    flex-shrink: 0;
  }

  .dukrana-product-qty-input {
    min-width: 0;
    font-size: 15px;
  }

  .dukrana-product-add {
    flex: 1 1 80%;
    min-width: 0;
  }

  .dukrana-product-tabs-content {
    padding: 24px;
  }
}

/* QUOTE REQUEST PAGE (/uzklausa/) */

.dukrana-quote-section {
  width: 100%;
}

.dukrana-quote-page {
  background: #1F6259;
  color: #FAFAFA;
  font-family: 'Epilogue', sans-serif;
  width: 100%;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.dukrana-quote-container {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 597px;
  gap: 96px;
  padding: 180px var(--page-padding-x) 48px;
  align-items: start;
  box-sizing: border-box;
}

.dukrana-quote-left {
  display: flex;
  flex-direction: column;
  gap: 30px;
  min-width: 0;
}

.dukrana-quote-hero {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.dukrana-quote-heading {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 50px;
  line-height: 60px;
  letter-spacing: -0.014em;
  color: #FAFAFA;
  margin: 0;
}

.dukrana-quote-intro {
  font-size: 16px;
  line-height: 22px;
  letter-spacing: -0.01em;
  color: #F3F1EF;
  opacity: 0.8;
  margin: 0;
  max-width: 485px;
}

/* Product cards in the list */
.dukrana-quote-list {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.dukrana-quote-item {
  position: relative;
  background: #F3F1EF;
  border-radius: 8px;
  padding: 8px;
  display: flex;
  gap: 8px;
  align-items: center;
}

.dukrana-quote-item-thumb {
  width: 123px;
  height: 102px;
  border-radius: 2px;
  overflow: hidden;
  flex-shrink: 0;
  background: #FAFAFA;
}

.dukrana-quote-item-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.dukrana-quote-item-body {
  flex: 1;
  min-width: 0;
  padding: 8px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.dukrana-quote-item-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.dukrana-quote-item-badge {
  font-family: 'Epilogue', sans-serif;
  font-weight: 700;
  font-size: 10px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #133D37;
}

.dukrana-quote-item-brand {
  font-family: 'Epilogue', sans-serif;
  font-size: 12px;
  color: #1F6259;
}

.dukrana-quote-item-brand strong {
  color: #133D37;
  font-weight: 500;
}

.dukrana-quote-item-title {
  font-family: 'Epilogue', sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.25;
  color: #1F6259;
  margin: 0;
}

.dukrana-quote-item-title a {
  color: inherit;
  text-decoration: none;
}

.dukrana-quote-item-title a:hover {
  text-decoration: underline;
}

/* Qty stepper */
.dukrana-quote-qty {
  border: 0.5px solid #1F6259;
  border-radius: 2px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  height: 24px;
  width: 80px;
  padding: 0 6px;
  gap: 4px;
  background: transparent;
}

.dukrana-quote-qty-btn {
  background: transparent;
  border: 0;
  color: #1F6259;
  font-size: 14px;
  line-height: 1;
  width: 14px;
  height: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
}

.dukrana-quote-qty-input {
  width: 30px;
  border: 0;
  background: transparent;
  text-align: center;
  font-family: 'Epilogue', sans-serif;
  font-size: 12px;
  color: #1F6259;
  -moz-appearance: textfield;
}

.dukrana-quote-qty-input::-webkit-outer-spin-button,
.dukrana-quote-qty-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Remove (X) badge */
.dukrana-quote-item-remove {
  position: absolute;
  top: -13px;
  right: -12px;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: #FAFAFA;
  border: 1px solid rgba(31, 98, 89, 0.2);
  color: #1F6259;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  font-size: 18px;
  line-height: 1;
  transition: background 150ms ease, transform 150ms ease;
}

.dukrana-quote-item-remove:hover {
  background: #1F6259;
  color: #FAFAFA;
  transform: scale(1.05);
}

/* Empty state */
.dukrana-quote-empty {
  background: rgba(252, 252, 247, 0.1);
  backdrop-filter: blur(18px);
  border-radius: 8px;
  padding: 40px;
  text-align: center;
  color: #FAFAFA;
}

.dukrana-quote-empty p {
  font-size: 16px;
  margin: 0 0 16px;
  opacity: 0.85;
}

.dukrana-quote-empty-cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #FAFAFA;
  color: #1F6259;
  padding: 12px 24px;
  border-radius: 4px;
  text-decoration: none;
  font-weight: 500;
  font-size: 13.5px;
  letter-spacing: -0.003em;
}

.dukrana-quote-empty-cta:hover {
  background: #F3F1EF;
}

/* Steps card */
.dukrana-quote-steps-card {
  background: rgba(252, 252, 247, 0.1);
  backdrop-filter: blur(18px);
  border-radius: 8px;
  padding: 8px;
  box-sizing: border-box;
  width: 100%;
}

.dukrana-quote-steps-card-inner {
  background: #FAFAFA;
  border-radius: 8px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.dukrana-quote-steps-title {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 24px;
  line-height: 30px;
  letter-spacing: -0.02em;
  color: #1F6259;
  margin: 0;
}

.dukrana-quote-steps-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 24px;
  position: relative;
}

.dukrana-quote-step {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  min-height: 56px;
}

.dukrana-quote-step-num {
  width: 24px;
  height: 24px;
  background: #1F6259;
  color: #FAFAFA;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-family: 'Epilogue', sans-serif;
  font-weight: 600;
  font-size: 12px;
  line-height: 1;
  text-align: center;
  padding: 2px 0 0 0;
  font-variant-numeric: tabular-nums;
  position: relative;
  z-index: 1;
  box-sizing: border-box;
}

/* Dashed connector drawn from the circle itself so it stays aligned regardless of how many text lines the step has. */
.dukrana-quote-step:not(:last-child) .dukrana-quote-step-num::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 100%;
  margin-left: -0.5px;
  margin-top: 6px;
  width: 1px;
  height: 44px;
  border-left: 1px dashed rgba(31, 98, 89, 0.45);
}

.dukrana-quote-step-text {
  font-family: 'DM Sans', 'Epilogue', sans-serif;
  font-weight: 600;
  font-size: 16px;
  color: #1F6259;
}

.dukrana-quote-steps-pill {
  align-self: flex-start;
  background: #F4A261;
  border-radius: 999px;
  padding: 8px 16px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.dukrana-quote-steps-pill-dot {
  width: 10px;
  height: 10px;
  background: #133D37;
  border-radius: 999px;
  animation: badgePulse 2s ease-in-out infinite;
}

.dukrana-quote-steps-pill span:last-child {
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 14px;
  color: #133D37;
}

/* Form card */
.dukrana-quote-right {
  min-width: 0;
}

.dukrana-quote-form-shell {
  background: rgba(252, 252, 247, 0.1);
  backdrop-filter: blur(18px);
  border-radius: 8px;
  padding: 8px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

/* Form success state (contact + quote) — overlay inside shell, form keeps its size */
.dukrana-contact-form-shell,
.dukrana-quote-form-shell {
  position: relative;
}

.dukrana-form-success[hidden] {
  display: none;
}

.dukrana-form-success {
  position: absolute;
  inset: 8px;
  background: #FAFAFA;
  border-radius: 4px;
  padding: 48px 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 18px;
  color: #133D37;
  box-sizing: border-box;
  z-index: 2;
  animation: dukrana-form-success-in 0.32s cubic-bezier(0.2, 0.7, 0.3, 1) both;
}

@keyframes dukrana-form-success-in {
  0%   { opacity: 0; transform: scale(0.985); }
  100% { opacity: 1; transform: scale(1); }
}

.dukrana-form-success-icon {
  width: 76px;
  height: 76px;
  border-radius: 50%;
  background: #133D37;
  color: #FAFAFA;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 24px rgba(19, 61, 55, 0.35);
  animation: dukrana-form-success-icon 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) 0.08s both;
}

@keyframes dukrana-form-success-icon {
  0%   { opacity: 0; transform: scale(0.6); }
  100% { opacity: 1; transform: scale(1); }
}

.dukrana-form-success-icon svg {
  display: block;
  width: 38px;
  height: 38px;
}

.dukrana-form-success .dukrana-form-success-title {
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 26px;
  line-height: 1.2;
  letter-spacing: -0.4px;
  margin: 0;
  max-width: 420px;
  color: #133D37;
}

.dukrana-form-success .dukrana-form-success-text {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 15px;
  line-height: 22px;
  margin: 0;
  max-width: 380px;
  color: #1F6259;
  opacity: 0.85;
}

.dukrana-contact-form-shell.is-submitted .dukrana-contact-form,
.dukrana-quote-form-shell.is-submitted .dukrana-quote-form {
  visibility: hidden;
}

@media (max-width: 600px) {
  .dukrana-form-success {
    padding: 36px 20px;
    gap: 14px;
  }

  .dukrana-form-success-icon {
    width: 64px;
    height: 64px;
  }

  .dukrana-form-success-icon svg {
    width: 32px;
    height: 32px;
  }

  .dukrana-form-success-title {
    font-size: 22px;
  }
}

.dukrana-quote-form {
  background: #FAFAFA;
  border-radius: 4px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 29px;
  width: 581px;
  max-width: 100%;
  box-sizing: border-box;
}

.dukrana-quote-form-title {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 32px;
  line-height: 42px;
  letter-spacing: -0.026em;
  color: #1F6259;
  margin: 0;
}

.dukrana-quote-form-fields {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.dukrana-quote-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.dukrana-quote-label {
  font-family: 'Epilogue', sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 20px;
  color: #133D37;
}

.dukrana-quote-optional {
  font-weight: 400;
  color: rgba(19, 61, 55, 0.6);
}

.dukrana-quote-input {
  width: 100%;
  padding: 16px;
  border: 1px solid rgba(31, 98, 89, 0.2);
  border-radius: 4px;
  background: #FAFAFA;
  font-family: 'Epilogue', sans-serif;
  font-size: 14px;
  line-height: 20px;
  color: #0E2A25;
  outline: none;
  transition: border-color 150ms ease;
  box-sizing: border-box;
}

.dukrana-quote-input:focus {
  border-color: #1F6259;
}

.dukrana-quote-input::placeholder {
  color: rgba(14, 42, 37, 0.5);
}

.dukrana-quote-textarea {
  resize: vertical;
  min-height: 112px;
}

/* Custom checkboxes */
.dukrana-quote-checklabel {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  user-select: none;
  padding-left: 0;
}

.dukrana-quote-checklabel input {
  position: absolute;
  opacity: 0;
  width: 16px;
  height: 16px;
  margin: 0;
  cursor: pointer;
  z-index: 1;
}

.dukrana-quote-checkbox {
  width: 16px;
  height: 16px;
  border: 1px solid #1F6259;
  border-radius: 4px;
  background: transparent;
  flex-shrink: 0;
  position: relative;
  transition: background 150ms ease, border-color 150ms ease;
}

.dukrana-quote-checklabel input:checked+.dukrana-quote-checkbox {
  background: #1F6259;
  border-color: #1F6259;
}

.dukrana-quote-checklabel input:checked+.dukrana-quote-checkbox::after {
  content: '';
  position: absolute;
  inset: 0;
  margin: auto;
  width: 4px;
  height: 8px;
  border-right: 1.5px solid #FAFAFA;
  border-bottom: 1.5px solid #FAFAFA;
  transform: translateY(-1px) rotate(45deg);
}

.dukrana-quote-checktext {
  font-family: 'Epilogue', sans-serif;
  font-size: 14px;
  line-height: 20px;
  color: rgba(19, 61, 55, 0.8);
}

.dukrana-quote-privacy-link {
  color: inherit;
  text-decoration: underline;
}

/* Form footer / submit */
.dukrana-quote-form-foot {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.dukrana-quote-form-foot .dukrana-quote-checklabel {
  align-self: flex-start;
  padding: 0;
}

.dukrana-quote-submit {
  background: #1F6259;
  color: #F3F1EF;
  border: 0;
  border-radius: 4px;
  padding: 17px 24px 16px;
  width: 100%;
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 13.5px;
  letter-spacing: -0.003em;
  cursor: pointer;
  transition: background 150ms ease;
}

.dukrana-quote-submit:hover {
  background: #133D37;
}

.dukrana-quote-submit:disabled {
  opacity: 0.6;
  cursor: wait;
}

.dukrana-quote-form-foot-note {
  font-family: 'Epilogue', sans-serif;
  font-size: 12px;
  line-height: 16px;
  color: #1F6259;
  margin: 0;
  text-align: center;
}

.dukrana-quote-form-status {
  min-height: 0;
}

.dukrana-quote-form-status:not(:empty) {
  margin-top: 8px;
  padding: 12px 16px;
  border-radius: 4px;
  font-size: 13px;
  line-height: 1.5;
}

.dukrana-quote-form-status.is-success {
  background: rgba(31, 98, 89, 0.08);
  color: #1F6259;
  border: 1px solid rgba(31, 98, 89, 0.3);
}

.dukrana-quote-form-status.is-error {
  background: rgba(216, 76, 61, 0.08);
  color: #b1402f;
  border: 1px solid rgba(216, 76, 61, 0.4);
}

/* Footer */
.dukrana-quote-footer {
  display: none;
  border-top: 1px dashed rgba(234, 236, 228, 0.2);
  padding: 50px var(--page-padding-x);
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  box-sizing: border-box;
}

.dukrana-quote-footer-label {
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: -0.009em;
  color: #F3F1EF;
}

.dukrana-quote-footer-contacts {
  display: flex;
  gap: 16px;
  align-items: center;
}

.dukrana-quote-footer-link {
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 13.5px;
  letter-spacing: -0.012em;
  color: #FAFAFA;
  text-decoration: none;
  padding: 8px 16px;
  border-radius: 16px;
  transition: background 150ms ease;
}

.dukrana-quote-footer-link:hover {
  background: rgba(252, 252, 247, 0.1);
}

@media (max-width: 1100px) {
  .dukrana-quote-container {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 160px var(--page-padding-x) 48px;
  }

  .dukrana-quote-left {
    display: contents;
  }

  .dukrana-quote-hero {
    order: 1;
  }

  .dukrana-quote-list {
    order: 2;
    width: 100%;
    box-sizing: border-box;
  }

  .dukrana-quote-list .dukrana-quote-item {
    width: 100%;
    box-sizing: border-box;
  }

  .dukrana-quote-empty {
    order: 3;
    padding: 24px 16px;
  }

  .dukrana-quote-empty p {
    max-width: none;
  }

  .dukrana-quote-right {
    order: 4;
    width: 100%;
    box-sizing: border-box;
  }

  .dukrana-quote-left .dukrana-quote-steps-card {
    order: 5;
  }

  .dukrana-quote-form {
    width: 100%;
  }
}

@media (max-width: 640px) {
  .dukrana-quote-container {
    padding: 140px var(--page-padding-x) 32px;
  }

  .dukrana-quote-heading {
    font-size: 36px;
    line-height: 44px;
  }

  .dukrana-quote-form {
    padding: 24px;
  }

  .dukrana-quote-form-title {
    font-size: 24px;
    line-height: 32px;
  }

  .dukrana-quote-steps-card-inner {
    padding: 24px;
  }

  .dukrana-quote-footer {
    flex-direction: column;
    gap: 16px;
    text-align: center;
    padding: 32px 24px;
  }

  .dukrana-quote-footer-contacts {
    flex-direction: column;
    gap: 8px;
  }

  .dukrana-quote-item {
    flex-direction: column;
    align-items: stretch;
  }

  .dukrana-quote-item-thumb {
    width: 100%;
    height: 140px;
  }
}

@media (max-width: 480px) {
  .dukrana-quote-container {
    padding: 120px var(--page-padding-x) 32px;
  }
}

/* About Us page (/apie-mus/) */
.dukrana-about-page {
  width: 100%;
  background: #F3F1EF;
}

.wp-block-group.alignfull.dukrana-about-page {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.dukrana-about-page>*,
.dukrana-about-page [class*="wp-block-acf-about-"] {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* ---- Hero: full-width 50/50 split, video left + panel right ---- */
.dukrana-about-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  min-height: 100vh;
  background: #1F6259;
  overflow: hidden;
}

.dukrana-about-hero-media {
  position: relative;
  overflow: hidden;
  background: #0E2B27;
}

.dukrana-about-hero-video,
.dukrana-about-hero-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.dukrana-about-hero-placeholder {
  position: absolute;
  inset: 0;
  background: #0E2B27;
}

.dukrana-about-hero-media-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.25);
  pointer-events: none;
}

.dukrana-about-hero-scroll {
  position: absolute;
  left: 40px;
  bottom: 64px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #FAFAFA;
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  text-decoration: none;
  transition: transform 150ms ease;
}

.dukrana-about-hero-scroll:hover {
  transform: translateY(-1px);
  color: #FAFAFA;
}

.dukrana-about-hero-scroll-icon {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: rgba(250, 250, 250, 0.15);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #FAFAFA;
}

.dukrana-about-hero-scroll-icon svg {
  width: 10px;
  height: 10px;
  transform: rotate(90deg);
}

.dukrana-about-hero-content {
  background: #F3F1EF;
  padding: 64px 32px 64px 64px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 48px;
}

.dukrana-about-hero-copy {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.dukrana-about-hero-heading {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 50px;
  line-height: 60px;
  letter-spacing: -0.0144em;
  color: #1F6259;
  margin: 0;
}

.dukrana-about-hero-intro {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 22px;
  letter-spacing: -0.01em;
  color: #133D37;
  opacity: 0.8;
  margin: 0;
  max-width: 493px;
}

.dukrana-about-hero-cta {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: 0;
  padding: 17px 24px 16px;
  background: #1F6259;
  color: #FAFAFA;
  border-radius: 4px;
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 13.5px;
  letter-spacing: -0.003em;
  text-decoration: none;
  transition: gap 0.5s ease, transform 150ms ease, background 150ms ease;
}

.dukrana-about-hero-cta:hover {
  background: #133D37;
  color: #FAFAFA;
  transform: translateY(-1px);
  gap: 8px;
}

.dukrana-about-hero-cta:hover .dukrana-btn-arrow {
  opacity: 1;
  width: 7px;
}

.dukrana-about-hero-pills {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 34px;
  align-items: center;
}

.dukrana-about-hero-pill {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: 34px;
}

.dukrana-about-hero-pill-icon {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #1F6259;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.dukrana-about-hero-pill-icon svg {
  width: 17px;
  height: 17px;
  display: block;
}

.dukrana-about-hero-pill-label {
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 12px;
  line-height: 20px;
  color: #133D37;
  white-space: nowrap;
}

/* ---- Intro (badge + heading + divider + 3 stats) ---- */
.dukrana-about-intro {
  background: #F3F1EF;
  padding: 96px var(--page-padding-x) 80px;
  scroll-margin-top: 80px;
}

.dukrana-about-intro-inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 64px;
}

.dukrana-about-intro-aside {
  flex-shrink: 0;
}

.dukrana-about-intro-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border-radius: 1188px;
  background: #F4A261;
  color: #133D37;
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 0;
}

.dukrana-about-intro-badge-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #133D37;
  animation: badgePulse 2s ease-in-out infinite;
}

.dukrana-about-intro-main {
  flex: 0 1 822px;
  max-width: 833px;
  display: flex;
  flex-direction: column;
  gap: 48px;
}

.dukrana-about-intro-copy {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.dukrana-about-intro-text {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 32px;
  line-height: 42px;
  letter-spacing: -0.026em;
  color: #1F6259;
  margin: 0;
}

.dukrana-about-intro-divider {
  height: 1px;
  background: rgba(19, 61, 55, 0.25);
  opacity: 0.6;
}

.dukrana-about-intro-stats {
  list-style: none;
  margin: 0;
  padding: 16px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.dukrana-about-intro-stat {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.dukrana-about-intro-stat-value {
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 50px;
  line-height: 1;
  letter-spacing: -0.03em;
  color: #1F6259;
}

.dukrana-about-intro-stat-label {
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: -0.009em;
  color: #133D37;
}

.dukrana-about-intro-stat-sub {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: #133D37;
  opacity: 0.8;
}

/* ---- Services (dark green, dashed list right) ---- */
.dukrana-about-services {
  position: relative;
  background: #1F6259;
  color: #FAFAFA;
  padding: 96px var(--page-padding-x);
  overflow: hidden;
}

.dukrana-about-services-inner {
  display: grid;
  grid-template-columns: 600px minmax(0, 1fr);
  gap: 100px;
  align-items: start;
  position: relative;
  z-index: 1;
}

.dukrana-about-services-left {
  padding-bottom: 88px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.dukrana-about-services-heading {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 32px;
  line-height: 42px;
  letter-spacing: -0.026em;
  color: #FAFAFA;
  margin: 0;
  text-align: left;
}

.dukrana-about-services-text {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 22px;
  letter-spacing: -0.01em;
  color: #FAFAFA;
  opacity: 0.8;
  margin: 0;
  text-align: left;
}

.dukrana-about-services-list {
  list-style: none;
  margin: 0;
  padding: 1px 0 0;
  display: flex;
  flex-direction: column;
  border-top: 1px dashed rgba(255, 255, 255, 0.6);
}

.dukrana-about-services-item {
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 32px 0 33px;
  border-bottom: 1px dashed rgba(255, 255, 255, 0.6);
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: -0.009em;
  color: #FFFFFF;
}

.dukrana-about-services-item-icon {
  flex: 0 0 auto;
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #F4A261;
}

.dukrana-about-services-item-icon svg {
  width: 24px;
  height: 24px;
  display: block;
}

.dukrana-about-services-item-text {
  flex: 1 1 auto;
}

.dukrana-about-services-ring {
  position: absolute;
  left: -236px;
  bottom: -164px;
  width: 502px;
  height: 502px;
  border-radius: 50%;
  border: 1px dashed rgba(255, 255, 255, 0.6);
  transform: rotate(22.32deg);
  pointer-events: none;
  z-index: 0;
}

/* ---- Team heading (own section) ---- */
.dukrana-about-team-head {
  background: #FAFAFA;
  padding: 96px var(--page-padding-x) 80px;
}

.dukrana-about-team-head-inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 48px;
}

.dukrana-about-team-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border-radius: 1188px;
  background: #F4A261;
  color: #133D37;
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 0;
  flex-shrink: 0;
}

.dukrana-about-team-badge-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #133D37;
  animation: badgePulse 2s ease-in-out infinite;
}

.dukrana-about-team-heading {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 38px;
  line-height: 50.4px;
  letter-spacing: -0.022em;
  color: #1F6259;
  margin: 0;
  max-width: 855px;
}

/* ---- Team cards ---- */
.dukrana-about-team {
  background: #FAFAFA;
  padding: 0 var(--page-padding-x) 96px;
}

.dukrana-about-team-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.dukrana-about-team-card {
  background: #F3F1EF;
  border-radius: 8px;
  padding: 8px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.dukrana-about-team-card-inner {
  display: flex;
  flex-direction: column;
  gap: 8px;
  text-decoration: none;
  color: inherit;
  height: 100%;
}

.dukrana-about-team-card.is-linked .dukrana-about-team-card-inner {
  transition: transform 200ms ease;
}

.dukrana-about-team-card.is-linked .dukrana-about-team-card-inner:hover {
  transform: translateY(-2px);
}

.dukrana-about-team-photo-wrap {
  position: relative;
  aspect-ratio: 1 / 1;
  border-radius: 4px;
  overflow: hidden;
  background: #FFFFFF;
}

.dukrana-about-team-photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.dukrana-about-team-linkedin {
  position: absolute;
  top: 17px;
  right: 16px;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: #F4A261;
  color: #133D37;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: transform 150ms ease;
}

.dukrana-about-team-linkedin svg {
  width: 20px;
  height: 20px;
  display: block;
}

.dukrana-about-team-linkedin:hover {
  transform: scale(1.06);
}

.dukrana-about-team-info {
  background: #FAFAFA;
  border-radius: 4px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  /* Let the white panel grow to fill the space below the square photo so short cards don't leave a gap. */
  flex: 1 1 auto;
}

.dukrana-about-team-name {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
  letter-spacing: -0.025em;
  color: #1C3A13;
}

.dukrana-about-team-divider {
  display: block;
  width: 100%;
  height: 0;
  background: transparent;
  border-top: 1px dashed rgba(28, 58, 19, 0.4);
}

.dukrana-about-team-role {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: #1C3A13;
}

/* ---- Responsive ---- */
@media (max-width: 1280px) {
  .dukrana-about-hero-content {
    padding: 48px 32px 48px 48px;
  }

  .dukrana-about-hero-heading {
    font-size: 42px;
    line-height: 52px;
  }

  .dukrana-about-hero-pills {
    gap: 20px;
    justify-content: flex-start;
    width: auto;
  }

  .dukrana-about-hero-video,
  .dukrana-about-hero-img {
    object-position: left center;
  }

  .dukrana-about-services {
    padding: 96px var(--page-padding-x);
  }

  .dukrana-about-services-inner {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 64px;
  }

  .dukrana-about-services-left {
    padding-bottom: 32px;
  }

  .dukrana-about-intro {
    padding: 56px var(--page-padding-x) 40px;
  }

  .dukrana-about-team-head {
    padding: 80px var(--page-padding-x) 60px;
  }

  .dukrana-about-team {
    padding: 0 var(--page-padding-x) 80px;
  }
}

@media (max-width: 1100px) {
  .dukrana-about-team-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dukrana-about-intro-inner {
    flex-direction: column;
    gap: 20px;
  }

  .dukrana-about-intro-main {
    flex: 0 1 auto;
    max-width: 100%;
    width: 100%;
  }

  .dukrana-about-team-head-inner {
    flex-direction: column;
    gap: 24px;
  }
}

@media (max-width: 900px) {
  .dukrana-about-hero {
    grid-template-columns: 1fr;
    height: auto;
  }

  .dukrana-about-hero-media {
    min-height: 420px;
  }

  .dukrana-about-hero-content {
    padding: 32px 24px;
    gap: 32px;
  }

  .dukrana-about-hero-copy {
    gap: 32px;
  }

  .dukrana-about-hero-heading {
    font-size: 34px;
    line-height: 42px;
  }

  .dukrana-about-hero-pills {
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: 14px;
  }

  .dukrana-about-hero-pill {
    flex-direction: row;
    align-items: center;
    height: auto;
    gap: 10px;
  }

  .dukrana-about-hero-pill-label {
    line-height: 1.3;
    white-space: normal;
  }

  .dukrana-about-hero-scroll {
    left: 24px;
    bottom: 24px;
  }

  .dukrana-about-intro {
    padding: 64px var(--page-padding-x) 32px;
  }

  .dukrana-about-intro-inner {
    gap: 32px;
  }

  .dukrana-about-intro-main {
    gap: 32px;
  }

  .dukrana-about-intro-copy {
    gap: 14px;
  }

  .dukrana-about-intro-text {
    font-size: 22px;
    line-height: 30px;
    letter-spacing: -0.02em;
  }

  .dukrana-about-intro-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    padding: 0;
  }

  .dukrana-about-intro-stat {
    gap: 6px;
    align-items: flex-start;
    text-align: left;
  }

  .dukrana-about-intro-stat-value {
    font-size: 32px;
    line-height: 1;
    font-weight: 500;
  }

  .dukrana-about-intro-stat-label {
    font-size: 13px;
    line-height: 18px;
    letter-spacing: -0.005em;
  }

  .dukrana-about-intro-stat-sub {
    font-size: 11px;
    line-height: 15px;
    opacity: 0.7;
  }

  .dukrana-about-services {
    padding: 64px var(--page-padding-x);
  }

  .dukrana-about-services-inner {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .dukrana-about-services-left {
    padding-bottom: 0;
  }

  .dukrana-about-services-heading {
    font-size: 26px;
    line-height: 36px;
    text-align: left;
  }

  .dukrana-about-services-text {
    text-align: left;
  }

  .dukrana-about-services-ring {
    display: none;
  }

  .dukrana-about-team-head {
    padding: 64px var(--page-padding-x) 48px;
  }

  .dukrana-about-team-heading {
    font-size: 26px;
    line-height: 36px;
  }

  .dukrana-about-team {
    padding: 0 var(--page-padding-x) 64px;
  }
}

@media (max-width: 640px) {
  .dukrana-about-services-item {
    font-size: 14px;
    line-height: 20px;
    gap: 16px;
    padding: 20px 0;
  }

  .dukrana-about-services-item-icon,
  .dukrana-about-services-item-icon svg {
    width: 18px;
    height: 18px;
  }

  .dukrana-about-team-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .dukrana-about-team-card {
    padding: 6px;
    gap: 6px;
  }

  .dukrana-about-team-linkedin {
    width: 34px;
    height: 34px;
    top: 10px;
    right: 10px;
  }

  .dukrana-about-team-linkedin svg {
    width: 15px;
    height: 15px;
  }

  .dukrana-about-team-info {
    padding: 16px;
    gap: 10px;
  }

  .dukrana-about-team-name {
    font-size: 16px;
    line-height: 22px;
  }

  .dukrana-about-team-role {
    font-size: 12px;
    line-height: 16px;
  }

  .dukrana-about-hero-content {
    padding: 24px 20px;
    gap: 24px;
  }

  .dukrana-about-hero-copy {
    gap: 24px;
  }

  .dukrana-about-hero-heading {
    font-size: 28px;
    line-height: 36px;
  }

  .dukrana-about-hero-intro {
    font-size: 15px;
    line-height: 22px;
  }

  .dukrana-about-hero-pills {
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: 12px;
    overflow: visible;
    margin: 0;
    padding: 0;
  }

  .dukrana-about-hero-pill {
    flex: 0 0 auto;
    flex-direction: row;
    align-items: center;
    height: auto;
    gap: 10px;
  }

  .dukrana-about-hero-pill-icon {
    width: 30px;
    height: 30px;
  }

  .dukrana-about-hero-pill-icon svg {
    width: 17px;
    height: 17px;
  }

  .dukrana-about-hero-pill-label {
    font-size: 12px;
    line-height: 1.3;
    white-space: normal;
  }

  .dukrana-about-intro {
    padding: 48px var(--page-padding-x) 24px;
  }

  .dukrana-about-intro-inner {
    gap: 24px;
  }

  .dukrana-about-intro-main {
    gap: 24px;
  }

  .dukrana-about-intro-copy {
    gap: 12px;
  }

  .dukrana-about-intro-text {
    font-size: 20px;
    line-height: 28px;
    letter-spacing: -0.018em;
  }

  .dukrana-about-intro-divider {
    display: none;
  }

  .dukrana-about-intro-stats {
    grid-template-columns: 1fr;
    gap: 20px;
    justify-items: start;
    padding: 0;
  }

  .dukrana-about-intro-stat {
    gap: 6px;
    align-items: flex-start;
    text-align: left;
  }

  .dukrana-about-intro-stat-value {
    font-size: 34px;
    line-height: 1;
  }

  .dukrana-about-intro-stat-label {
    font-size: 14px;
    line-height: 20px;
  }

  .dukrana-about-intro-stat-sub {
    font-size: 12px;
    line-height: 16px;
    opacity: 0.75;
  }
}

/* News (Naujienos) page */
.dukrana-news-page {
  background: #1f6259;
  color: #fafafa;
}

.dukrana-news-head {
  padding-top: 180px;
  padding-bottom: 48px;
}

.dukrana-news-head-inner {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
}

.dukrana-news-head-left {
  flex: 1 1 auto;
  min-width: 0;
}

.dukrana-news-heading {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 50px;
  line-height: 60px;
  letter-spacing: -0.72px;
  color: #fafafa;
  margin: 0;
}

.dukrana-news-head-right {
  flex: 0 0 379px;
  max-width: 379px;
}

.dukrana-news-intro {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 22px;
  letter-spacing: -0.16px;
  color: #fafafa;
  opacity: 0.8;
  margin: 0;
}

.dukrana-news-carousel {
  position: relative;
  padding: 0 0 96px;
  display: flex;
  flex-direction: column;
  gap: 32px;
  align-items: center;
}

.dukrana-news-carousel-viewport {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  padding: 10px 10px 24px;
}

.dukrana-news-carousel-viewport::-webkit-scrollbar {
  display: none;
}

.dukrana-news-carousel-track {
  list-style: none;
  margin: 0;
  display: flex;
  gap: 24px;
  align-items: stretch;
}

.dukrana-news-card {
  flex: 0 0 450px;
  width: 450px;
  max-width: 85vw;
  scroll-snap-align: start;
}

.dukrana-news-card-inner {
  background: rgba(252, 252, 247, 0.1);
  -webkit-backdrop-filter: blur(18.75px);
  backdrop-filter: blur(18.75px);
  border-radius: 8px;
  padding: 8px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  height: 100%;
  text-decoration: none;
  color: inherit;
}

a.dukrana-news-card-inner:hover,
a.dukrana-news-card-inner:focus,
a.dukrana-news-card-inner:focus-visible {
  text-decoration: none;
  color: inherit;
}

a.dukrana-news-card-inner:focus-visible {
  outline: 2px solid #f4a261;
  outline-offset: 2px;
}

.dukrana-news-card-media {
  position: relative;
  width: 100%;
  height: 286px;
  border-radius: 4px;
  background-color: #133d37;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  overflow: hidden;
  flex-shrink: 0;
}

.dukrana-news-card-badge {
  position: absolute;
  top: 16px;
  left: 16px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border-radius: 1188px;
  background: #f4a261;
  font-family: 'Epilogue', sans-serif;
  font-weight: 600;
  font-size: 12px;
  line-height: 1;
  color: #133d37;
  letter-spacing: 0;
}

.dukrana-news-card-badge-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #133d37;
  flex-shrink: 0;
}

.dukrana-news-card-body {
  background: #fafafa;
  border-radius: 4px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  flex: 1 1 auto;
}

.dukrana-news-card-title {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
  letter-spacing: -0.5px;
  color: #1c3a13;
  margin: 0;
}

.dukrana-news-card-divider {
  display: block;
  width: 100%;
  height: 1px;
  background: rgba(28, 58, 19, 0.2);
}

.dukrana-news-card-excerpt {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: #1c3a13;
  margin: 0;
}

.dukrana-news-card-cta {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  padding: 16px 24px;
  background: #1f6259;
  color: #fafafa;
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 13.5px;
  letter-spacing: -0.04px;
  line-height: 1;
  text-decoration: none;
  border-radius: 4px;
  transition: gap 0.5s ease, background-color 0.2s ease;
  margin-top: auto;
}

.dukrana-news-card-cta:hover,
.dukrana-news-card-cta:focus-visible,
a.dukrana-news-card-inner:hover .dukrana-news-card-cta,
a.dukrana-news-card-inner:focus-visible .dukrana-news-card-cta {
  background: #133d37;
  color: #fafafa;
  gap: 8px;
}

.dukrana-news-card-cta .dukrana-btn-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 0;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.5s ease, width 0.5s ease;
}

.dukrana-news-card-cta:hover .dukrana-btn-arrow,
.dukrana-news-card-cta:focus-visible .dukrana-btn-arrow,
a.dukrana-news-card-inner:hover .dukrana-news-card-cta .dukrana-btn-arrow,
a.dukrana-news-card-inner:focus-visible .dukrana-news-card-cta .dukrana-btn-arrow {
  opacity: 1;
  width: 7px;
}

/* Shared carousel nav wrapper: flex-end, consistent gap; right edge aligns to the page-padding token. */
.dukrana-carousel-nav,
.dukrana-industries-nav,
.dukrana-news-nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10.862px;
  margin-top: 32px;
}

.dukrana-news-nav-btn {
  width: 43.446px;
  height: 43.446px;
  border-radius: 50%;
  border: 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  -webkit-backdrop-filter: blur(8.146px);
  backdrop-filter: blur(8.146px);
  transition: background-color 0.2s ease, transform 0.2s ease;
}

.dukrana-news-nav-btn.is-prev {
  background: rgba(255, 255, 255, 0.2);
  color: #fafafa;
}

.dukrana-news-nav-btn.is-next {
  background: #f3f1ef;
  color: #1f6259;
}

.dukrana-news-nav-btn.is-prev:hover {
  background: rgba(255, 255, 255, 0.3);
}

.dukrana-news-nav-btn.is-next:hover {
  background: #fafafa;
}

.dukrana-news-nav-btn[disabled] {
  opacity: 0.4;
  cursor: not-allowed;
}

.dukrana-news-nav-btn.is-prev .dukrana-news-nav-icon {
  transform: rotate(180deg);
}

.dukrana-news-nav-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 7px;
  height: 12px;
}

.dukrana-news-nav-icon svg {
  display: block;
  width: 7px;
  height: 12px;
  color: inherit;
}

.dukrana-news-nav-icon svg [stroke] {
  stroke: currentColor;
}

@media (max-width: 1100px) {
  .dukrana-news-head {
    padding-top: 160px;
    padding-bottom: 40px;
  }

  .dukrana-news-head-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }

  .dukrana-news-head-right {
    flex: 0 0 auto;
    max-width: 100%;
  }
}

@media (max-width: 900px) {
  .dukrana-news-head {
    padding-top: 140px;
    padding-bottom: 32px;
  }

  .dukrana-news-heading {
    font-size: 38px;
    line-height: 46px;
  }

  .dukrana-news-carousel {
    padding-bottom: 64px;
  }

  .dukrana-news-carousel-track {
    gap: 24px;
  }

  .dukrana-news-card {
    flex: 0 0 320px;
    width: 320px;
  }

  .dukrana-news-card-media {
    height: 220px;
  }

  .dukrana-news-card-body {
    padding: 24px;
    gap: 12px;
  }

  .dukrana-news-card-title {
    font-size: 18px;
    line-height: 26px;
  }

  .dukrana-news-nav {
    justify-content: flex-end;
  }
}

@media (max-width: 480px) {
  .dukrana-news-head {
    padding-top: 120px;
  }
}

.dukrana-news-nav {
  box-sizing: border-box;
}

.dukrana-news-carousel-viewport {
  box-sizing: border-box;
}

/* News carousel bleeds to the right viewport edge: a negative margin won't widen a width:100% box, so grow width by --page-padding-x and anchor left. Scoped to .dukrana-news-page. */
.dukrana-news-page .dukrana-news-carousel-viewport {
  width: calc(100% + var(--page-padding-x));
  max-width: none;
  align-self: flex-start;
  margin-right: calc(-1 * var(--page-padding-x));
  padding-right: 0;
}

/* Drop the track's trailing right padding so the last card sits flush at the screen edge. */
.dukrana-news-page .dukrana-news-carousel-track {
  margin-right: 0;
  padding-right: 0;
}

/* TEMPORARY LAUNCH HIDE — remove to restore. Hide case-studies "Sprendimai" everywhere until real content exists.
   Targets the dark-green alignfull wrapper holding the carousel (static-pattern + ACF-block instances) — no DB edits. */
.wp-block-acf-case-studies,
.wp-block-group.alignfull.has-dark-green-background-color:has(.dukrana-case-carousel) {
  display: none !important;
}

/* 2) Language switcher — RESTORED 2026-07-06 (WPML live, EN pages published).
   The toggle is now a real link rendered via {{DUKRANA_LANG_SWITCHER}}. */
.dukrana-lang-toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: 'Epilogue', sans-serif;
  font-size: 13.5px;
  font-weight: 500;
  color: inherit;
  text-decoration: none;
}

.dukrana-lang-toggle:hover .dukrana-lang-text {
  text-decoration: underline;
}

/* News Article (single) page */
.dukrana-news-article {
  background: #1f6259;
}

body.dukrana-news-inner-body,
body.dukrana-news-inner-body main.wp-block-group,
body.dukrana-news-inner-body .wp-block-post-content,
body.dukrana-news-list-body,
body.dukrana-news-list-body main.wp-block-group {
  background: #1f6259;
}

/* News inner page: override the footer's green (#133D37) to #1F6259 so it merges with the article body. */
body.dukrana-news-inner-body footer .has-green-background-color,
body.dukrana-news-inner-body .wp-site-blocks > .has-green-background-color,
body.dukrana-news-inner-body > .has-green-background-color {
  background-color: #1F6259 !important;
}

body.dukrana-news-inner-body .wp-block-post-content {
  display: block;
  padding: 0;
  margin: 0;
}

body.dukrana-news-inner-body .wp-block-post-content>* {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.dukrana-news-article-main {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 180px var(--page-padding-x) 0;
  overflow: hidden;
}

.dukrana-news-article-container {
  width: 100%;
  max-width: 1280px;
  display: flex;
  flex-direction: column;
  gap: 64px;
}

.dukrana-news-article-hero {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.dukrana-news-article-meta {
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: flex-start;
}

.dukrana-news-article-meta .dukrana-news-card-badge {
  position: static;
  top: auto;
  left: auto;
}

.dukrana-news-article-title {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 50px;
  line-height: 60px;
  letter-spacing: -0.72px;
  color: #fafafa;
  max-width: 921px;
  margin: 0;
}

.dukrana-news-article-date {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 22px;
  letter-spacing: -0.16px;
  color: #ffffff;
  opacity: 0.8;
  margin: 0;
}

.dukrana-news-article-hero-image {
  width: 100%;
  height: 430px;
  border-radius: 8px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.dukrana-news-article-body {
  display: flex;
  gap: 134px;
  align-items: flex-start;
  padding-bottom: 96px;
  position: relative;
}

.dukrana-news-article-column {
  flex: 0 0 797px;
  max-width: 797px;
  display: flex;
  flex-direction: column;
  gap: 48px;
  color: #ffffff;
}

.dukrana-news-article-column>* {
  margin: 0;
}

/* Defensive responsiveness for WYSIWYG body: long words/URLs wrap (flex column min-width:0 + -main overflow:hidden would clip them); wide tables/pre/iframes capped to column width. */
.dukrana-news-article-title,
.dukrana-news-article-column,
.dukrana-news-article-column p,
.dukrana-news-article-column li,
.dukrana-news-article-column h2,
.dukrana-news-article-column h3,
.dukrana-news-article-column h4 {
  overflow-wrap: break-word;
  word-break: break-word;
}

.dukrana-news-article-column table {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
}

.dukrana-news-article-column pre,
.dukrana-news-article-column iframe,
.dukrana-news-article-column video {
  max-width: 100%;
}

.dukrana-news-article-column p {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 22px;
  letter-spacing: -0.16px;
  color: #ffffff;
}

.dukrana-news-article-column p+p {
  margin-top: 16px;
}

.dukrana-news-article-column h2 {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 38px;
  line-height: 50.4px;
  letter-spacing: -0.84px;
  color: #ffffff;
  margin: 0;
}

.dukrana-news-article-column h3 {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 32px;
  line-height: 42px;
  letter-spacing: -0.84px;
  color: #ffffff;
  margin: 0;
}

.dukrana-news-article-column h4 {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 24px;
  line-height: 30px;
  letter-spacing: -0.5px;
  color: #ffffff;
  margin: 0;
}

.dukrana-news-article-column h2+p,
.dukrana-news-article-column h3+p,
.dukrana-news-article-column h4+p {
  margin-top: -16px;
}

.dukrana-news-article-column ul,
.dukrana-news-article-column ol {
  margin: 0;
  padding-left: 24px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  color: #ffffff;
}

.dukrana-news-article-column li {
  font-family: 'Epilogue', sans-serif;
  font-size: 16px;
  line-height: 22px;
  letter-spacing: -0.16px;
  color: #ffffff;
}

.dukrana-news-article-column img,
.dukrana-news-article-column .wp-block-image img {
  display: block;
  width: 100%;
  height: 408px;
  object-fit: cover;
  border-radius: 8px;
  margin: 0;
}

.dukrana-news-article-column figure {
  margin: 0;
}

.dukrana-news-article-column blockquote,
.dukrana-news-article-column .wp-block-quote {
  backdrop-filter: blur(18.75px);
  -webkit-backdrop-filter: blur(18.75px);
  background: rgba(252, 252, 247, 0.1);
  border-radius: 8px;
  padding: 40px;
  display: flex;
  gap: 32px;
  align-items: flex-start;
  border: 0;
  margin: 0;
}

.dukrana-news-article-column blockquote::before {
  content: '';
  flex: 0 0 44px;
  width: 44px;
  height: 33px;
  background: url('../icons/icon-quote.svg') center/contain no-repeat;
}

.dukrana-news-article-column blockquote p {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
  letter-spacing: -0.5px;
  color: #ffffff;
  margin: 0;
}

.dukrana-news-article-column blockquote cite {
  display: none;
}

.dukrana-news-article-sidebar {
  flex: 0 0 309px;
  width: 309px;
  position: sticky;
  top: 120px;
  align-self: flex-start;
  display: flex;
  flex-direction: column;
  gap: 40px;
}

@media (max-height: 800px) {
  .dukrana-news-article-sidebar {
    position: static;
    align-self: stretch;
  }
}

.dukrana-news-article-share {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.dukrana-news-article-share-label {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 1.2;
  letter-spacing: -0.5px;
  color: #ffffff;
  margin: 0;
}

.dukrana-news-article-share-icons {
  display: flex;
  gap: 16px;
}

.dukrana-news-article-share-icon {
  width: 44px;
  height: 44px;
  border: 1px solid rgba(255, 255, 255, 0.61);
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  transition: background 0.2s ease, border-color 0.2s ease;
  cursor: pointer;
}

.dukrana-news-article-share-icon:hover,
.dukrana-news-article-share-icon:focus-visible,
.dukrana-news-article-share-icon:active {
  background: rgba(255, 255, 255, 0.15);
  border-color: #ffffff;
  outline: none;
}

.dukrana-news-article-share-icon.is-copied {
  background: #f4a261;
  border-color: #f4a261;
}

.dukrana-news-article-share-icon svg {
  display: block;
  width: 20px;
  height: 20px;
  color: #ffffff;
  pointer-events: none;
}

.dukrana-news-article-share-icon svg[fill="currentColor"] {
  fill: currentColor;
}

.dukrana-news-article-share-icon svg[fill="currentColor"] path {
  fill: currentColor;
}

.dukrana-news-article-share-icon svg[stroke="currentColor"] {
  stroke: currentColor;
  fill: none;
}

.dukrana-news-article-share-icon svg[stroke="currentColor"] path {
  stroke: currentColor;
  fill: none;
}

.dukrana-news-article-help-card {
  background: #133d37;
  border-radius: 8px;
  padding: 30px 20px 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  color: #ffffff;
}

.dukrana-news-article-help-text {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.dukrana-news-article-help-title {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 1.2;
  letter-spacing: -0.5px;
  color: #ffffff;
  margin: 0;
}

.dukrana-news-article-help-body {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: #ffffff;
  margin: 0;
}

.dukrana-news-article-help-cta {
  background: #f4a261;
  color: #133d37;
  border-radius: 4px;
  padding: 17px 24px 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 13.5px;
  letter-spacing: -0.04px;
  text-decoration: none;
  transition: background 0.2s ease, transform 0.2s ease;
}

.dukrana-news-article-help-cta:hover,
.dukrana-news-article-help-cta:focus-visible,
.dukrana-news-article-help-cta:active {
  background: #e08b4a;
  outline: none;
}

.dukrana-news-article-help-cta .dukrana-btn-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

@media (max-width: 1380px) {
  .dukrana-news-article-body {
    gap: 64px;
  }

  .dukrana-news-article-column {
    flex: 1 1 auto;
    min-width: 0;
    max-width: none;
  }

  .dukrana-news-article-sidebar {
    flex: 0 0 300px;
    width: 300px;
  }
}

@media (max-width: 900px) {
  .dukrana-news-article-main {
    padding: 140px var(--page-padding-x) 0;
  }

  .dukrana-news-article-title {
    font-size: 38px;
    line-height: 46px;
  }

  .dukrana-news-article-hero-image {
    height: 260px;
  }

  .dukrana-news-article-body {
    flex-direction: column;
    gap: 48px;
    padding-bottom: 64px;
  }

  .dukrana-news-article-column img,
  .dukrana-news-article-column .wp-block-image img {
    height: auto;
    aspect-ratio: 797 / 408;
  }

  .dukrana-news-article-sidebar {
    position: static;
    width: 100%;
    flex: 1 1 auto;
  }

  .dukrana-news-article-column blockquote {
    padding: 24px;
    gap: 20px;
  }

  .dukrana-news-article-help-cta {
    width: 100%;
    box-sizing: border-box;
    padding: 18px 24px;
    font-size: 15px;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
  }

  .dukrana-news-article-share-icon {
    width: 48px;
    height: 48px;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
  }
}

/* News Related (carousel under article) */
.dukrana-news-related {
  background: #1f6259;
}

.dukrana-news-related-section {
  padding-top: 96px;
  padding-bottom: 48px;
  display: flex;
  flex-direction: column;
  gap: 48px;
}

.dukrana-news-related-head {
  display: flex;
  gap: 24px;
  align-items: flex-end;
  justify-content: space-between;
}

.dukrana-news-related-heading {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 38px;
  line-height: 50.4px;
  letter-spacing: -0.84px;
  color: #fafafa;
  margin: 0;
  flex: 1 1 auto;
}

.dukrana-news-related-cta {
  background: #f3f1ef;
  color: #1f6259;
  border-radius: 4px;
  padding: 17px 24px 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 13.5px;
  letter-spacing: -0.04px;
  text-decoration: none;
  transition: background 0.2s ease;
  flex: 0 0 auto;
}

.dukrana-news-related-cta:hover,
.dukrana-news-related-cta:focus-visible {
  background: #e4e1dc;
  outline: none;
}

.dukrana-news-related .dukrana-news-carousel-track>.dukrana-news-card {
  flex: 0 0 450px;
  width: 450px;
  background: transparent;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  padding: 0;
}

.dukrana-news-related .dukrana-news-carousel-track {
  gap: 10px;
}

.dukrana-news-related .dukrana-news-card-media {
  height: 286px;
  padding: 0;
  border-radius: 4px;
}

.dukrana-news-related .dukrana-news-card-body {
  background: #fafafa;
  border-radius: 4px;
  padding: 32px;
  gap: 16px;
}

.dukrana-news-related .dukrana-news-card-title {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
  letter-spacing: -0.5px;
  color: #1c3a13;
}

.dukrana-news-related .dukrana-news-card-excerpt {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: #1c3a13;
}

.dukrana-news-related .dukrana-news-card-cta {
  background: #1f6259;
  color: #fafafa;
  border-radius: 4px;
  padding: 17px 24px 16px;
}

@media (max-width: 1100px) {
  .dukrana-news-related-section {
    padding-top: 64px;
    padding-bottom: 40px;
  }

  .dukrana-news-related-head {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 900px) {
  .dukrana-news-related-section {
    padding-top: 48px;
    padding-bottom: 32px;
    gap: 32px;
  }

  .dukrana-news-related-heading {
    font-size: 30px;
    line-height: 38px;
  }

  .dukrana-news-related .dukrana-news-carousel-track>.dukrana-news-card {
    flex: 0 0 320px;
    width: 320px;
  }

  .dukrana-news-related .dukrana-news-card-media {
    height: 220px;
    padding: 0;
  }

  .dukrana-news-related .dukrana-news-card-body {
    padding: 24px;
  }
}

/* Techninė biblioteka (technical-library-page) */
.dukrana-techlib-page {
  background-color: #1f6259;
}

.dukrana-techlib {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  color: #fafafa;
  font-family: 'Epilogue', sans-serif;
}

.dukrana-techlib-hero {
  display: flex;
  flex-direction: column;
  gap: 40px;
  padding: 180px var(--page-padding-x) 48px;
}

.dukrana-techlib-hero-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
}

.dukrana-techlib-heading {
  flex: 1 1 auto;
  margin: 0;
  color: #fafafa;
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 50px;
  line-height: 60px;
  letter-spacing: -0.72px;
}

.dukrana-techlib-description {
  flex: 0 0 auto;
  width: 379px;
  max-width: 40%;
  margin: 0;
  color: #fafafa;
  opacity: 0.8;
  font-size: 16px;
  line-height: 22px;
  letter-spacing: -0.16px;
}

.dukrana-techlib-tabs {
  display: flex;
  gap: 8px;
  padding: 8px;
  border-radius: 8px;
  background: rgba(252, 252, 247, 0.1);
  backdrop-filter: blur(18.75px);
  -webkit-backdrop-filter: blur(18.75px);
  width: 100%;
  min-height: 62px;
}

.dukrana-techlib-tab {
  flex: 1 1 0;
  min-width: 0;
  padding: 12px 16px;
  border: 0;
  border-radius: 4px;
  background: #1f6259;
  color: #fafafa;
  font-family: 'Epilogue', sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 20px;
  letter-spacing: 0;
  cursor: pointer;
  transition: background-color 0.15s ease, color 0.15s ease;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: center;
}

.dukrana-techlib-tab:hover {
  background: rgba(250, 250, 250, 0.2);
}

.dukrana-techlib-tab.is-active {
  background: #fafafa;
  color: #1f6259;
}

.dukrana-techlib-tab.is-active:hover {
  background: #fafafa;
}

/* Mobile/tablet: swap the tab strip for a custom <details> dropdown (styled after the catalog filter disclosures). */
.dukrana-techlib-dropdown {
  display: none;
}

@media (max-width: 1024px) {
  .dukrana-techlib-tabs {
    display: none !important;
  }

  .dukrana-techlib-dropdown {
    display: block;
    position: relative;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }

  /* When the dropdown is open, lift the whole hero (via :has()) so the panel stacks above the doc list that follows in the DOM. */
  .dukrana-techlib-hero {
    position: relative;
    z-index: 1;
  }

  .dukrana-techlib-hero:has(.dukrana-techlib-dropdown[open]) {
    z-index: 9999;
  }

  .dukrana-techlib-dropdown-trigger {
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    background: transparent;
    color: #fafafa;
    border: 1px solid rgba(250, 250, 250, 0.4);
    border-radius: 8px;
    padding: 14px 18px;
    font-family: 'Epilogue', sans-serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.2;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
  }

  .dukrana-techlib-dropdown-trigger::-webkit-details-marker {
    display: none;
  }

  .dukrana-techlib-dropdown-trigger:focus {
    outline: none;
  }

  .dukrana-techlib-dropdown-trigger:focus-visible {
    outline: 2px solid rgba(250, 250, 250, 0.6);
    outline-offset: 2px;
  }

  .dukrana-techlib-dropdown-chevron {
    transition: transform 0.2s ease;
    flex-shrink: 0;
    color: #fafafa;
  }

  .dukrana-techlib-dropdown[open] .dukrana-techlib-dropdown-chevron {
    transform: rotate(180deg);
  }

  .dukrana-techlib-dropdown-list {
    list-style: none;
    margin: 0;
    padding: 8px;
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    z-index: 9999;
    background: #133D37;
    border: 1px solid rgba(250, 250, 250, 0.2);
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    gap: 2px;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.25);
  }

  .dukrana-techlib-dropdown-option {
    box-sizing: border-box;
  }

  .dukrana-techlib-dropdown-option {
    display: block;
    width: 100%;
    text-align: left;
    background: transparent;
    color: #fafafa;
    border: 0;
    border-radius: 6px;
    padding: 12px 14px;
    font-family: 'Epilogue', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.3;
    cursor: pointer;
    transition: background 0.15s ease;
  }

  .dukrana-techlib-dropdown-option:hover,
  .dukrana-techlib-dropdown-option:focus-visible {
    background: rgba(250, 250, 250, 0.08);
    outline: none;
  }

  .dukrana-techlib-dropdown-option.is-active {
    background: #fafafa;
    color: #133D37;
    font-weight: 500;
  }
}

.dukrana-techlib-list {
  display: flex;
  flex-direction: column;
  padding: 0 var(--page-padding-x) 48px;
}

.dukrana-techlib-row {
  width: 100%;
  border-bottom: 1px dashed rgba(234, 236, 228, 0.4);
  padding: 30px 0;
}

.dukrana-techlib-row:first-child {
  padding-top: 0;
}

.dukrana-techlib-row[hidden] {
  display: none;
}

.dukrana-techlib-row-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
}

.dukrana-techlib-row-title {
  flex: 1 1 auto;
  color: #fafafa;
  font-family: 'Epilogue', sans-serif;
  font-size: 20px;
  font-weight: 400;
  letter-spacing: -0.5px;
}

.dukrana-techlib-row-type {
  flex: 0 0 auto;
  color: #fafafa;
  font-family: 'Epilogue', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

.dukrana-techlib-download {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 33.444px;
  height: 33.444px;
  border-radius: 50%;
  background: #eaece4;
  backdrop-filter: blur(6.271px);
  -webkit-backdrop-filter: blur(6.271px);
  color: #1f6259;
  text-decoration: none;
  transition: transform 0.15s ease, background-color 0.15s ease;
}

.dukrana-techlib-download:hover {
  background: #fafafa;
  transform: translateY(-1px);
}

.dukrana-techlib-download img {
  width: 12px;
  height: 14px;
  display: block;
}

.dukrana-techlib-empty {
  padding: 40px 0;
  text-align: center;
  color: #fafafa;
  opacity: 0.8;
  font-size: 16px;
}

@media (max-width: 1100px) {
  .dukrana-techlib-hero {
    padding: 160px var(--page-padding-x) 40px;
  }
}

@media (max-width: 960px) {
  .dukrana-techlib-hero {
    padding: 140px var(--page-padding-x) 32px;
    gap: 32px;
  }

  .dukrana-techlib-hero-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }

  .dukrana-techlib-description {
    width: 100%;
    max-width: 100%;
  }

  .dukrana-techlib-heading {
    font-size: 36px;
    line-height: 44px;
  }
}

@media (max-width: 480px) {
  .dukrana-techlib-hero {
    padding: 120px var(--page-padding-x) 32px;
  }
}

@media (max-width: 960px) {
  .dukrana-techlib-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .dukrana-techlib-tabs::-webkit-scrollbar {
    display: none;
  }

  .dukrana-techlib-tab {
    flex: 0 0 auto;
  }

  .dukrana-techlib-list {
    padding: 0 var(--page-padding-x) 48px;
  }

  .dukrana-techlib-row-title {
    font-size: 16px;
  }
}

/* CONTACT PAGE (Susisiekite su mūsų komanda) */
.dukrana-contact-section {
  width: 100%;
}

.dukrana-contact-page {
  background: #1F6259;
  color: #FAFAFA;
  font-family: 'Epilogue', sans-serif;
  width: 100%;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.dukrana-contact-container {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 597px;
  gap: 96px;
  padding: 180px var(--page-padding-x) 48px;
  align-items: start;
  box-sizing: border-box;
}

.dukrana-contact-left {
  display: flex;
  flex-direction: column;
  gap: 30px;
  min-width: 0;
}

.dukrana-contact-hero {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.dukrana-contact-heading {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 50px;
  line-height: 60px;
  letter-spacing: -0.014em;
  color: #FAFAFA;
  margin: 0;
}

.dukrana-contact-description {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 22px;
  letter-spacing: -0.01em;
  color: #FAFAFA;
  opacity: 0.8;
  margin: 0;
  max-width: 485px;
}

.dukrana-contact-links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}

.dukrana-contact-pill {
  display: inline-flex;
  align-items: center;
  padding: 8px 2px;
  border-radius: 4px;
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 13.5px;
  line-height: 1;
  letter-spacing: -0.012em;
  color: #FAFAFA;
  text-decoration: none;
  transition: background 0.2s ease;
}

a.dukrana-contact-pill:hover {
  background: rgba(250, 250, 250, 0.1);
}

/* Form card */
.dukrana-contact-right {
  min-width: 0;
}

.dukrana-contact-form-shell {
  background: rgba(252, 252, 247, 0.1);
  backdrop-filter: blur(18.75px);
  -webkit-backdrop-filter: blur(18.75px);
  border-radius: 8px;
  padding: 8px;
  max-width: 100%;
  width: 100%;
  box-sizing: border-box;
}

.dukrana-contact-form {
  background: #FAFAFA;
  border-radius: 4px;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 29px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.dukrana-contact-form-title {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 32px;
  line-height: 42px;
  letter-spacing: -0.026em;
  color: #1F6259;
  margin: 0;
}

.dukrana-contact-form-fields {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.dukrana-contact-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.dukrana-contact-label {
  font-family: 'Epilogue', sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 20px;
  color: #133D37;
}

.dukrana-contact-input {
  width: 100%;
  padding: 16px;
  border: 1px solid rgba(31, 98, 89, 0.2);
  border-radius: 4px;
  background: #FAFAFA;
  font-family: 'Epilogue', sans-serif;
  font-size: 14px;
  line-height: 20px;
  color: #0E2A25;
  outline: none;
  box-sizing: border-box;
  transition: border-color 150ms ease;
}

.dukrana-contact-input:focus {
  border-color: #1F6259;
}

.dukrana-contact-input::placeholder {
  color: rgba(14, 42, 37, 0.5);
}

.dukrana-contact-textarea {
  resize: vertical;
  min-height: 112px;
  font-family: 'Epilogue', sans-serif;
}

/* Category <select>: appearance:none flattens the native control so our chevron + input styling apply. */
.dukrana-contact-select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  /* color-scheme:light forces the native <option> popup light — macOS dark mode paints it gray otherwise. */
  color-scheme: light;
  padding-right: 44px; /* room for the chevron */
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5l5 5 5-5' stroke='%231F6259' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  cursor: pointer;
}

.dukrana-contact-select:invalid,
.dukrana-contact-select option[value=""] {
  color: rgba(14, 42, 37, 0.5); /* placeholder tone for the unselected state */
}

/* JS swaps the native select for a themed button+listbox (same enhancer as catalog sort); match the contact inputs. */
.dukrana-contact-select-wrap {
  position: relative;
}

.dukrana-contact-select-wrap .dukrana-catalog-sort-button {
  width: 100%;
  padding: 16px;
  font-size: 14px;
  line-height: 20px;
  color: #0E2A25;
  border-color: rgba(31, 98, 89, 0.2);
}

.dukrana-contact-select-wrap .dukrana-catalog-sort-button:focus-visible {
  outline: none;
  border-color: #1F6259;
}

.dukrana-contact-select-wrap .dukrana-catalog-sort-list {
  z-index: 60;
}

.dukrana-contact-select-wrap .dukrana-catalog-sort-option {
  white-space: normal;
  font-weight: 400;
}

.dukrana-contact-select-wrap .dukrana-catalog-sort-option.is-selected {
  font-weight: 500; /* keep the picked one a step above the list items */
}

.dukrana-contact-select-wrap .dukrana-catalog-sort-button-label {
  font-weight: 400;
}

.dukrana-contact-checks {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.dukrana-contact-checklabel {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  user-select: none;
}

.dukrana-contact-checklabel input {
  position: absolute;
  opacity: 0;
  width: 16px;
  height: 16px;
  margin: 0;
  cursor: pointer;
  z-index: 1;
}

.dukrana-contact-checkbox {
  width: 16px;
  height: 16px;
  border: 1px solid #1F6259;
  border-radius: 4px;
  background: transparent;
  flex-shrink: 0;
  position: relative;
  transition: background 150ms ease, border-color 150ms ease;
}

.dukrana-contact-checklabel input:checked+.dukrana-contact-checkbox {
  background: #1F6259;
  border-color: #1F6259;
}

.dukrana-contact-checklabel input:checked+.dukrana-contact-checkbox::after {
  content: '';
  position: absolute;
  inset: 0;
  margin: auto;
  width: 4px;
  height: 8px;
  border-right: 1.5px solid #FAFAFA;
  border-bottom: 1.5px solid #FAFAFA;
  transform: rotate(45deg) translate(-1px, -1px);
}

.dukrana-contact-checktext {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: rgba(19, 61, 55, 0.8);
}

.dukrana-contact-form-foot {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.dukrana-contact-checklabel-privacy {
  align-self: flex-start;
}

.dukrana-contact-privacy-link {
  color: inherit;
  text-decoration: underline;
  text-decoration-skip-ink: auto;
}

.dukrana-contact-submit {
  width: 494px;
  max-width: 100%;
  background: #1F6259;
  color: #FAFAFA;
  border: 0;
  border-radius: 4px;
  padding: 17px 24px 16px;
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 13.5px;
  line-height: 1.025;
  letter-spacing: -0.003em;
  text-align: center;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  transition: background 150ms ease, gap 0.5s ease;
}

.dukrana-contact-submit:hover {
  background: #133D37;
  gap: 8px;
}

.dukrana-contact-submit:hover .dukrana-btn-arrow {
  opacity: 1;
  width: 7px;
}

.dukrana-contact-submit:disabled {
  opacity: 0.6;
  cursor: progress;
}

.dukrana-contact-submit .dukrana-btn-arrow {
  color: #FAFAFA;
}

.dukrana-contact-fine-print {
  font-family: 'Epilogue', sans-serif;
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  color: #1F6259;
  margin: 0;
  text-align: center;
}

.dukrana-contact-form-status {
  margin: 0;
  min-height: 20px;
  font-family: 'Epilogue', sans-serif;
  font-size: 13px;
  text-align: center;
}

.dukrana-contact-form-status.is-success {
  color: #1F6259;
}

.dukrana-contact-form-status.is-error {
  color: #B3261E;
}

/* Footer strip */
.dukrana-contact-footer {
  border-top: 1px dashed rgba(234, 236, 228, 0.2);
  padding: 50px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.dukrana-contact-footer-label {
  font-family: 'Epilogue', sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: -0.009em;
  color: #F3F1EF;
}

.dukrana-contact-footer-contacts {
  display: flex;
  gap: 16px;
  align-items: center;
  flex-wrap: wrap;
}

@media (max-width: 1100px) {
  .dukrana-contact-container {
    grid-template-columns: minmax(0, 1fr);
    gap: 48px;
    padding: 160px var(--page-padding-x) 48px;
  }

  .dukrana-contact-form {
    width: 100%;
  }
}

@media (max-width: 640px) {
  .dukrana-contact-container {
    padding: 140px var(--page-padding-x) 32px;
  }

  .dukrana-contact-heading {
    font-size: 36px;
    line-height: 44px;
  }

  .dukrana-contact-form {
    padding: 24px;
  }

  .dukrana-contact-submit {
    width: 100%;
  }

  .dukrana-contact-footer {
    padding: 32px 24px;
  }
}

@media (max-width: 480px) {
  .dukrana-contact-container {
    padding: 120px var(--page-padding-x) 32px;
  }
}


/* Hide industry-cta "Nežinote sprendimo?" section (only used on industry page). */
.page-template-page-industry .dukrana-ind-cta,
.page-template-page-industry .wp-block-group:has(> .dukrana-ind-cta) {
  display: none !important;
}

/* Editor-canvas-only overrides (.editor-styles-wrapper): the editor wraps blocks so .wp-block-cover.alignfull:first-child never matches — mirror the hero decoration without the :first-child gate. Frontend unaffected. */
.editor-styles-wrapper .wp-block-cover.alignfull {
  position: relative;
  overflow: hidden;
}
.editor-styles-wrapper .wp-block-cover.alignfull::before {
  content: "";
  position: absolute;
  width: 1369.55px;
  height: 1369.55px;
  border: 1px dashed rgba(255, 255, 255, 0.6);
  border-radius: 50%;
  top: -650.78px;
  left: -548.78px;
  pointer-events: none;
  z-index: 1;
}
.editor-styles-wrapper .wp-block-cover__background.has-background-dim {
  background-color: #000;
  opacity: 0.5;
}
/* Ensure ACF block wrappers bleed full-width in editor too (mirrors frontend). */
.editor-styles-wrapper [class*="wp-block-acf-"] > .alignfull {
  margin-left: 0;
  margin-right: 0;
  width: 100%;
}

/* Let alignfull descendants of an ACF wrapper bleed to the viewport (ACF wrappers otherwise constrain children to content width). Frontend mirror of the editor rule above. */
[class*="wp-block-acf-"] > .alignfull {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  width: 100vw;
  max-width: 100vw;
}

/* Force fade-in/stagger elements visible in the editor — the IntersectionObserver that toggles .is-visible never runs in the block-editor iframe. */
.editor-styles-wrapper .dukrana-fade-in,
.editor-styles-wrapper .dukrana-stagger > * {
  opacity: 1 !important;
  transform: none !important;
}
/* ===== Mega menu (desktop only) ===== */
/* Defensive base: ensure mega is never in-flow even if a media query fails to match */
.dukrana-mega {
  position: absolute;
  left: -9999px;
  top: -9999px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
@media (min-width: 900px) {
  .dukrana-has-mega { position: relative; }
  .dukrana-mega {
    position: fixed;
    left: 50%;
    top: 88px;
    transform: translate(-50%, 8px);
    width: min(1360px, calc(100vw - 80px));
    background: #ffffff;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.12), 0 2px 8px rgba(0,0,0,0.06);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.35s ease, transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1), visibility 0s linear 0.35s;
    z-index: 100;
  }
  .dukrana-has-mega:hover .dukrana-mega,
  .dukrana-has-mega:focus-within .dukrana-mega {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate(-50%, 0);
    transition: opacity 0.35s ease, transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1), visibility 0s linear 0s;
  }
  .dukrana-mega::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -48px;
    height: 48px;
    pointer-events: auto;
  }
  /* Persistent hover bridge anchored to the trigger so the gap to the panel never breaks :hover. */
  .dukrana-has-mega::after {
    content: "";
    position: fixed;
    left: 0;
    right: 0;
    top: 60px;
    height: 36px;
    pointer-events: none;
    z-index: 99;
  }
  .dukrana-has-mega:hover::after,
  .dukrana-has-mega:focus-within::after {
    pointer-events: auto;
  }
  .dukrana-mega-inner {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 12px;
  }
  .dukrana-mega-card {
    display: block;
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    aspect-ratio: 16 / 10;
    text-decoration: none;
    color: #fff;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity 0.4s ease, transform 0.4s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.25s ease;
  }
  .dukrana-has-mega:hover .dukrana-mega-card,
  .dukrana-has-mega:focus-within .dukrana-mega-card {
    opacity: 1;
    transform: translateY(0);
  }
  .dukrana-has-mega:hover .dukrana-mega-card:nth-child(1) { transition-delay: 0.05s; }
  .dukrana-has-mega:hover .dukrana-mega-card:nth-child(2) { transition-delay: 0.08s; }
  .dukrana-has-mega:hover .dukrana-mega-card:nth-child(3) { transition-delay: 0.11s; }
  .dukrana-has-mega:hover .dukrana-mega-card:nth-child(4) { transition-delay: 0.14s; }
  .dukrana-has-mega:hover .dukrana-mega-card:nth-child(5) { transition-delay: 0.17s; }
  .dukrana-has-mega:hover .dukrana-mega-card:nth-child(6) { transition-delay: 0.20s; }
  .dukrana-mega-card-img {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    transition: transform 0.6s ease;
  }
  .dukrana-mega-card:hover .dukrana-mega-card-img {
    transform: scale(1.06);
  }
  .dukrana-mega-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0) 40%, rgba(0,0,0,0.55) 100%);
  }
  .dukrana-mega-card-title {
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 14px;
    z-index: 1;
    color: #fff;
    font-weight: 500;
    font-size: 15px;
    letter-spacing: -0.005em;
  }
}

/* Hide mega on small screens — drawer handles mobile */
@media (max-width: 899px) {
  .dukrana-mega { display: none; }
}

/* INDUSTRY PAGE — UNIFIED SECTION HEADINGS / SUBHEADINGS (one size each, every section + breakpoint) */

/* Headings: hero, problems, process, product-groups, cta */
.dukrana-industry-hero-heading,
.dukrana-problems-heading,
.dukrana-process-header h2.wp-block-heading,
.dukrana-industry-pg-title h2.wp-block-heading,
.dukrana-ind-cta h2.wp-block-heading {
  font-family: 'Epilogue', sans-serif !important;
  font-size: 38px !important;
  line-height: 1.25 !important;
  letter-spacing: -0.02em !important;
  font-weight: 400 !important;
}

/* Subheadings under those headings */
.dukrana-industry-hero-intro,
.dukrana-problems-intro,
.dukrana-process-header > .wp-block-group > p,
.dukrana-industry-pg-subtitle,
.dukrana-ind-cta > .wp-block-group > p {
  font-family: 'Epilogue', sans-serif !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  letter-spacing: -0.01em !important;
  font-weight: 400 !important;
}

@media (max-width: 1024px) {
  .dukrana-industry-hero-heading,
  .dukrana-problems-heading,
  .dukrana-process-header h2.wp-block-heading,
  .dukrana-industry-pg-title h2.wp-block-heading,
  .dukrana-ind-cta h2.wp-block-heading {
    font-size: 32px !important;
    line-height: 1.22 !important;
  }

  .dukrana-industry-hero-intro,
  .dukrana-problems-intro,
  .dukrana-process-header > .wp-block-group > p,
  .dukrana-industry-pg-subtitle,
  .dukrana-ind-cta > .wp-block-group > p {
    font-size: 15px !important;
    line-height: 1.45 !important;
  }
}

@media (max-width: 768px) {
  .dukrana-industry-hero-heading,
  .dukrana-problems-heading,
  .dukrana-process-header h2.wp-block-heading,
  .dukrana-industry-pg-title h2.wp-block-heading,
  .dukrana-ind-cta h2.wp-block-heading {
    font-size: 28px !important;
    line-height: 1.2 !important;
  }

  .dukrana-industry-hero-intro,
  .dukrana-problems-intro,
  .dukrana-process-header > .wp-block-group > p,
  .dukrana-industry-pg-subtitle,
  .dukrana-ind-cta > .wp-block-group > p {
    font-size: 14px !important;
    line-height: 1.45 !important;
  }
}

@media (max-width: 480px) {
  .dukrana-industry-hero-heading,
  .dukrana-problems-heading,
  .dukrana-process-header h2.wp-block-heading,
  .dukrana-industry-pg-title h2.wp-block-heading,
  .dukrana-ind-cta h2.wp-block-heading {
    font-size: 24px !important;
  }
}

/* CAROUSEL NAV BUTTONS — UNIFIED ON TABLET / MOBILE (same size + position every page) */
@media (max-width: 1024px) {
  .dukrana-carousel-nav,
  .dukrana-industries-nav,
  .dukrana-news-nav,
  .dukrana-process-controls {
    justify-content: center !important;
    gap: 12px !important;
    margin-top: 24px;
  }

  .dukrana-carousel-arrow,
  .dukrana-news-nav-btn,
  .dukrana-process-btn {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    border-radius: 50% !important;
  }

  .dukrana-carousel-arrow img,
  .dukrana-process-btn svg {
    width: 14px !important;
    height: 14px !important;
  }
}

/* "Kaip mes dirbame" carousel — full-bleed: header stays constrained, the card row breaks out of the 1440px container edge-to-edge; controls stay on the content edge. */
.dukrana-process-carousel {
  width: 100vw;
  max-width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
}

.dukrana-process-cards {
  /* Full-bleed track, but keep cards on the content edge: first card starts at the page padding and (mandatory snap) every card rests there. Right stays flush so the next card peeks. */
  padding-left: var(--page-padding-x);
  padding-right: 0;
  scroll-padding-left: var(--page-padding-x);
  scroll-padding-right: 0;
}

.dukrana-process-cards > .dukrana-process-card:first-child {
  margin-left: 0;
}

.dukrana-process-cards > .dukrana-process-card:last-child {
  margin-right: 0;
}

/* On wide screens the 4 fixed cards leave space on the right — let them grow to fill the viewport. Below 1600px keep fixed-width + horizontal scroll. */
@media (min-width: 1600px) {
  .dukrana-process-card {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
  }
  .dukrana-process-cards {
    overflow-x: hidden;
  }
}

/* Case-studies / "Sprendimai" carousel — same wide-screen behavior: 3 fixed 856px cards leave space above ~2600px, so let them grow. Below 1900px keep fixed-width + scroll. */
@media (min-width: 1900px) {
  .dukrana-case-carousel {
    overflow-x: hidden;
  }
  .dukrana-case-carousel .dukrana-case-card {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
  }
}

/* Align prev/next controls with the right edge of the constrained content (margin matches the gutter outside the 1440px column). */
.dukrana-process-controls {
  justify-content: flex-end;
  margin-right: max(24px, calc((100vw - 1440px) / 2));
  margin-left: max(24px, calc((100vw - 1440px) / 2));
}

/* 404 page: content renders with no gaps; add mobile spacing. !important + the extra body selector beat the global margin-top:0 reset. */
@media (max-width: 768px) {
  body.error404 main.wp-block-group > * + * {
    margin-top: 24px !important;
  }
  body.error404 main.wp-block-group > .wp-block-buttons {
    margin-top: 36px !important;
  }
}

/* WPML's built-in footer language switcher (flags strip under the footer) —
   we have our own header/drawer switcher, so hide the plugin one. */
.wpml-ls-statics-footer {
  display: none !important;
}
