/* ==========================================================================
   Trilece.ba – Core stilovi
   Boje se vežu na Elementor globalne boje (Site Settings), pa promjena
   palete u Elementoru automatski mijenja i efekte ispod.
   ========================================================================== */

:root{
	--tb-choc: var(--e-global-color-primary, #3A1F14);
	--tb-caramel: var(--e-global-color-secondary, #C0773A);
	--tb-text: var(--e-global-color-text, #6B5444);
	--tb-cream: var(--e-global-color-cream, #F8EADA);
	--tb-milk: var(--e-global-color-tbmilk, #FFF8F0);
	--tb-gold: var(--e-global-color-tbgold, #E2A65B);
	--tb-dark: var(--e-global-color-tbdark, #2A140B);
	--tb-darker: var(--e-global-color-tbdarker, #1C0D06);
	--tb-pistachio: var(--e-global-color-tbpistachio, #8FA35A);
	--tb-berry: var(--e-global-color-tbberry, #B3283D);
	--tb-radius: 28px;
	--tb-radius-sm: 18px;
	--tb-ease: cubic-bezier(.22,.8,.2,1);
	--tb-shadow: 0 1px 0 rgba(255,255,255,.7) inset, 0 24px 60px -28px rgba(58,31,20,.35), 0 8px 18px -12px rgba(58,31,20,.18);
	--tb-shadow-lg: 0 1px 0 rgba(255,255,255,.7) inset, 0 40px 80px -30px rgba(58,31,20,.45), 0 14px 30px -14px rgba(58,31,20,.25);
	--tb-header-h: 84px;
}

html{scroll-behavior:smooth;scroll-padding-top:var(--tb-header-h)}
body.tb-site{background-color:var(--tb-milk);color:var(--tb-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip}
.tb-site .elementor[data-elementor-type="wp-page"],.tb-site .elementor[data-elementor-type="footer"]{overflow-x:clip}
.tb-site ::selection{background:var(--tb-caramel);color:#fff}
.tb-site .elementor-heading-title{font-variation-settings:"SOFT" 100;text-wrap:balance}
.tb-site .elementor-widget-text-editor p{text-wrap:pretty}
.tb-site .elementor-widget-text-editor p:last-child{margin-bottom:0}

/* Naglašena riječ u naslovima: <em>…</em> → karamel rukopis */
.tb-site .elementor-heading-title em{
	font-family:'Kaushan Script', cursive;
	font-style:normal;font-weight:400;
	color:var(--tb-caramel);
	letter-spacing:0;
	font-variation-settings:normal;
	padding-right:.06em;
	background:linear-gradient(100deg,var(--tb-caramel) 10%,var(--tb-gold) 55%,var(--tb-caramel) 90%);
	-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.tb-dark .elementor-heading-title em{background:linear-gradient(100deg,var(--tb-gold),#F3C98B 50%,var(--tb-gold));-webkit-background-clip:text;background-clip:text}

/* Nadnaslov (eyebrow) sa srcem */
.tb-eyebrow .elementor-heading-title{display:inline-flex;align-items:center;gap:12px}
.tb-eyebrow .elementor-heading-title::before{content:"";width:28px;height:2px;border-radius:2px;background:currentColor;opacity:.7}
.tb-eyebrow .elementor-heading-title::after{content:"♥";font-size:.95em;letter-spacing:0;opacity:.9}
.tb-section-head .tb-eyebrow .elementor-heading-title::after{content:"";width:28px;height:2px;border-radius:2px;background:currentColor;opacity:.7}

.e-con > .elementor-widget.tb-measure,.tb-measure{max-width:760px !important;margin-inline:auto}
.tb-section{position:relative;isolation:isolate}

/* --------------------------------------------------------------------------
   DUGMAD
   -------------------------------------------------------------------------- */
.tb-btn .elementor-button{
	position:relative;overflow:hidden;isolation:isolate;
	border-radius:999px;
	transition:transform .35s var(--tb-ease), box-shadow .35s var(--tb-ease), background-color .35s, color .35s, border-color .35s;
	will-change:transform;
}
.tb-btn .elementor-button .elementor-button-icon{transition:transform .35s var(--tb-ease)}
.tb-btn .elementor-button svg,.tb-btn .elementor-button .e-font-icon-svg{fill:currentColor !important}
.tb-btn .elementor-button:hover .elementor-button-icon{transform:translateX(4px)}
.tb-btn--primary .elementor-button{
	background:linear-gradient(135deg,#D58B47 0%,var(--tb-caramel) 45%,#A65A26 100%);
	color:#FFF8F0;
	box-shadow:0 1px 0 rgba(255,255,255,.35) inset,0 14px 30px -12px rgba(192,119,58,.75);
}
.tb-btn--primary .elementor-button::after{
	content:"";position:absolute;inset:0;z-index:-1;
	background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);
	transform:translateX(-120%);transition:transform .8s var(--tb-ease);
}
.tb-btn--primary .elementor-button:hover{transform:translateY(-3px);color:#fff;box-shadow:0 1px 0 rgba(255,255,255,.35) inset,0 22px 40px -14px rgba(192,119,58,.85)}
.tb-btn--primary .elementor-button:hover::after{transform:translateX(120%)}

.tb-btn--ghost .elementor-button{
	background:rgba(255,255,255,.55);color:var(--tb-choc);
	border:1.5px solid rgba(58,31,20,.18);
	-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
}
.tb-btn--ghost .elementor-button:hover{background:var(--tb-choc);color:var(--tb-milk);border-color:var(--tb-choc);transform:translateY(-3px)}

.tb-btn--whatsapp .elementor-button{background:#1FAF5A;color:#fff;box-shadow:0 14px 30px -14px rgba(31,175,90,.8)}
.tb-btn--whatsapp .elementor-button:hover{background:#17964c;color:#fff;transform:translateY(-3px)}

.tb-btn--link .elementor-button{background:none !important;padding:0 !important;color:var(--tb-caramel);box-shadow:none;border-radius:0;font-weight:800}
.tb-btn--link .elementor-button:hover{color:var(--tb-choc)}

/* --------------------------------------------------------------------------
   HEADER (providan → staklo na skrol)
   -------------------------------------------------------------------------- */
.tb-header{
	position:fixed !important;top:0;left:0;right:0;z-index:999;
	transition:background-color .4s, box-shadow .4s, padding .4s, -webkit-backdrop-filter .4s, backdrop-filter .4s;
	background:transparent;
}
body.admin-bar .tb-header{top:32px}
@media (max-width:782px){body.admin-bar .tb-header{top:46px}}
@media (max-width:600px){body.admin-bar .tb-header{top:0}body.admin-bar.tb-scrolled .tb-header{top:0}}
.tb-scrolled .tb-header{
	background:rgba(255,248,240,.78);
	-webkit-backdrop-filter:saturate(1.4) blur(18px);backdrop-filter:saturate(1.4) blur(18px);
	box-shadow:0 1px 0 rgba(58,31,20,.06),0 18px 40px -24px rgba(58,31,20,.35);
	--padding-top:8px !important;--padding-bottom:8px !important;
}
.tb-header .tb-logo img{transition:transform .4s var(--tb-ease), width .4s var(--tb-ease);filter:drop-shadow(0 6px 14px rgba(58,31,20,.18))}
.tb-header .tb-logo a:hover img{transform:scale(1.04) rotate(-1deg)}
.tb-header .tb-nav .elementor-nav-menu--main .elementor-item{position:relative;border-radius:999px;transition:color .3s, background-color .3s}
.tb-header .tb-nav .elementor-nav-menu--main .elementor-item:hover,
.tb-header .tb-nav .elementor-nav-menu--main .elementor-item.elementor-item-active{background:rgba(192,119,58,.12)}
.tb-header .tb-nav .elementor-menu-toggle{background:rgba(255,255,255,.7);border-radius:14px;padding:10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 6px 18px -10px rgba(58,31,20,.4)}
.tb-header .tb-nav .elementor-nav-menu--dropdown{
	background:rgba(255,248,240,.97);border-radius:22px;margin-top:12px;overflow:hidden;
	box-shadow:0 30px 60px -20px rgba(58,31,20,.45);
	-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
}
.tb-header .tb-nav .elementor-nav-menu--dropdown a{justify-content:center;padding:16px 20px !important;border-bottom:1px solid rgba(58,31,20,.06)}
.tb-header .tb-nav .elementor-nav-menu--dropdown a:hover,
.tb-header .tb-nav .elementor-nav-menu--dropdown a.elementor-item-active{background:rgba(192,119,58,.12) !important;color:var(--tb-caramel) !important}
.tb-header-cta .elementor-button{padding:13px 22px}
@media (max-width:767px){.tb-header-cta .elementor-button{padding:11px 16px;font-size:14px}}

.tb-header > .e-con-inner{flex-wrap:nowrap !important}
.tb-header .tb-logo{flex:0 0 auto}
.tb-header .tb-header__right{flex:1 1 auto;width:auto !important;min-width:0}

/* Jednostavna navigacija (bez Elementor Pro) */
.tb-nav--simple .elementor-icon-list-icon{display:none !important}
.tb-nav--simple .elementor-icon-list-item a{font-weight:600;color:var(--tb-choc)}
.tb-nav--simple .elementor-icon-list-item a:hover{color:var(--tb-caramel)}
@media (max-width:1024px){.tb-nav--simple{display:none}}

/* U editoru header ne pluta */
.elementor-editor-active .tb-header,
.elementor-editor-preview .tb-header{position:relative !important;top:0 !important}

/* --------------------------------------------------------------------------
   HERO
   -------------------------------------------------------------------------- */
.tb-hero{overflow:hidden;background:
	radial-gradient(60% 70% at 85% 30%, rgba(226,166,91,.35) 0%, rgba(226,166,91,0) 60%),
	radial-gradient(45% 55% at 10% 90%, rgba(192,119,58,.18) 0%, rgba(192,119,58,0) 60%),
	linear-gradient(180deg,#FFF8F0 0%,#F8EADA 100%) !important}
.tb-hero::before{
	content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.35;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .23 0 0 0 0 .12 0 0 0 0 .08 0 0 0 .06 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.tb-hero::after{
	content:"";position:absolute;width:620px;height:620px;right:-160px;top:-160px;z-index:-1;border-radius:50%;
	border:1.5px dashed rgba(192,119,58,.25);animation:tb-spin 60s linear infinite;
}
@keyframes tb-spin{to{transform:rotate(360deg)}}
.tb-hero-title .elementor-heading-title em{display:inline-block;font-size:1.08em;line-height:1;transform:rotate(-3deg) translateY(.04em);transform-origin:left}
.tb-hero-lead{max-width:560px}
.tb-hero-proof .elementor-icon-list-items{gap:10px 12px}
.tb-hero-proof .elementor-icon-list-item{
	background:rgba(255,255,255,.6);border:1px solid rgba(58,31,20,.08);border-radius:999px;padding:8px 16px !important;margin:0 !important;
	-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-weight:600;color:var(--tb-choc);font-size:14px;
}
.tb-hero-proof .elementor-icon-list-item::after{display:none !important}
.tb-hero-proof .elementor-icon-list-icon i,.tb-hero-proof .elementor-icon-list-icon svg{color:var(--tb-caramel);fill:var(--tb-caramel)}

.tb-hero-visual{position:relative;min-height:560px;justify-content:center}
.tb-arch{width:min(100%,470px) !important;max-width:470px;position:relative;z-index:1}
.tb-arch img{
	width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 70%;
	border-radius:999px 999px 36px 36px !important;
	box-shadow:0 0 0 10px rgba(255,255,255,.65),0 50px 90px -30px rgba(58,31,20,.55);
	animation:tb-float 7s ease-in-out infinite;
}
@keyframes tb-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.tb-float-thumb{position:absolute !important;z-index:2;width:150px !important;max-width:150px}
.tb-float-thumb img{width:150px;height:150px;object-fit:cover;object-position:50% 72%;border-radius:50% !important;border:6px solid #fff;box-shadow:0 24px 50px -18px rgba(58,31,20,.55)}
.tb-float-thumb--a{left:0;bottom:60px}
.tb-float-thumb--a img{animation:tb-float 6s ease-in-out infinite .6s}
.tb-float-thumb--b{right:-6px;top:90px;width:118px !important;max-width:118px}
.tb-float-thumb--b img{width:118px;height:118px;animation:tb-float 8s ease-in-out infinite 1.2s}
.tb-float-badge{position:absolute !important;z-index:3;width:auto !important;max-width:none}
.tb-float-badge .elementor-heading-title{
	display:inline-flex;align-items:center;gap:8px;white-space:nowrap;
	background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.9);
	-webkit-backdrop-filter:blur(14px) saturate(1.4);backdrop-filter:blur(14px) saturate(1.4);
	padding:12px 18px;border-radius:999px;box-shadow:0 18px 40px -18px rgba(58,31,20,.45);
}
.tb-float-badge .elementor-heading-title span{color:var(--tb-caramel);font-size:1.1em}
.tb-float-badge--top{left:2%;top:40px}
.tb-float-badge--bottom{right:0;bottom:30px}

@media (max-width:1024px){
	.tb-hero-copy .tb-eyebrow .elementor-heading-title::before,.tb-hero-copy .tb-eyebrow .elementor-heading-title::after{display:none}
	.tb-hero-copy .tb-eyebrow .elementor-heading-title{letter-spacing:1.6px}
	.tb-hero-copy{align-items:center;text-align:center}
	.tb-hero-copy .elementor-widget{text-align:center}
	.tb-hero-lead{margin-inline:auto}
	.tb-hero-ctas{justify-content:center}
	.tb-hero-proof .elementor-icon-list-items{justify-content:center}
	.tb-hero-visual{min-height:520px}
}
@media (max-width:767px){
	.tb-hero::after{width:380px;height:380px;right:-140px;top:-80px}
	.tb-hero-visual{min-height:440px}
	.tb-arch{width:min(82%,360px) !important}
	.tb-float-thumb{width:96px !important}
	.tb-float-thumb img{width:96px;height:96px;border-width:4px}
	.tb-float-thumb--b{width:80px !important;top:50px;right:0}
	.tb-float-thumb--b img{width:80px;height:80px}
	.tb-float-thumb--a{bottom:40px}
	.tb-float-badge .elementor-heading-title{padding:9px 13px;font-size:12.5px}
	.tb-float-badge--top{top:10px;left:0}
	.tb-float-badge--bottom{bottom:6px}
	.tb-hero-ctas .elementor-button{width:100%;justify-content:center}
}

/* --------------------------------------------------------------------------
   MARQUEE (čokoladna traka)
   -------------------------------------------------------------------------- */
.tb-marquee{overflow:visible !important;z-index:2;transform:rotate(-1.2deg) scale(1.02);box-shadow:0 20px 50px -20px rgba(28,13,6,.6)}
.tb-marquee::after{
	content:"";position:absolute;left:0;right:0;top:100%;height:34px;pointer-events:none;
	background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 34' preserveAspectRatio='none'%3E%3Cpath fill='%232A140B' d='M0 0h600v6c-14 0-16 10-30 10s-14-9-30-9-12 22-28 22-14-20-30-20-14 8-30 8-14-12-30-12-12 18-28 18-16-16-32-16-12 6-28 6-16-10-30-10-14 24-30 24-14-22-30-22-16 9-30 9-14-6-30-6-12 15-28 15-16-15-32-15-14 7-30 7-14-10-30-10-14 20-30 20-14-18-28-18-16 8-32 8-14-5-30-5V0z'/%3E%3C/svg%3E") repeat-x;background-size:600px 34px;
}
.tb-marquee .e-con-inner,.tb-marquee > .elementor-element{overflow:hidden;width:100%}
.tb-marquee__text{width:100%}
.tb-marquee__text p{margin:0}
.tb-marquee__track{display:flex;width:max-content;align-items:center;gap:32px;animation:tb-marquee 38s linear infinite;white-space:nowrap}
.tb-marquee__track span{display:inline-block}
.tb-marquee__track i{font-style:normal;color:var(--tb-gold);font-size:.8em}
.tb-marquee:hover .tb-marquee__track{animation-play-state:paused}
@keyframes tb-marquee{to{transform:translateX(-50%)}}

/* --------------------------------------------------------------------------
   KARTICE (opšte)
   -------------------------------------------------------------------------- */
.tb-card{
	background:#fff;border-radius:var(--tb-radius);
	box-shadow:var(--tb-shadow);
	border:1px solid rgba(58,31,20,.06);
	transition:transform .5s var(--tb-ease), box-shadow .5s var(--tb-ease), border-color .5s;
}
.tb-card:hover{transform:translateY(-8px);box-shadow:var(--tb-shadow-lg);border-color:rgba(192,119,58,.25)}

/* Šta je trileće – koraci */
.tb-about{background:linear-gradient(180deg,var(--tb-milk),#fff 60%,var(--tb-milk))}
.tb-step{position:relative;overflow:hidden}
.tb-step::before{content:"";position:absolute;width:220px;height:220px;right:-80px;top:-80px;border-radius:50%;background:radial-gradient(circle,rgba(226,166,91,.28),rgba(226,166,91,0) 70%);transition:transform .6s var(--tb-ease)}
.tb-step:hover::before{transform:scale(1.4)}
.tb-step__num .elementor-heading-title{
	font-size:64px !important;line-height:1 !important;font-style:italic;
	background:linear-gradient(135deg,var(--tb-gold),var(--tb-caramel));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}

/* --------------------------------------------------------------------------
   PRIČA
   -------------------------------------------------------------------------- */
.tb-story-visual{position:relative}
.tb-story-img img{
	width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--tb-radius) !important;
	box-shadow:var(--tb-shadow-lg);
	transform:rotate(-2deg);transition:transform .6s var(--tb-ease);
}
.tb-story-visual:hover .tb-story-img img{transform:rotate(0) scale(1.01)}
.tb-story-badge{position:absolute !important;right:-24px;bottom:-40px;width:170px !important;max-width:170px;z-index:2}
.tb-story-badge img{width:170px;height:170px;border-radius:50% !important;object-fit:cover;border:8px solid var(--tb-milk);box-shadow:0 24px 50px -18px rgba(58,31,20,.55);animation:tb-spin-slow 24s linear infinite}
@keyframes tb-spin-slow{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}
@media (max-width:767px){.tb-story-badge{width:110px !important;right:-6px;bottom:-30px}.tb-story-badge img{width:110px;height:110px;border-width:5px}}

.tb-quote blockquote{
	margin:6px 0 4px;padding:22px 26px 22px 30px;position:relative;
	background:linear-gradient(135deg,rgba(226,166,91,.14),rgba(255,255,255,.6));
	border-left:4px solid var(--tb-caramel);border-radius:0 var(--tb-radius-sm) var(--tb-radius-sm) 0;
}
.tb-quote blockquote cite{display:block;margin-top:10px;font-family:'Manrope',sans-serif;font-style:normal;font-size:14px;font-weight:700;letter-spacing:.06em;color:var(--tb-caramel)}

/* --------------------------------------------------------------------------
   MENI OKUSA
   -------------------------------------------------------------------------- */
.tb-flavors{background:
	radial-gradient(50% 40% at 0% 0%, rgba(226,166,91,.18), transparent 70%),
	radial-gradient(40% 40% at 100% 100%, rgba(143,163,90,.14), transparent 70%),
	var(--tb-milk) !important}
.tb-flavor{--tb-accent:var(--tb-caramel);overflow:hidden;position:relative}
.tb-flavor--kinder{--tb-accent:#A8743F}
.tb-flavor--oreo{--tb-accent:#3A2A24}
.tb-flavor--ferrero{--tb-accent:#C9963B}
.tb-flavor--pistacija{--tb-accent:var(--tb-pistachio)}
.tb-flavor--vocni{--tb-accent:var(--tb-berry)}
.tb-flavor::after{content:"";position:absolute;inset:auto 0 0 0;height:5px;background:var(--tb-accent);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--tb-ease)}
.tb-flavor:hover::after{transform:scaleX(1)}
.tb-flavor:hover{box-shadow:0 1px 0 rgba(255,255,255,.7) inset,0 40px 80px -30px color-mix(in srgb,var(--tb-accent) 70%,transparent),0 14px 30px -14px rgba(58,31,20,.25)}
.tb-flavor__img{overflow:hidden;margin:0 !important;width:100%}
.tb-flavor__img img{width:100%;aspect-ratio:1/1;object-fit:cover;object-position:50% 75%;display:block;border-radius:0 !important;transition:transform 1s var(--tb-ease), filter .6s}
.tb-flavor:hover .tb-flavor__img img{transform:scale(1.08);filter:saturate(1.12)}
.tb-chip{position:absolute !important;top:18px;left:18px;z-index:2;width:auto !important}
.tb-chip .elementor-heading-title{
	display:inline-block;padding:8px 14px;border-radius:999px;font-size:12px !important;letter-spacing:.08em;text-transform:uppercase;font-weight:800 !important;
	background:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.95);color:var(--tb-choc);
	-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 10px 24px -12px rgba(58,31,20,.5);
}
.tb-chip .elementor-heading-title::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--tb-accent);margin-right:8px;vertical-align:1px}
.tb-flavor__body{flex-grow:1}
.tb-flavor__body .elementor-widget-button{margin-top:auto}
.tb-flavors-note{text-align:center}

/* --------------------------------------------------------------------------
   ZAŠTO (tamno + glass)
   -------------------------------------------------------------------------- */
.tb-dark{color:var(--tb-cream)}
.tb-why{overflow:hidden;background:
	radial-gradient(50% 60% at 90% 10%, rgba(192,119,58,.38), transparent 65%),
	radial-gradient(40% 50% at 5% 95%, rgba(226,166,91,.22), transparent 65%),
	var(--tb-dark) !important}
.tb-why::before{
	content:"";position:absolute;inset:0;z-index:-1;opacity:.5;pointer-events:none;
	background-image:radial-gradient(rgba(248,234,218,.08) 1px, transparent 1px);background-size:22px 22px;
	-webkit-mask-image:linear-gradient(180deg,#000,transparent 80%);mask-image:linear-gradient(180deg,#000,transparent 80%);
}
.tb-glass{
	height:100%;
	background:linear-gradient(160deg,rgba(255,255,255,.10),rgba(255,255,255,.03));
	border:1px solid rgba(248,234,218,.14);border-radius:var(--tb-radius);
	-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
	padding:34px 28px;
	transition:transform .5s var(--tb-ease), background .5s, border-color .5s, box-shadow .5s;
	box-shadow:0 1px 0 rgba(255,255,255,.08) inset;
}
.tb-glass:hover{transform:translateY(-8px);border-color:rgba(226,166,91,.5);background:linear-gradient(160deg,rgba(226,166,91,.18),rgba(255,255,255,.04));box-shadow:0 30px 60px -30px rgba(0,0,0,.6),0 0 0 1px rgba(226,166,91,.15)}
.tb-iconbox .elementor-icon{transition:transform .5s var(--tb-ease)}
.tb-iconbox .elementor-icon-box-title{margin-top:8px !important}
.tb-mini-step .elementor-icon-box-title{margin-top:0 !important}
.tb-iconbox:hover .elementor-icon{transform:rotate(-8deg) scale(1.08)}
.tb-glass .elementor-icon{background:linear-gradient(135deg,var(--tb-gold),var(--tb-caramel)) !important;color:var(--tb-dark) !important;fill:var(--tb-dark) !important;font-size:22px;padding:18px;box-shadow:0 14px 30px -12px rgba(226,166,91,.7)}
.tb-glass .elementor-icon svg{fill:var(--tb-dark)}
.tb-glass .elementor-icon-box-title{margin-bottom:10px}
.tb-counters{border-top:1px solid rgba(248,234,218,.12);margin-top:64px}
.tb-counter{text-align:center}
.tb-counter .elementor-counter-title{margin-top:6px}

/* --------------------------------------------------------------------------
   PRILIKE
   -------------------------------------------------------------------------- */
.tb-occasions{background:linear-gradient(180deg,var(--tb-milk),var(--tb-cream)) !important}
.tb-occasion{padding:34px 28px;height:100%}
.tb-occasion .elementor-icon{background:var(--tb-cream) !important;color:var(--tb-caramel) !important;fill:var(--tb-caramel) !important;font-size:22px;padding:18px;transition:background .4s, color .4s, transform .5s var(--tb-ease)}
.tb-occasion .elementor-icon svg{fill:currentColor}
.tb-occasion:hover .elementor-icon{background:linear-gradient(135deg,var(--tb-gold),var(--tb-caramel)) !important;color:#fff !important;fill:#fff !important}
.tb-occasion .elementor-icon-box-title{margin-bottom:10px}

.tb-banner{border-radius:calc(var(--tb-radius) + 8px);overflow:hidden;box-shadow:var(--tb-shadow-lg)}
.e-con > .elementor-widget.tb-banner__title,.tb-banner .tb-banner__title{max-width:640px !important}
.tb-banner::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);pointer-events:none}

/* --------------------------------------------------------------------------
   NARUDŽBA + FORMA
   -------------------------------------------------------------------------- */
.tb-order{background:
	radial-gradient(60% 60% at 100% 0%, rgba(226,166,91,.28), transparent 60%),
	linear-gradient(180deg,var(--tb-cream),var(--tb-milk)) !important}
.tb-mini-step{background:rgba(255,255,255,.6);border:1px solid rgba(58,31,20,.07);border-radius:var(--tb-radius-sm);padding:16px 18px;transition:transform .4s var(--tb-ease), background .4s}
.tb-mini-step:hover{transform:translateX(6px);background:#fff}
.tb-mini-step .elementor-icon{background:linear-gradient(135deg,var(--tb-gold),var(--tb-caramel)) !important;color:#fff !important;fill:#fff !important;font-size:15px;padding:13px}
.tb-mini-step .elementor-icon svg{fill:#fff}
.tb-mini-step .elementor-icon-box-title{font-size:18px !important;margin-bottom:2px !important}
.tb-mini-step .elementor-icon-box-description{font-size:15px !important;line-height:1.55 !important}
.tb-mini-step .elementor-icon-box-wrapper{align-items:center;gap:16px}
.tb-mini-step .elementor-icon-box-icon{margin:0 !important}

.tb-form-card{
	background:rgba(255,255,255,.82) !important;border:1px solid rgba(255,255,255,.95);border-radius:calc(var(--tb-radius) + 6px);
	-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
	box-shadow:0 50px 100px -40px rgba(58,31,20,.45),0 1px 0 #fff inset;position:relative;
}
.tb-form-card::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(135deg,rgba(226,166,91,.7),transparent 40%,transparent 60%,rgba(192,119,58,.5));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.tb-form .elementor-field-group .elementor-field-textual,
.tb-form .elementor-field-group select{
	background:var(--tb-milk) !important;border:1.5px solid rgba(58,31,20,.1) !important;border-radius:14px !important;
	min-height:52px;padding:12px 16px !important;color:var(--tb-choc) !important;font-size:16px !important;
	transition:border-color .25s, box-shadow .25s, background .25s;
}
.tb-form .elementor-field-group textarea.elementor-field-textual{min-height:110px}
.tb-form .elementor-field-group .elementor-field-textual:focus,
.tb-form .elementor-field-group select:focus{outline:none;background:#fff !important;border-color:var(--tb-caramel) !important;box-shadow:0 0 0 4px rgba(192,119,58,.15)}
.tb-form .elementor-field-label{margin-bottom:8px;font-size:12px !important}
.tb-form .elementor-select-wrapper::before{color:var(--tb-caramel)}
.tb-form .elementor-button[type=submit]{
	min-height:58px;border-radius:999px !important;
	background:linear-gradient(135deg,#D58B47 0%,var(--tb-caramel) 45%,#A65A26 100%) !important;color:#fff !important;
	box-shadow:0 18px 36px -14px rgba(192,119,58,.8);transition:transform .35s var(--tb-ease), box-shadow .35s;
}
.tb-form .elementor-button[type=submit]:hover{transform:translateY(-2px);box-shadow:0 26px 46px -16px rgba(192,119,58,.9)}
.tb-form .elementor-message{border-radius:14px;padding:14px 18px;margin-top:16px}
.tb-form .elementor-message-success{background:rgba(31,175,90,.1);color:#16723d}

/* --------------------------------------------------------------------------
   FOOTER
   -------------------------------------------------------------------------- */
.tb-footer{overflow:visible;background:
	radial-gradient(50% 80% at 100% 0%, rgba(192,119,58,.22), transparent 60%),
	var(--tb-darker) !important}
.tb-footer::before{
	content:"";position:absolute;left:0;right:0;top:-1px;height:40px;pointer-events:none;
	background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 40' preserveAspectRatio='none'%3E%3Cpath fill='%23FFF8F0' d='M0 0h600v8c-14 0-16 12-30 12s-14-11-30-11-12 26-28 26-14-24-30-24-14 10-30 10-14-14-30-14-12 21-28 21-16-19-32-19-12 7-28 7-16-12-30-12-14 28-30 28-14-26-30-26-16 11-30 11-14-7-30-7-12 18-28 18-16-18-32-18-14 8-30 8-14-12-30-12-14 24-30 24-14-21-28-21-16 9-32 9-14-6-30-6V0z'/%3E%3C/svg%3E") repeat-x;background-size:600px 40px;
}
.tb-footer-logo img{filter:drop-shadow(0 10px 24px rgba(0,0,0,.4))}
.tb-footer-list .elementor-icon-list-item a,.tb-footer-list .elementor-icon-list-text{transition:color .25s, transform .25s}
.tb-footer-list .elementor-icon-list-item:hover .elementor-icon-list-text{transform:translateX(4px)}
.tb-footer-list .elementor-icon-list-icon i,.tb-footer-list .elementor-icon-list-icon svg{font-size:12px;width:12px}
.tb-footer-cta-title .elementor-heading-title{font-size:30px !important}
.tb-footer__bottom{border-top:1px solid rgba(248,234,218,.12)}
.tb-footer__bottom p{margin:0}
.tb-heart{color:var(--tb-caramel);display:inline-block;animation:tb-beat 1.6s ease-in-out infinite}
@keyframes tb-beat{0%,100%{transform:scale(1)}15%{transform:scale(1.25)}30%{transform:scale(1)}}
.tb-socials .elementor-social-icon{background:rgba(248,234,218,.08) !important;border:1px solid rgba(248,234,218,.14);transition:transform .35s var(--tb-ease), background .35s}
.tb-socials .elementor-social-icon i,.tb-socials .elementor-social-icon svg{color:var(--tb-cream);fill:var(--tb-cream)}
.tb-socials .elementor-social-icon:hover{background:var(--tb-caramel) !important;transform:translateY(-4px)}
@media (max-width:767px){.tb-footer__bottom{text-align:center}}

/* --------------------------------------------------------------------------
   Pristupačnost i smanjeno kretanje
   -------------------------------------------------------------------------- */
.tb-site a:focus-visible,.tb-site .elementor-button:focus-visible{outline:3px solid var(--tb-gold);outline-offset:3px}
@media (prefers-reduced-motion:reduce){
	html{scroll-behavior:auto}
	.tb-marquee__track,.tb-arch img,.tb-float-thumb img,.tb-story-badge img,.tb-hero::after,.tb-heart{animation:none !important}
	.tb-card,.tb-glass,.tb-btn .elementor-button{transition:none}
}
