:root{--ink:#142922;--dark:#102820;--deep:#17392e;--lime:#c9f47f;--paper:#f6f7f0;--line:#d8e0d3;--mute:#495f53;font-family:"DM Sans",system-ui,sans-serif;color:var(--ink);background:var(--paper);line-height:1.55}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3,.brand,.quick b{font-family:"Bricolage Grotesque","DM Sans",system-ui,sans-serif;line-height:1.06;letter-spacing:-.045em}h1{font-size:clamp(2.65rem,5.6vw,6rem);font-weight:800;max-width:12ch;overflow-wrap:anywhere}h2{font-size:clamp(1.7rem,3.1vw,3.2rem)}h3{font-size:1.36rem}em{font-style:normal;color:#3f7057}.wrap{width:min(1216px,calc(100% - 64px));margin-inline:auto}.block{margin-block:clamp(42px,7vw,92px)}.header{position:sticky;top:0;background:#f6f7f0f2;backdrop-filter:blur(18px);z-index:8;border-bottom:1px solid var(--line)}.head{display:flex;align-items:center;justify-content:space-between;min-height:74px;gap:20px}.brand{display:flex;align-items:center;gap:10px;font-size:1.32rem;white-space:nowrap}.brand span{color:#427154}.desktop{display:flex;align-items:center;gap:clamp(10px,1.7vw,24px);font-size:.91rem;font-weight:650}.desktop a[aria-current],.desktop a:hover,.mobile-menu a[aria-current]{text-decoration:underline;text-underline-offset:6px}.desktop details{position:relative}.desktop summary{cursor:pointer}.desktop details div{position:absolute;top:34px;left:-15px;width:220px;padding:14px;background:white;border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 35px #10282020}.desktop details a{display:block;padding:8px}.menu-toggle,.bottom{display:none}.hero{margin-top:23px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.16fr);background:var(--dark);border-radius:30px;overflow:hidden;color:white;min-height:480px}.hero.inside{min-height:365px}.hero.inside h1{font-size:clamp(2.5rem,4.2vw,4.6rem);max-width:16ch}.hero-copy{padding:clamp(25px,4.1vw,68px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0}.hero em,.band em{color:var(--lime)}.hero p{margin-top:20px;font-size:clamp(1rem,1.5vw,1.19rem);color:#e0ebdf;max-width:37ch}.hours{display:flex;gap:9px;align-items:center;border:1px solid #7a9384;border-radius:100px;padding:6px 12px;font-size:.8rem;margin-bottom:19px}.hours i{width:8px;height:8px;border-radius:50%;background:var(--lime)}.hours[data-closed] i{background:#ffc481}.actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:9px 15px;border:1px solid transparent;border-radius:12px;font-weight:750;text-align:center}.primary{background:var(--lime);color:#172d21}.primary:hover{background:#dcffa3}.outline{background:transparent;color:inherit;border-color:currentColor}.outline:hover{background:#79957d29}.hero-image{position:relative;min-width:0}.hero-image img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:56% center}.image-label{position:absolute;right:16px;bottom:16px;border:1px solid #ffffff5c;background:#112b24d9;backdrop-filter:blur(10px);border-radius:100px;padding:7px 13px;font-size:.8rem}.image-label span{color:var(--lime);padding:0 5px}.quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:white;border:1px solid var(--line);border-radius:18px;margin-top:14px}.quick a{padding:15px clamp(12px,2vw,26px);display:grid;gap:4px}.quick a+a{border-left:1px solid var(--line)}.quick b{font-size:clamp(.92rem,2vw,1.55rem)}.quick span,.section-head span,.hint{color:var(--mute);font-size:.88rem}.section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:18px}.rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(200px,29%);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:13px;scrollbar-color:#81a289 transparent}.rail>*{scroll-snap-align:start;min-width:0}.service-rail{grid-auto-columns:calc((100% - 28px)/3)}.tile,.route{display:block;background:#fff;border:1px solid var(--line);border-radius:19px;padding:20px;min-height:164px}.tile:hover,.route:hover{border-color:#639271}.tile p{margin:8px 0 13px;color:var(--mute)}.tile b,.route a{font-size:.87rem}.tileicon{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:#e4efd9;font-size:1.2rem;margin-bottom:13px}.prose{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 38px}.prose article{border-top:1px solid var(--line);padding-top:18px}.prose h2{font-size:clamp(1.36rem,2.25vw,2.08rem);margin-bottom:10px}.prose p{font-size:1.02rem;max-width:65ch;color:var(--mute)}.band{background:var(--dark);color:#fff;padding:46px 0}.band .section-head span{color:#e5efdf}.route{background:#1b3b30;border-color:#557464}.route strong{color:var(--lime);font-size:2rem;letter-spacing:-.04em}.route small{font-size:.85rem}.route h3{margin:7px 0 12px}.route a span{color:var(--lime)}.gallery{grid-auto-columns:48%}.gallery figure{margin:0;background:white;border:1px solid var(--line);border-radius:17px;overflow:hidden}.gallery img{width:100%;aspect-ratio:16/9;object-fit:cover}.gallery figcaption{padding:10px 15px;font-size:.88rem}.guide{display:flex;gap:18px;align-items:center;justify-content:space-between;background:#e7efdc;padding:26px;border-radius:19px}.guide p{margin-top:8px}.panel{background:white;border:1px solid var(--line);border-radius:20px;padding:clamp(18px,3.5vw,36px)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-grid h2{font-size:clamp(1.4rem,2.7vw,2.2rem);margin-bottom:12px}label{display:block;font-weight:670;margin:10px 0}input,select,textarea{display:block;width:100%;max-width:100%;min-width:0;border:1px solid #a9baaa;background:#f8faf5;color:var(--ink);padding:10px 11px;border-radius:9px;margin-top:4px}textarea{resize:vertical}.result{background:var(--dark);color:#fff;padding:22px;border-radius:15px;display:grid;align-content:center;justify-items:start;gap:9px}.result output{color:var(--lime);font-weight:800;font-size:clamp(2rem,4.5vw,4rem);line-height:1.05;overflow-wrap:anywhere}.message{grid-column:1/-1}.table{background:white;border:1px solid var(--line);border-radius:17px;overflow:hidden}table{border-collapse:collapse;width:100%;text-align:left}caption{text-align:left;padding:14px 12px;font-weight:800}th,td{padding:10px 12px;border-top:1px solid var(--line)}td:last-child{font-weight:750}footer{background:#e7eddf;border-top:1px solid var(--line)}.footer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-block:30px}.footer a{display:block}.footer p{margin-top:7px}.skip{position:fixed;top:-60px;left:12px;z-index:10;padding:10px;background:white}.skip:focus{top:10px}:focus-visible{outline:3px solid #6a982c;outline-offset:3px}[hidden]{display:none!important}
@media(max-width:850px){.wrap{width:calc(100% - 36px)}.desktop{display:none}.menu-toggle{display:block;background:white;border:1px solid var(--line);border-radius:10px;padding:9px 12px;color:var(--ink);font-weight:700}.mobile-menu{display:grid;grid-template-columns:1fr 1fr;gap:2px;padding-bottom:12px}.mobile-menu a{padding:8px 4px}.hero{min-height:405px}.hero-copy{padding:24px}.hero .actions{gap:7px}.hero .button{font-size:.87rem}.bottom{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;z-index:9;bottom:0;left:0;right:0;background:#f6f7f0f2;backdrop-filter:blur(15px);border-top:1px solid var(--line);padding:5px max(10px,env(safe-area-inset-right)) max(5px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));gap:6px}.bottom a{display:grid;justify-items:center;align-content:center;min-height:48px;border-radius:11px;font-size:.73rem;font-weight:750;gap:1px}.bottom .mobile-call{background:var(--lime)}body{padding-bottom:calc(60px + env(safe-area-inset-bottom))}}
@media(max-width:600px){.wrap{width:calc(100% - 24px)}.head{min-height:58px}.hero{margin-top:10px;grid-template-columns:minmax(0,1fr);border-radius:20px}.hero h1{font-size:clamp(2.65rem,12vw,4rem)}.hero.inside h1{font-size:clamp(2.1rem,8vw,3.2rem)}.hero-copy{padding:21px}.hero p{margin-top:12px}.hours{margin-bottom:12px}.hero-image{aspect-ratio:1.7}.hero-image img{object-position:center}.image-label{bottom:8px;right:8px}.quick{margin-top:8px}.quick span{font-size:.72rem}.quick a{padding:10px 7px}.section-head{align-items:start;flex-direction:column}.service-rail,.rail{grid-auto-columns:72%}.gallery{grid-auto-columns:86%}.prose,.form-grid,.footer{grid-template-columns:minmax(0,1fr)}.guide{align-items:flex-start;flex-direction:column}.block{margin-block:38px}.band{padding-block:31px}th,td{padding:8px 6px;font-size:.84rem}}
.rail-controls{display:flex;gap:6px;justify-content:flex-end;margin-top:3px}.rail-controls button{width:42px;height:42px;border:1px solid currentColor;color:inherit;border-radius:50%;background:transparent;font-size:1.18rem}.rail-controls button:hover{background:#78967c38}.rail-controls button:disabled{opacity:.42;cursor:default}
/* Kontakt i tarifa ostaju neposredno uz naslovnu fotografiju. */
@media(min-width:851px){.hero.home{position:relative;min-height:510px;grid-template-columns:43% 57%;isolation:isolate}.hero.home .hero-copy{z-index:1;padding-right:12px}.hero.home .hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#102820 0%,#10282038 18%,transparent 42%);pointer-events:none}.hero.home .image-label{z-index:1}.home+.quick{position:relative;width:min(1100px,calc(100% - 100px));margin-top:-24px;box-shadow:0 10px 32px #10282019;z-index:2}.tile:first-child{background:#e8f1d9}}

#calc .result{align-content:start;align-self:start;gap:12px}#calc .hint{margin-top:12px}.estimate-lines{width:100%;margin:4px 0 0}.estimate-lines div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #ffffff35}.estimate-lines dd{margin:0;font-weight:700;text-align:right}.estimate-note,#breakdown{color:#dceadd;font-size:.88rem}

.city-slider{padding:clamp(18px,4vw,46px);border-radius:24px;color:white;background:radial-gradient(ellipse at 87% 14%,#527b59,transparent 52%),linear-gradient(135deg,#102820,#235247 67%,#354c32)}.city-slider em{color:#c9f47f}.city-slider .section-head{align-items:center}.city-rail{grid-auto-columns:calc((100% - 28px)/3);scrollbar-color:#9ec5a5 transparent}.city-card{min-height:215px;display:flex;flex-direction:column;justify-content:space-between;gap:20px;border:1px solid #ffffff52;border-radius:18px;padding:20px;background:linear-gradient(145deg,#ffffff28,#ffffff0e);backdrop-filter:blur(12px);box-shadow:inset 0 1px #ffffff29}.city-card span,.city-card p:first-child{color:#d8f6b4;font-size:.82rem}.city-card h3{margin:6px 0 9px}.city-card p:last-child{color:#f1f8ef;font-size:.93rem}@media(max-width:850px){.city-rail{grid-auto-columns:63%}}@media(max-width:600px){.city-rail{grid-auto-columns:88%}.city-slider .section-head{align-items:flex-start}}

.quick b [data-cena]{font-size:1.25em;color:var(--ink);font-variant-numeric:tabular-nums}.quick b{overflow-wrap:anywhere}.tile[href$="gradska-voznja/"] .tileicon,.tile[href="#/gradska-voznja"] .tileicon{background:#fff;color:#17392e;border:1px solid #c5d6c5}

.app-install{display:none}
@media(max-width:850px) and (display-mode:browser){
.app-install{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px 12px;margin:20px auto;width:min(92%,34rem);padding:14px;border:1px solid var(--line);border-radius:17px;background:#fff;color:var(--ink)}
.app-install p{font-size:.87rem;margin:2px 0 0}.app-install button,.app-install #install-help{grid-column:1/-1}.app-install button{justify-self:start}
}

.mobile-drawer{box-sizing:border-box;position:fixed;inset:0 0 0 auto;margin:0;width:min(88vw,380px);max-width:none;height:100%;height:100dvh;max-height:none;padding:max(18px,env(safe-area-inset-top)) 18px max(18px,env(safe-area-inset-bottom));border:0;border-radius:22px 0 0 22px;background:linear-gradient(150deg,#193b30,#102820 75%);color:#f6f7f0;box-shadow:-14px 0 48px #10282045;overscroll-behavior:contain}
.mobile-drawer[open]{animation:drawer-in .24s ease-out}
.mobile-drawer::backdrop{background:#08181199;backdrop-filter:blur(5px)}
html:has(.mobile-drawer[open]){overflow:hidden}
.drawer-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff30;padding-bottom:12px;margin-bottom:12px}
.drawer-top strong{font-size:1.25rem}
.drawer-close{min-width:44px;min-height:44px;border:1px solid #ffffff50;border-radius:12px;background:#ffffff13;color:inherit;font-size:1.5rem}
.mobile-drawer .mobile-menu{grid-template-columns:1fr;gap:5px}
.mobile-drawer .mobile-menu a{display:flex;align-items:center;min-height:44px;padding:8px 12px;border:1px solid #ffffff20;border-radius:11px;background:#ffffff0d}
.mobile-drawer .mobile-menu a[aria-current]{background:var(--lime);color:var(--dark);font-weight:750;text-decoration:none}
.mobile-drawer h2{margin:12px 0 3px;color:var(--lime);font-size:.9rem;letter-spacing:0}
@keyframes drawer-in{from{transform:translateX(100%)}to{transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.mobile-drawer[open]{animation:none}}

/* Veličina naslova prati širinu kolone sa tekstom. */
.hero.home .hero-copy{container-type:inline-size}
.hero.home h1{max-width:none;overflow-wrap:normal;font-size:clamp(1.75rem,6vw,4rem);font-size:min(17cqi,5.25rem)}
.hero.home h1 em{white-space:nowrap}

.service-rail{grid-auto-columns:minmax(205px,calc((100% - 42px)/4))}
@media(max-width:600px){.service-rail{grid-auto-columns:72%}}
