/* Weblooc Redesign 2026 — pomožni stili za Elementor gradnike.
   Barve prihajajo iz Elementor globalov (--e-global-color-*), da Site Settings ostanejo vir resnice. */

body.weblooc-rd-body {
	--wl-lime: var(--e-global-color-primary, #C8F542);
	--wl-ink: var(--e-global-color-secondary, #131A16);
	--wl-ink2: var(--e-global-color-wlink2, #0B0F0C);
	--wl-cream: var(--e-global-color-wlcream, #F2F1EC);
	--wl-lime-txt: var(--e-global-color-accent, #5F8F14);
	--wl-lime-logo: var(--e-global-color-wllimelogo, #8DBF1A);
	-webkit-font-smoothing: antialiased;
}
body.weblooc-rd-body { margin: 0; }

/* ---------- pomožni razredi ---------- */
.e-con.wl-w-auto { --width: auto; width: auto; min-width: 0; flex-shrink: 1; }
.e-con.wl-w-auto > .e-con-inner { width: auto; }
.wl-maxw-320 { max-width: 320px; }
.wl-maxw-480 { max-width: 480px; }
.wl-maxw-520 { max-width: 520px; }
.wl-maxw-640 { max-width: 640px; }
.wl-maxw-900 { max-width: 900px; }
.wl-maxw-1000 { max-width: 1000px; }
.wl-prose p { margin: 0; }
.wl-prose p + p { margin-top: .9em; }
.wl-prose a, .wl-contact-line a, .wl-footer-legal a { color: inherit; text-decoration: underline; text-underline-offset: 4px; text-decoration-color: var(--wl-lime-txt); }
.wl-section--dark .wl-prose a, .wl-section--ink2 .wl-prose a, .wl-contact-line a, .wl-footer-legal a { text-decoration-color: var(--wl-lime); }
.wl-o60 { opacity: .6; }
.wl-stars, .wl-stars .elementor-heading-title { color: var(--wl-lime); letter-spacing: 2px; }
.wl-rating strong { font-weight: 800; }
@media (max-width: 767px) { .wl-br { display: none; } }

/* Prelom H1 le na desktopu; »ročna« podčrtava pod ključno besedo */
.wl-ul { position: relative; display: inline-block; color: var(--wl-lime); white-space: nowrap; }
.wl-ul::after {
	content: ""; position: absolute; left: -.02em; right: -.02em; bottom: -.08em; height: .22em; pointer-events: none;
	background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 24' preserveAspectRatio='none'><path d='M4 14 C 80 4, 200 4, 296 12' fill='none' stroke='%23C8F542' stroke-width='7' stroke-linecap='round' opacity='.9'/><path d='M10 20 C 100 12, 190 12, 290 19' fill='none' stroke='%23C8F542' stroke-width='4' stroke-linecap='round' opacity='.55'/></svg>") no-repeat center / 100% 100%;
}
.wl-section--light .wl-ul, .wl-section--white .wl-ul { color: var(--wl-lime-txt); }

/* ---------- gumbi ---------- */
.wl-btn .elementor-button { line-height: 1; transition: background-color .15s ease, color .15s ease, border-color .15s ease; }
.wl-btn--link-dark .elementor-button, .wl-btn--link-light .elementor-button {
	text-decoration: underline; text-underline-offset: 5px; text-decoration-thickness: 2px; text-decoration-color: var(--wl-lime-logo);
}
.wl-btn--link-light .elementor-button { text-decoration-color: var(--wl-lime); }
.wl-btn--link-dark .elementor-button:hover, .wl-btn--link-light .elementor-button:hover { text-decoration-thickness: 3px; }
.wl-btn--sticker { position: relative; overflow: visible; }
.wl-btn--sticker::after {
	content: attr(data-sticker); position: absolute; top: -14px; right: -12px; z-index: 2; pointer-events: none;
	background: var(--wl-cream); color: var(--wl-ink2); font: 700 17px/1 'Caveat', cursive; padding: 6px 10px; border-radius: 6px;
	transform: rotate(6deg); box-shadow: 0 2px 8px rgba(0,0,0,.25);
}
.wl-note { transform: rotate(-4deg); margin-left: 6px; }
.wl-note .elementor-heading-title { display: flex; align-items: flex-end; gap: 6px; white-space: nowrap; }
.wl-note .elementor-heading-title::before {
	content: ""; display: inline-block; width: 54px; height: 46px; flex: none;
	background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 54 46' fill='none' stroke='%23C8F542' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M50 6 C 40 30, 26 38, 6 36'/><path d='M12 30 L 6 36 L 13 41'/></svg>") no-repeat center / contain;
}
@media (max-width: 767px) { .wl-note { display: none; } }

/* ---------- pill, pika ---------- */
.wl-pill { display: inline-flex !important; width: auto !important; }
.wl-pulse { animation: wl-pulse 1.6s ease-out infinite; }
@keyframes wl-pulse {
	0% { box-shadow: 0 0 0 0 rgba(200,245,66,.6); }
	70% { box-shadow: 0 0 0 8px rgba(200,245,66,0); }
	100% { box-shadow: 0 0 0 0 rgba(200,245,66,0); }
}

/* ---------- ocene (avatarji) ---------- */
.wl-avatars { flex-wrap: nowrap !important; }
.wl-avatars .wl-avatar { width: auto; }
.wl-avatars .wl-avatar + .wl-avatar { margin-left: -10px; }
.wl-avatars .wl-avatar img { border: 2px solid var(--wl-ink); border-radius: 50%; display: block; }
.wl-avatars .wl-avatar--more { border: 2px solid var(--wl-ink); }
.wl-avatar-more-text { font-weight: 800 !important; }
.wl-section--light .wl-avatars .wl-avatar img, .wl-section--light .wl-avatar--more { border-color: var(--wl-cream); }

/* ---------- seznami (footer, kontakt) ---------- */
.wl-list .elementor-icon-list-icon { display: none; }
.wl-list .elementor-icon-list-text { padding-inline-start: 0 !important; }
.wl-list .elementor-icon-list-item a { transition: color .15s; }

/* ---------- koraki, primerjava, FAQ ---------- */
.wl-steps > .e-con { border-top: 0; }
@media (max-width: 1024px) { .wl-steps { border-top-width: 2px; } }
.wl-compare-cell .elementor-widget-container p { margin: 0; }
.wl-faq .e-n-accordion-item { border-inline: 0 !important; border-top: 0 !important; }
.wl-faq .e-n-accordion-item-title { padding-inline: 0 !important; cursor: pointer; gap: 24px; }
.wl-faq .e-n-accordion-item-title-header { flex: 1; }
.wl-faq .e-n-accordion-item-title-text { margin: 0; }
.wl-faq .e-n-accordion-item > .e-con { padding-inline: 0 !important; }

/* ---------- logotipi (besedilni) ---------- */
.wl-logos { flex: 1 1 auto; }
@media (max-width: 767px) { .wl-logos .elementor-heading-title { font-size: 14px; } }

/* ---------- header ---------- */
.wl-header { box-shadow: 0 1px 0 rgba(242,241,236,.06); }
.wl-logo .elementor-heading-title, .wl-logo .elementor-heading-title a { color: inherit; text-decoration: none; }
.wl-oo { color: var(--wl-lime); }
.wl-header-phone .elementor-heading-title a { color: inherit; text-decoration: none; }
.wl-header-phone .elementor-heading-title a:hover { color: var(--wl-lime); }
.wl-menu .elementor-nav-menu--main .elementor-item { transition: color .15s; }
.wl-menu .elementor-nav-menu--main .sub-arrow { opacity: .6; font-size: 10px; margin-inline-start: 6px; }
.wl-menu .elementor-nav-menu--dropdown { box-shadow: 0 16px 40px rgba(0,0,0,.35); }
.wl-menu .elementor-nav-menu--main .elementor-nav-menu--dropdown { padding: 8px; }
.wl-menu .elementor-nav-menu--main .elementor-nav-menu--dropdown a { border-radius: 8px; }
/* mobilni meni (celoten padec pod headerjem) */
@media (max-width: 1024px) {
	.wl-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container { padding: 8px 22px 24px; border-radius: 0 0 18px 18px; border-top: 1px solid rgba(242,241,236,.12); box-shadow: 0 24px 40px rgba(0,0,0,.35); }
	.wl-menu .elementor-nav-menu--dropdown > ul > li > a { font-family: 'Schibsted Grotesk', sans-serif; font-weight: 800; font-size: 26px; letter-spacing: -.03em; padding: 16px 0 !important; border-bottom: 1px solid rgba(242,241,236,.1); }
	.wl-menu .elementor-nav-menu--dropdown > ul > li:last-child > a { border-bottom: 0; }
	.wl-menu .elementor-nav-menu--dropdown .sub-menu a { font-family: 'Manrope', sans-serif; font-weight: 500; font-size: 16px; padding: 10px 0 10px 16px !important; color: rgba(242,241,236,.8); }
	.wl-menu .elementor-nav-menu--dropdown .sub-arrow { margin-inline-start: auto; }
	.wl-menu .elementor-menu-toggle { margin-inline-start: 0; }
}
@media (max-width: 767px) {
	.wl-header-cta .elementor-button { padding: 10px 14px !important; font-size: 13px; }
}

/* ---------- mobilna lepljiva vrstica + WhatsApp ---------- */
.wl-mobile-bar {
	position: fixed !important; left: 0; right: 0; bottom: 0; z-index: 90; width: 100%;
	-webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
	padding-bottom: calc(22px + env(safe-area-inset-bottom, 0px)) !important;
}
.wl-mobile-bar .wl-call .elementor-button { width: 52px; height: 52px; padding: 0 !important; display: inline-flex; align-items: center; justify-content: center; font-size: 12px; }
.wl-mobile-bar .wl-bar-cta { flex: 1 1 auto; width: auto; }
.wl-mobile-bar .wl-bar-cta .elementor-button { width: 100%; padding: 16px !important; }
.wl-wa { position: fixed !important; right: 16px; bottom: 96px; z-index: 91; width: auto !important; }
.wl-wa .elementor-button { width: 52px; height: 52px; padding: 0 !important; display: inline-flex; align-items: center; justify-content: center; box-shadow: 0 6px 20px rgba(0,0,0,.25); }
.wl-wa .elementor-button-icon { font-size: 26px; line-height: 1; }
.wl-wa .elementor-button-icon svg { width: 26px; height: 26px; fill: #fff; }
.wl-wa .elementor-button-text:empty { display: none; }
@media (max-width: 767px) { body.weblooc-rd-body { padding-bottom: 92px; } }
.elementor-editor-active .wl-mobile-bar, .elementor-editor-active .wl-wa { position: static !important; }

/* ---------- video slot ---------- */
.wl-play .elementor-button { width: 72px; height: 72px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; }
.wl-play .elementor-button-icon { font-size: 22px; margin-left: 4px; }
.wl-play .elementor-button-text:empty { display: none; }
.wl-video-slot iframe, .wl-video-slot video { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; object-fit: cover; }

/* ---------- obrazec (Elementor Pro Form) ---------- */
.wl-form-card { position: relative; }
.wl-step-pill { white-space: nowrap; }
.wl-form .elementor-form-fields-wrapper { row-gap: 10px; }
.wl-form .elementor-field-group { margin-bottom: 0; padding-bottom: 0 !important; }
.wl-form .elementor-field-type-html { padding: 0 !important; }
.wl-form .wl-form-q-wrap { margin-top: 4px; }
.wl-form .wl-form-q { font-weight: 700; font-size: 16px; color: var(--wl-ink2); }
.wl-form .wl-form-sub-wrap { margin-top: 6px; }
.wl-form .wl-form-sub { font-size: 13px; font-weight: 700; color: rgba(11,15,12,.6); }
.wl-form .elementor-field-textual { min-height: 52px; line-height: 1.3; }
.wl-form textarea.elementor-field-textual { min-height: 96px; }
.wl-form select.elementor-field-textual {
	-webkit-appearance: none; appearance: none; padding-right: 40px;
	background: #fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9' fill='none' stroke='%230B0F0C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M1 1l6 6 6-6'/></svg>") no-repeat right 16px center;
}
/* radio kot izbirni gumbi 2×2 */
.wl-form .elementor-field-type-radio .elementor-field-subgroup { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; width: 100%; }
.wl-form .elementor-field-type-radio .elementor-field-option { position: relative; margin: 0; display: block; }
.wl-form .elementor-field-type-radio .elementor-field-option input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.wl-form .elementor-field-type-radio .elementor-field-option label {
	display: block; border: 2px solid rgba(11,15,12,.12); background: #fff; border-radius: 12px; padding: 12px 14px;
	font-size: 14px; font-weight: 700; line-height: 1.3; cursor: pointer; color: var(--wl-ink2); transition: border-color .15s;
}
.wl-form .elementor-field-type-radio .elementor-field-option input:checked + label { border-color: var(--wl-ink2); }
@media (max-width: 480px) { .wl-form .elementor-field-type-radio .elementor-field-subgroup { grid-template-columns: 1fr; } }
/* koraki */
.wl-form .e-form__indicators { margin-bottom: 8px; }
.wl-form .e-form__buttons { justify-content: space-between; align-items: center; gap: 10px; margin-top: 10px; }
.wl-form .e-form__buttons__wrapper { flex: none; width: auto; }
.wl-form .e-form__buttons__wrapper__button-previous { font-weight: 700 !important; font-size: 14px !important; padding: 12px 0 !important; }
.wl-form .e-form__buttons__wrapper__button-submit { background: var(--wl-lime) !important; color: var(--wl-ink2) !important; }
.wl-form .e-form__buttons__wrapper__button-submit:hover { background: #B9E63A !important; }
.wl-form .e-form__buttons__wrapper:first-child:last-child { margin-inline-start: auto; }
/* povzetek + GDPR */
.wl-summary { background: #fff; border-radius: 14px; padding: 18px 20px; font-size: 15px; line-height: 1.7; }
.wl-summary > div { display: flex; justify-content: space-between; gap: 16px; }
.wl-summary span { color: rgba(11,15,12,.55); }
.wl-summary strong { font-weight: 700; text-align: right; }
.wl-gdpr { font-size: 13px; color: rgba(11,15,12,.6); margin: 12px 0 0; line-height: 1.5; }
.wl-gdpr a { color: inherit; text-decoration: underline; }
.wl-form .elementor-message { font-size: 14px; }
/* stanje »Hvala« */
.wl-form-card .wl-thanks { display: none; }
.wl-form-card.is-done .wl-thanks { display: flex; }
.wl-form-card.is-done .wl-form, .wl-form-card.is-done .wl-form-head { display: none; }
.wl-calendly { width: 100%; }
.elementor-editor-active .wl-form-card .wl-thanks { display: flex; opacity: .55; }
/* popup obrazec */
.wl-form--popup .elementor-field-textual { text-align: center; }
.wl-form--popup .e-form__buttons { margin-top: 0; }
.wl-form--popup .elementor-button { width: 100%; }

/* ---------- reference (filtri) ---------- */
.wl-filters .wl-filter.is-active .elementor-button { background: var(--wl-lime) !important; color: var(--wl-ink2) !important; border-color: var(--wl-lime) !important; }
.wl-ref-card.is-hidden { display: none !important; }

/* ---------- Elementor popravki ---------- */
.elementor-widget-heading .elementor-heading-title { margin: 0; }
.elementor-widget-text-editor { line-height: inherit; }
.e-con-boxed > .e-con-inner { width: 100%; }
.weblooc-rd-body .elementor-kit-8 button:not(.elementor-button) { all: revert; }

/* ---------- dodatki (O nas, Kontakt) ---------- */
html, body.weblooc-rd-body { overflow-x: clip; }
.wl-accent { color: var(--wl-lime); }
.wl-section--light .wl-accent, .wl-section--white .wl-accent { color: var(--wl-lime-txt); }
.wl-img-4x5 img { aspect-ratio: 4 / 5; width: 100%; height: auto; object-fit: cover; display: block; }
.wl-img-4x5, .wl-img-4x5 .elementor-widget-container { line-height: 0; }
.wl-maxw-560 { max-width: 560px; }
.wl-stars-dark { color: var(--wl-lime-txt); letter-spacing: 2px; }
.wl-bold strong { font-weight: 700; }
.wl-map-wrap, .wl-map-wrap .elementor-widget-container { height: 100%; line-height: 0; }
.wl-map { width: 100%; height: 100%; min-height: 360px; border: 0; display: block; filter: grayscale(.2); }
.wl-map-card { position: relative; }
.wl-map-card > .wl-map-wrap { position: absolute; inset: 0; }
.wl-team-card > .wl-img-4x5 { width: 100%; }

/* ---------- LP dodatki ---------- */
.wl-form .e-form__indicators__indicator__progress__meter { color: transparent; font-size: 0; }
.wl-timeline { position: relative; }
.wl-timeline::before { content: ""; position: absolute; left: 11px; top: 12px; bottom: 12px; width: 2px; background: rgba(242,241,236,.15); }
.wl-timeline-row { position: relative; }
.wl-cover img { width: 100%; display: block; }
.wl-cover, .wl-cover .elementor-widget-container { line-height: 0; }
.wl-project-img { position: relative; overflow: hidden; }
.wl-project-img .wl-cover { position: absolute; inset: 0; }
.wl-project-img .wl-cover img { height: 100%; }
.wl-blockquote .elementor-heading-title { font-weight: 600 !important; line-height: 1.35 !important; }
.wl-check-list .wl-mark .elementor-heading-title { width: 18px; }
.wl-video-slot { position: relative; }
.wl-video-caption { position: relative; z-index: 1; }
.wl-badge { display: inline-flex; }
.wl-maxw-540{max-width:540px}.wl-maxw-1100{max-width:1100px}.wl-maxw-1200{max-width:1200px}
.wl-maxw-600{max-width:600px}.wl-ref-badge{z-index:2}

/* ---------- piškotna pasica v novi paleti ---------- */
.weblooc-rd-body .wl-cookie-banner { background: var(--wl-ink); border-top: 1px solid rgba(242,241,236,.12); padding: 18px 0; font-family: 'Manrope', system-ui, sans-serif; box-shadow: 0 -12px 32px rgba(11,15,12,.25); }
.weblooc-rd-body .wl-cookie-inner { max-width: 1200px; padding: 0 24px; }
.weblooc-rd-body .wl-cookie-label { font: 800 11px/1 'Manrope', system-ui, sans-serif; letter-spacing: .16em; color: var(--wl-lime); margin-bottom: 8px; }
.weblooc-rd-body .wl-cookie-text p { font: 500 14px/1.55 'Manrope', system-ui, sans-serif; color: rgba(242,241,236,.78); }
.weblooc-rd-body .wl-cookie-text a { color: var(--wl-cream); text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--wl-lime); }
/* Gumbi: kit Elementorja globalno pobarva <button>, zato tukaj eksplicitno (specifičnost nad kitom). */
.weblooc-rd-body .wl-cookie-banner .wl-cookie-btn { font: 800 13px/1 'Manrope', system-ui, sans-serif; letter-spacing: .02em; text-transform: none; padding: 13px 22px; border-radius: 999px; border: 1.5px solid transparent; }
.weblooc-rd-body .wl-cookie-banner .wl-cookie-btn--primary { background: var(--wl-lime); border-color: var(--wl-lime); color: var(--wl-ink2); }
.weblooc-rd-body .wl-cookie-banner .wl-cookie-btn--primary:hover { background: #B9E63A; border-color: #B9E63A; color: var(--wl-ink2); }
.weblooc-rd-body .wl-cookie-banner .wl-cookie-btn--outline { background: transparent; border-color: rgba(242,241,236,.45); color: var(--wl-cream); }
.weblooc-rd-body .wl-cookie-banner .wl-cookie-btn--outline:hover { background: transparent; border-color: var(--wl-cream); color: var(--wl-cream); }
@media (max-width: 640px) { .weblooc-rd-body .wl-cookie-inner { padding: 0 16px; } }

/* lepljiva vrstica se umakne, dokler je piškotna pasica odprta ([hidden] = izbira že shranjena) */
body:has(.wl-cookie-banner:not([hidden]):not(.wl-cookie-banner--out)) .wl-mobile-bar,
body:has(.wl-cookie-banner:not([hidden]):not(.wl-cookie-banner--out)) .wl-wa { display: none !important; }
.wl-stat .elementor-heading-title { overflow-wrap: normal; }

.wl-faq .e-n-accordion-item > .e-con { border: 0 !important; }
.wl-hero-img { overflow: hidden; } .wl-hero-img img { border-radius: 20px; }

/* ---------- case study ---------- */
.wl-crumb a { color: inherit; text-decoration: none; }
.wl-crumb a:hover { color: var(--wl-lime); }
.wl-crumb .wl-crumb-sep { opacity: .5; margin: 0 6px; }
.wl-crumb .wl-crumb-cur { color: var(--wl-cream); }
.wl-cs-hero-img, .wl-cs-hero-img .elementor-widget-container { line-height: 0; }
.wl-cs-hero-img img { display: block; width: 100%; }
.wl-cs-facts a { color: inherit; text-decoration: underline; text-underline-offset: 4px; text-decoration-color: var(--wl-lime-logo); }
.wl-cs-quote .elementor-heading-title { font-weight: 600 !important; line-height: 1.25 !important; }
.wl-cs-shot { position: relative; }
.wl-cs-shot .wl-cover { position: absolute; inset: 0; }
.wl-cs-shot .wl-cover img { height: 100%; }
.wl-project-img .wl-cover img { object-position: top center; }

/* ---------- mobilno: elementi v vrsticah se smejo skrčiti (sicer štrlijo čez rob in se obrežejo) ---------- */
.wl-form-head > .elementor-widget-heading:first-child { min-width: 0; flex: 1 1 0; }
.wl-form-head .wl-step-pill { flex: none; }
@media (max-width: 767px) { .wl-form-head { flex-wrap: wrap !important; row-gap: 10px; } }
/* samo besedilni del vrstice (2. otrok) — 1. otrok je pika s fiksno širino */
.wl-next-steps .e-con > .elementor-widget-text-editor:not(:first-child),
.wl-next-steps .e-con > .e-con:not(:first-child) { min-width: 0; flex: 1 1 0; }
.wl-check-list .e-con > .elementor-widget-text-editor { min-width: 0; flex: 1 1 0; }
@media (max-width: 480px) { .wl-ul { white-space: normal; } }

/* Klinika — vrstice ponudbe: cena ostane v eni vrstici, besedilo se krči */
.e-con > .elementor-widget.wl-offer-item { flex: 1 1 0 !important; min-width: 0; }
.wl-offer-price { flex-shrink: 0; white-space: nowrap; }
