/* Dizajn B – Moderni editorial */
:root{--rose-num:#B07A70;--f-head:'Bricolage',system-ui,sans-serif;--f-body:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif;--r-l:18px;--r-m:12px}
body{font-weight:450}
.b-h1,.b-h2,.b-h3,h1,h2,h3{font-weight:650;letter-spacing:-.03em}
.b-h2{font-size:clamp(2.2rem,4.4vw,4.2rem);line-height:1.02}
.b-h3{font-size:clamp(1.35rem,1.6vw,1.6rem);letter-spacing:-.02em}
.b-tagline{font-family:var(--f-head);font-style:normal;font-weight:500;letter-spacing:-.02em;color:var(--accent)}
.b-quote p{font-family:var(--f-head);font-style:normal;font-weight:500;letter-spacing:-.02em}
.b-eyebrow{font-weight:700;letter-spacing:.16em}
.b-eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--rose-d)}
.b-btn .elementor-button,.b-btn-raw{border-radius:12px;font-weight:700;letter-spacing:.01em}
.b-btn--primary .elementor-button,.b-btn-raw--primary{background:var(--brown);color:var(--cream);box-shadow:none}
.b-btn--primary .elementor-button:hover,.b-btn-raw--primary:hover{background:var(--rose-d);color:var(--brown)}
.b-sign{font-family:var(--f-head);font-style:normal;font-weight:600}

/* header: svijetli tekst iznad tamnog hera, tamni nakon skrolanja */
.b-header:not(.is-scrolled):not(.is-open) .b-menu a,.b-header:not(.is-scrolled):not(.is-open) .b-header__tel{color:var(--cream)}
.b-header:not(.is-scrolled):not(.is-open) .b-brand__logo--dark{opacity:0}
.b-header:not(.is-scrolled):not(.is-open) .b-brand__logo--light{opacity:1}
.b-header:not(.is-scrolled) .b-header__cta{background:var(--rose);color:var(--brown)}
@media (min-width:961px){
	.b-header:not(.is-scrolled) .b-nav{background:rgba(61,43,38,.62);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:6px 22px;border-radius:999px}
	.b-header:not(.is-scrolled) .b-header__tel{background:rgba(61,43,38,.62);backdrop-filter:blur(12px);padding:9px 16px;border-radius:999px}
}
.b-ghost{-webkit-text-stroke:1px rgba(228,186,178,.14)!important}

/* ---------------- HERO */
.b-hero{position:relative;background:var(--brown);color:var(--cream);overflow:hidden;isolation:isolate}
.b-hero::before{content:"";position:absolute;width:900px;height:900px;left:-300px;top:-380px;border-radius:50%;background:radial-gradient(circle,rgba(228,186,178,.18),transparent 62%);z-index:-1}
.b-hero__grid{display:grid;grid-template-columns:1.12fr .88fr;min-height:calc(100vh - 64px);min-height:calc(100svh - 64px)}
.b-hero__left{padding:calc(var(--hh) + 48px) clamp(24px,5vw,80px) 56px max(var(--gut),calc((100vw - 1400px)/2 + var(--gut)));display:flex;flex-direction:column;justify-content:center;gap:24px}
.b-h1{font-size:clamp(3.2rem,8vw,8.4rem);line-height:.9;letter-spacing:-.055em;font-weight:700;color:var(--cream)}
.b-h1__l1,.b-h1__l2{display:block;overflow:hidden}
.b-h1__l1{animation:b-mask 1.1s var(--ease) .2s both}
.b-h1__l2{background:var(--gold);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:.06em;animation:b-mask 1.1s var(--ease) .38s both,b-shine 8s linear 1.6s infinite}
.b-h1__sub{display:block;font-family:var(--f-body);font-size:clamp(.95rem,1.1vw,1.1rem);font-weight:600;letter-spacing:.02em;color:var(--rose);margin-top:26px;animation:b-up .9s var(--ease) .6s both}
@keyframes b-mask{from{clip-path:inset(0 0 100% 0);transform:translateY(40%)}to{clip-path:inset(0 0 0 0);transform:none}}
@keyframes b-up{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes b-shine{from{background-position:0 0}to{background-position:200% 0}}
.b-hero__eb{animation:b-up .8s var(--ease) .1s both}
.b-hero__p{color:rgba(250,247,244,.75);max-width:520px;animation:b-up .9s var(--ease) .75s both}
.b-hero__left .b-btns{animation:b-up .9s var(--ease) .9s both}
.b-hero__tel{display:inline-flex;align-items:center;gap:14px;text-decoration:none;color:var(--cream);font-family:var(--f-head);font-size:1.5rem;font-weight:600;letter-spacing:-.02em;animation:b-up .9s var(--ease) 1s both;width:max-content}
.b-hero__tel .bi{width:48px;height:48px;padding:13px;border-radius:50%;border:1px solid rgba(250,247,244,.25);color:var(--rose)}
.b-hero__tel small{display:block;font-family:var(--f-body);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(250,247,244,.55);font-weight:600}
.b-hero__right{position:relative}
.b-hero__media{position:absolute;inset:0;overflow:hidden;animation:b-reveal 1.4s cubic-bezier(.77,0,.18,1) .15s both}
.b-hero__img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;animation:b-zoom 2.4s var(--ease) .15s both}
@keyframes b-reveal{from{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0 0 0 0)}}
@keyframes b-zoom{from{transform:scale(1.2)}to{transform:scale(1)}}
.b-seal{position:absolute;left:-74px;bottom:14%;width:148px;height:148px;border-radius:50%;background:var(--rose-d);display:grid;place-items:center;box-shadow:0 20px 50px -18px rgba(0,0,0,.5);animation:b-up .9s var(--ease) 1.2s both;z-index:2}
.b-seal svg{position:absolute;inset:0;width:100%;height:100%;animation:b-spin 22s linear infinite}
.b-seal text{font-family:var(--f-body);font-size:13.6px;font-weight:700;letter-spacing:.2em;fill:var(--brown)}
.b-seal img{width:44px;height:auto}
@keyframes b-spin{to{transform:rotate(360deg)}}
.b-hero__spk .b-spk--1{top:12%;right:12%}.b-hero__spk .b-spk--2{top:20%;right:24%}.b-hero__spk .b-spk--3{top:9%;right:30%}
.b-hero__marqw{position:relative}
.b-marq{height:64px;display:flex;align-items:center;overflow:hidden;background:var(--rose);color:var(--brown);border-top:1px solid rgba(61,43,38,.15)}
.b-marq__t{display:flex;align-items:center;gap:28px;white-space:nowrap;animation:b-marq 36s linear infinite;padding-left:28px}
.b-marq__t span{font-family:var(--f-head);font-size:1.35rem;font-weight:600;letter-spacing:-.02em}
.b-marq__t .bi{width:18px;height:18px;color:var(--brown)}
@keyframes b-marq{to{transform:translateX(-50%)}}

/* ---------------- USLUGE: indeks */
.b-u__top{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,5vw,80px);align-items:end}
.b-index{border-top:1px solid var(--line)}
.b-idx{display:grid;grid-template-columns:90px 1fr 150px 56px;gap:24px;align-items:center;padding:26px 0;border-bottom:1px solid var(--line);text-decoration:none;position:relative;transition:padding .5s var(--ease)}
.b-idx::before{content:"";position:absolute;inset:0;background:var(--rose-xl);transform:scaleY(0);transform-origin:bottom;transition:transform .5s var(--ease);z-index:-1;border-radius:12px}
.b-idx:hover{padding-left:20px;padding-right:20px}
.b-idx:hover::before{transform:none}
.b-index li{position:relative;z-index:0}
.b-idx__n{font-family:var(--f-head);font-size:2.8rem;font-weight:300;color:var(--rose-num);letter-spacing:-.04em}
.b-idx__t strong{display:block;font-family:var(--f-head);font-size:clamp(1.5rem,2.4vw,2.3rem);font-weight:600;letter-spacing:-.03em;line-height:1.1}
.b-idx__t small{display:block;color:var(--ink-soft);font-size:.98rem;margin-top:6px}
.b-idx__img{width:150px;aspect-ratio:4/3;border-radius:12px;overflow:hidden}
.b-idx__img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.b-idx:hover .b-idx__img img{transform:scale(1.12)}
.b-idx__go .bi{width:56px;height:56px;padding:16px;border-radius:50%;border:1px solid var(--line);transition:background .4s,color .4s,transform .4s var(--ease)}
.b-idx:hover .b-idx__go .bi{background:var(--brown);color:var(--cream);transform:rotate(-45deg)}

/* ---------------- ZGRADE: ljepljivi stupac */
.b-sec--zgrade{background:var(--paper)}
.b-sticky{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(32px,6vw,110px);align-items:start}
.b-z__left{position:sticky;top:calc(var(--hh) + 24px)}
.b-bignum{display:block;font-family:var(--f-head);font-size:clamp(5rem,10vw,9rem);font-weight:200;line-height:.8;letter-spacing:-.06em;color:var(--rose-num)}
.b-z__img{position:relative;border-radius:var(--r-l);overflow:hidden;margin-top:8px;aspect-ratio:4/3}
.b-z__img img{width:100%;height:100%;object-fit:cover}
.b-pill{position:absolute;left:14px;bottom:14px;display:inline-flex;gap:8px;align-items:center;padding:9px 15px;border-radius:999px;background:var(--cream);font-weight:600;font-size:.85rem}
.b-pill .bi{width:16px;height:16px;color:var(--accent)}
.b-z__right{gap:26px;padding-top:12px}
.b-quote--xl .bi{width:40px;height:40px}
.b-quote--xl p{font-size:clamp(1.6rem,2.6vw,2.4rem);line-height:1.15}
.b-checks--lines{gap:0;border-top:1px solid var(--line)}
.b-checks--lines li{padding:14px 0;border-bottom:1px solid var(--line)}
.b-freq{display:grid;border-top:1px solid var(--line)}
.b-freq li{display:grid;grid-template-columns:200px 1fr auto;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}
.b-freq strong{font-family:var(--f-head);font-size:1.8rem;font-weight:600;letter-spacing:-.03em}
.b-freq span{color:var(--ink-soft)}
.b-freq em{font-style:normal;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;padding:5px 12px;border-radius:999px;background:var(--brown);color:var(--cream)}
.b-freq .is-top strong{color:var(--accent)}
.b-steps--num{grid-template-columns:1fr;gap:0;counter-reset:n}
.b-steps--num .b-step{display:grid;grid-template-columns:70px 1fr;column-gap:16px;padding:18px 0;border-bottom:1px solid var(--line);counter-increment:n}
.b-steps--num .b-step__n{grid-row:span 2;font-size:0}
.b-steps--num .b-step__n::before{content:"0" counter(n);font-family:var(--f-head);font-size:2.4rem;font-weight:300;letter-spacing:-.04em;color:var(--rose-num)}
.b-steps--num h3{font-family:var(--f-head);font-size:1.3rem;font-weight:600;margin:4px 0}

/* ---------------- PIJETET */
.b-p__hero{position:relative;min-height:88vh;display:flex;align-items:center;justify-content:flex-end;overflow:hidden}
.b-p__bandw{position:absolute;inset:0}
.b-band{position:absolute;inset:0}
.b-band img{width:100%;height:100%;object-fit:cover}
.b-band::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(61,43,38,0) 30%,rgba(61,43,38,.55) 100%)}
.b-p__over{position:relative;width:100%;max-width:var(--wrap);margin:0 auto;padding:80px var(--gut);display:flex;justify-content:flex-end}
.b-p__card{background:var(--brown);color:rgba(250,247,244,.82);border-radius:var(--r-l);padding:clamp(28px,4vw,52px);max-width:600px;gap:18px;box-shadow:0 40px 80px -30px rgba(0,0,0,.6)}
.b-p__card .b-h2{color:var(--cream);font-size:clamp(2rem,3.4vw,3.2rem)}
.b-p__card .b-tagline{color:var(--rose)}
.b-p__card .b-quote p{color:var(--cream);font-size:1.35rem}
.b-p__card .b-quote .bi{color:var(--rose)}
.b-sec--rose{background:var(--rose-xl)}
.b-p__row{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,6vw,100px);align-items:start}
.b-steps--3{grid-template-columns:1fr}
.b-steps--3 .b-step__n{display:block}

/* ---------------- OSTALE */
.b-o{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(28px,5vw,80px);align-items:center}
.b-o--rev{grid-template-columns:.85fr 1.15fr}
.b-o--rev .b-o__img{order:2}
.b-o__img{border-radius:var(--r-l);overflow:hidden;aspect-ratio:5/4}
.b-o__img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.b-o:hover .b-o__img img{transform:scale(1.04)}
.b-o__txt{gap:16px}
.b-o__eb{font-family:var(--f-head);font-size:4rem;font-weight:200;letter-spacing:-.05em;line-height:.9;color:var(--rose-num)}
.b-o__h{font-size:clamp(2rem,3vw,2.8rem)!important;line-height:1.05!important}
.b-quote--sm .bi{width:24px;height:24px}
.b-quote--sm p{font-size:1.3rem}

/* ---------------- USKORO */
.b-sec--dark{background:var(--brown);color:rgba(250,247,244,.8)}
.b-sec--dark .b-h2,.b-sec--dark h3{color:var(--cream)}
.b-sec--dark .b-quote p{color:var(--cream)}
.b-sec--dark .b-quote .bi{color:var(--rose)}
.b-sec--sanitacija{overflow:hidden}
.b-ghostw{position:absolute;inset:auto 0 -.18em 0;pointer-events:none}
.b-ghost{display:block;font-family:var(--f-head);font-size:clamp(7rem,22vw,20rem);font-weight:800;letter-spacing:-.06em;line-height:.8;color:transparent;-webkit-text-stroke:1px rgba(228,186,178,.22);text-align:right;padding-right:var(--gut)}
.b-s__row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,80px);align-items:start;position:relative}
.b-soon{background:var(--rose);color:var(--brown)}

/* ---------------- O NAMA */
.b-statement{font-size:clamp(2.6rem,6.4vw,6.4rem)!important;line-height:.98!important;letter-spacing:-.05em!important;max-width:14ch}
.b-n__row{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(28px,6vw,100px);align-items:start}
.b-n__img{border-radius:var(--r-l);overflow:hidden;aspect-ratio:3/4}
.b-n__img img{width:100%;height:100%;object-fit:cover}
.b-n__txt{gap:24px}
.b-values{grid-template-columns:repeat(3,1fr);gap:24px;margin-top:12px}
.b-values li{text-align:left;padding:20px 0 0;border-top:2px solid var(--brown)}
.b-values span{font-family:var(--f-head);font-size:.9rem;font-weight:700;color:var(--accent)}
.b-values h3{font-family:var(--f-head);font-size:1.35rem;margin:8px 0}

/* ---------------- PODRUČJE */
.b-sec--podrucje{background:var(--rose-xl)}
.b-g__row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,80px);align-items:center}
.b-g__h{font-size:clamp(3rem,7vw,6.6rem)!important;line-height:.92!important;letter-spacing:-.05em!important}
.b-places{gap:6px 18px}
.b-places li{padding:0;border-radius:0;font-family:var(--f-head);font-size:1.25rem;font-weight:600;letter-spacing:-.02em}
.b-places li:not(:last-child)::after{content:"·";margin-left:18px;color:var(--rose-d)}
.b-g__img{border-radius:var(--r-l);overflow:hidden;aspect-ratio:4/5}
.b-g__img img{width:100%;height:100%;object-fit:cover}

/* ---------------- FAQ */
.b-f__row{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(28px,6vw,100px);align-items:start}
.b-f__l{position:sticky;top:calc(var(--hh) + 24px)}
.b-f__l a{color:var(--accent);font-weight:600}
.b-faq__i{border-radius:0;border-width:0 0 1px;background:none}
.b-faq__i[open]{box-shadow:none;border-color:var(--line)}
.b-faq summary{padding:22px 0}
.b-faq summary h3{font-family:var(--f-head);font-size:1.2rem;font-weight:600;letter-spacing:-.02em}
.b-faq__a{padding:0 0 22px}
.b-faq{border-top:1px solid var(--line);gap:0}

/* ---------------- KONTAKT */
.b-k__row{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,80px);align-items:start}
.b-k__h{font-size:clamp(3rem,6vw,5.6rem)!important;line-height:.95!important;letter-spacing:-.05em!important}
.b-sec--kontakt .b-lead{color:rgba(250,247,244,.85)}
.b-sec--kontakt .b-contact .bi{background:rgba(250,247,244,.08);color:var(--rose);box-shadow:none}
.b-sec--kontakt .b-contact small{color:rgba(250,247,244,.55)}
.b-sec--kontakt .b-contact a,.b-sec--kontakt .b-contact strong{color:var(--cream)}
.b-formcard{border-radius:var(--r-l)}
.b-formcard .fluentform .ff-btn-submit{border-radius:12px;font-weight:700}
.b-formcard .fluentform .ff-el-form-control{border-radius:10px}
.b-footer{border-top:1px solid rgba(250,247,244,.1)}

@media (max-width:1100px){
	.b-idx{grid-template-columns:64px 1fr 56px}
	.b-idx__img{display:none}
}
@media (max-width:960px){
	.b-hero__grid{grid-template-columns:1fr;min-height:0}
	.b-hero__left{padding:calc(var(--hh) + 28px) var(--gut) 40px;order:2}
	.b-hero__right{height:46svh;order:1}
	.b-hero__grid{display:flex;flex-direction:column}
	.b-hero__right{order:1;margin-top:0}
	.b-seal{left:auto;right:18px;bottom:-56px;width:112px;height:112px}
	.b-seal text{font-size:13.6px}
	.b-hero__left{order:2;padding-top:52px}
	.b-u__top,.b-sticky,.b-p__row,.b-o,.b-o--rev,.b-s__row,.b-n__row,.b-g__row,.b-f__row,.b-k__row{grid-template-columns:1fr}
	.b-o--rev .b-o__img{order:0}
	.b-z__left,.b-f__l{position:static}
	.b-p__hero{min-height:0;flex-direction:column;align-items:stretch}
	.b-p__bandw{position:relative;height:52vw}
	.b-p__over{padding:0;margin-top:-40px}
	.b-p__card{border-radius:var(--r-l) var(--r-l) 0 0;max-width:none}
	.b-freq li{grid-template-columns:1fr auto}
	.b-freq span{grid-column:1/-1;grid-row:2}
	.b-values{grid-template-columns:1fr}
	.b-n__img{aspect-ratio:16/10}
	.b-g__img{aspect-ratio:16/10}
}
@media (max-width:960px){
	.b-header:not(.is-scrolled):not(.is-open) .b-brand__logo--dark{opacity:1}
	.b-header:not(.is-scrolled):not(.is-open) .b-brand__logo--light{opacity:0}
	.b-hero__media::after{content:"";position:absolute;inset:0 0 auto;height:110px;background:linear-gradient(180deg,rgba(250,247,244,.85),rgba(250,247,244,0))}
}
